WINDEV 2025 : Les concepts

Partie 6 : Communication 179 Gestion des sockets WINDEV met à 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 dialoguer 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. Différentes possibilités Une application WINDEV peut gérer les sockets selon différents modes : • ApplicationWINDEV Cliente  : l’application se connecte à un serveur quelconque et échange des données via un socket. • ApplicationWINDEV "Serveur simplifié"  : l’application WINDEV est un serveur, échangeant des informations via un socket avec un seul poste client. • ApplicationWINDEV "Serveur standard"  : l’application WINDEV est un serveur, échangeant des informations par sockets avec plusieurs postes clients quelconques. Principe d’une application cliente Une application cliente d’un serveur de sockets se connecte à un serveur quelconque pour échan- ger des informations par l’intermédiaire d’un socket. Exemple : Une applicationWINDEV cliente peut se connecter à un serveur de news standard sur Internet . Etape 1 : Connexion au serveur Pour se connecter à un socket du serveur, utilisez la fonction SocketConnecte . Cette fonction per- met d’effectuer une demande de connexion au serveur. Le socket est identifié par son port et par son adresse. Etape 2 : Échange de données Lorsque deux postes ont connecté leur socket, un flux de communication s’établit entre ces deux postes. Il est alors possible pour ces deux postes de lire et d’écrire des chaînes de caractères sur le socket. Pour lire et écrire sur le socket du poste serveur, l’application cliente WINDEV doit utiliser les fonc- tions SocketLit et SocketEcrit . Etape 3 : Fin de la communication Pour terminer la communication, il suffit de fermer le socket depuis le poste client avec la fonction SocketFerme .

RkJQdWJsaXNoZXIy NDQ0OA==