DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Sockets
  • Présentation
  • Différentes possibilités
  • Modification du comportement général des sockets
  • Optimisation des trames réseau
  • Optimisation des connexions dans le cas d'une adresse IP
  • Réutilisation d'une adresse déjà utilisée
  • Utilisation des paramètres par défaut
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Gestion des sockets avec WINDEV, WEBDEV et WINDEV Mobile
Présentation
WINDEV, WEBDEV et WINDEV Mobile mettent à votre disposition des fonctions qui permettent de réaliser une gestion avancée des sockets.
Un socket est une ressource de communication utilisée par les applications pour communiquer d'une machine à une autre sans se soucier du type de réseau.
Ce mode de communication peut par exemple être utilisé pour établir une communication entre des postes reliés par Internet.
WINDEV, WEBDEV et WINDEV Mobile permettent de gérer :
  • Les sockets standard.
  • Les sockets UDP.
  • Les sockets par infra-rouge.
  • Les sockets SSL.
Quelques exemples d'utilisation des sockets :
  • gestion d'une messagerie en temps réel.
  • accès à un serveur de news (forum).
Différentes possibilités
Une application WINDEV ou WEBDEV peut gérer les sockets selon différents modes :
Modification du comportement général des sockets

Optimisation des trames réseau

Par défaut, dans Windows, les trames réseau sont optimisées selon l'algorithme Nagle.
Pour communiquer avec un système qui ne supporte pas cette optimisation (certains automates industriels par exemple), il est nécessaire de désactiver cette optimisation.
Pour cela, il suffit de saisir le code suivant :
Socket.Option = SocketNagleOff
WINDEVWEBDEV - Code Serveur

Optimisation des connexions dans le cas d'une adresse IP

Lorsqu'une adresse IP est passée à la fonction SocketConnecte, il est possible d'optimiser la connexion en utilisant le code suivant :
Socket.Option = SocketOptimiseConnexionIP
Cette option n'est pas activée par défaut car la connexion peut échouer dans certaines configurations. Cependant, elle peut être intéressante dans certaines applications où les performances sont critiques.

Réutilisation d'une adresse déjà utilisée

Par défaut, la fonction SocketCrée permet de réutiliser une adresse déjà utilisée (par l'application elle-même ou par une autre application). Pour ne pas autoriser ce fonctionnement, il suffit de saisir le code suivant :
Socket.Option = SocketAdresseUnique
Remarque : Par extension, cette option permet donc de savoir si une adresse ou un port est déjà utilisé. Dans ce cas, la fonction SocketCrée renvoie une erreur.

Utilisation des paramètres par défaut

Pour retrouver le paramétrage par défaut, il suffit de saisir le code suivant :
Socket.Option = SocketOptionDéfaut
Liste des exemples associés :
WD Messagerie Instantanée Exemples complets (WINDEV) : WD Messagerie Instantanée
[ + ] Cet exemple illustre les fonctions "Socket" de WINDEV.
Dans cet exemple, nous abordons deux thèmes principaux :
1/ Comment se connecter à une socket
2/ Comment créer une socket
Résumé de l'exemple livré avec WINDEV :
Cet exemple présente les différentes fonctions de gestion des sockets livrées en standard avec WINDEV. Pour utiliser cet exemple, vous devez entrer dans votre carnet d'adresse une liste de contacts en les identifiant par un nom et l'adresse IP de leur machine. Lors du lancement de l'application, le programme recherche les contacts accessibles (donc qui ont lancé cette application sur leur poste). En double-cliquant sur un contact "connecté" une fenêtre de discussion instantanée s'ouvre et permet de communiquer avec le contact
WD Utilisation des sockets Exemples didactiques (WINDEV) : WD Utilisation des sockets
[ + ] Cet exemple illustre les fonctions "Socket" de WINDEV dans une utilisation de type client/serveur.
Dans cet exemple, nous abordons deux thèmes principaux :
1/ Comment se connecter à une socket
2/ Comment accepter une demande de connexion
3/ Comment écrire ou lire sur une socket
Résumé de l'exemple livré avec WINDEV :
Cet exemple présente les différentes fonctions de gestion des sockets livrées en standard avec WINDEV. Pour utiliser cet exemple, il est nécessaire de lancer une première instance de l'exemple en mode "serveur". Ensuite, en donnant le nom de la machine faisant office de serveur et un pseudonyme, vous pouvez vous connecter à cette application en mode "client". Il est alors possible d'envoyer des messages à tous les utilisateurs connectés. Dans cet exemple, à chaque connexion est associée : un thread et une socket .
WD Sockets Composants (WINDEV) : WD Sockets
[ + ] Cet exemple propose un composant pour faire dialoguer facilement deux applications en utilisant des sockets.
WD Trace Socket Composants (WINDEV) : WD Trace Socket
[ + ] Le principe de cet exemple est de tracer tout ce qui passe sur une communication via socket, sur une adresse donnée, sur un port donné. Cela permet de comprendre ce qu'il se passe dans un dialogue via socket entre deux applications.
Ainsi, dans des applications qui dialoguent via socket, même si les développeurs n'ont pas prévu d'option de trace, il sera possible de voir l'ensemble des échanges effectués sur la socket.
Cet exemple peut également permettre de mieux comprendre le fonctionnement des protocoles réseau basés sur les sockets : POP3, SMTP, FTP, HTTP, etc.
Note pour les utilisateurs avertis en communication réseau :
Cet exemple ne permet de tracer que les communications TCP, mais ne permet pas de tracer les paquets UDP.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 14/06/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale