DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Sockets
  • Communication avec des automates ou des applications non WINDEV
  • Transmission entre deux postes utilisant des formats de chaînes de caractères différents (UNICODE et ANSI)
  • Permissions requises
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
Ecrit un message destiné à un autre socket. Cette fonction peut être utilisée sur un poste client ou un poste serveur.
Rappel : 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.
Exemple
SI SocketEcrit("Serveur", "hello world") = Vrai ALORS
Message("message envoyé")
FIN
WINDEVEtats et RequêtesUniversal Windows 10 AppJavaCode Utilisateur (MCU)
SI SocketEcrit("Serveur", "hello world", "www.info.fr", 2005) = Vrai ALORS
Message("Message envoyé")
FIN
Syntaxe

Écrire dans un socket Masquer les détails

<Résultat> = SocketEcrit(<Nom du socket> , <Message>)
<Résultat> : Booléen
  • Vrai si la fonction a réussi,
  • Faux dans le cas contraire. En cas d'erreur, il est possible de connaître le détail de l'erreur grâce à la fonction ErreurInfo.
<Nom du socket> : Chaîne de caractères
Nom du socket qui a reçu le message.
Dans une application WINDEV, ce nom a été défini sur le serveur :
Dans une application WINDEV, sur le client, ce nom a été défini par la fonction SocketConnecte, SocketConnecteSSL ou SocketConnecteInfraRouge.
WINDEV Attention le nom du socket est "case-sensitive".
<Message> : Chaîne de caractères ou buffer
Message à transmettre. Le format du message peut être défini avec la fonction SocketChangeModeTransmission.
WINDEVWEBDEV - Code ServeurEtats et RequêtesUniversal Windows 10 AppJavaCode Utilisateur (MCU)

Écrire dans un socket UDP Masquer les détails

<Résultat> = SocketEcrit(<Nom du socket> , <Message> , <Adresse de destination> , <Numéro de port>)
<Résultat> : Booléen
  • Vrai si la fonction a réussi,
  • Faux dans le cas contraire. En cas d'erreur, il est possible de connaître le détail de l'erreur grâce à la fonction ErreurInfo.
<Nom du socket> : Chaîne de caractères
Nom du socket qui a reçu le message. Ce nom a été défini par la fonction SocketCréeUDP.
<Message> : Chaîne de caractères
Message à transmettre. Le format du message peut être défini avec la fonction SocketChangeModeTransmission.
<Adresse de destination> : Chaîne de caractères
Adresse du poste destination. Cette adresse peut être donnée sous la forme :
  • adresse IP au format XXX.XXX.XXX.XXX ( par exemple 125.5.110.100).
  • URL contenant le nom du serveur (par exemple www.pcsoft.fr). Cette syntaxe est conseillée.
  • adresse IP obtenue par la fonction NetAdresseIP.
Socket UDP : Le protocole UDP est un protocole "non connecté". Il est nécessaire de préciser la destination pour chaque envoi. Cette adresse peut être un masque de sous-réseau ce qui permet de diffuser le message sur tous les postes connectés avec ce masque de sous-réseau.
<Numéro de port> : Entier
Numéro de port du socket destination.
Si vous utilisez un socket associé à un protocole prédéfini, utilisez le numéro de port associé au protocole.
Si ce paramètre n'est pas spécifié, le numéro pris en compte correspond au dernier numéro de port destination utilisé pour l'écriture pour ce socket.
Remarques

Communication avec des automates ou des applications non WINDEV

Pour simplifier les échanges des données par socket, un mode de transmission est initialisé par défaut.
Dans le cas d'une communication avec un module externe (application non WINDEV, automate, ...), ce mode de transmission peut empêcher le bon fonctionnement des communications.
La fonction SocketChangeModeTransmission permet de changer ce mode de transmission : la constante SocketSansMarqueurFin permet de ne pas modifier les trames lues et écrites.

Transmission entre deux postes utilisant des formats de chaînes de caractères différents (UNICODE et ANSI)

Lors de la transmission de messages entre deux postes utilisant un format de chaînes de caractères différent (par exemple Windows (ANSI) et Windows Mobile (UNICODE)), certaines conversions peuvent être nécessaires. Ces conversions peuvent être effectuées grâce aux fonctions AnsiVersUnicode et UnicodeVersAnsi.
AndroidWidget Android

Permissions requises

L'utilisation de cette fonction entraîne la modification des permissions requises par l'application.
Permission requise : INTERNET
Cette permission autorise l'application à ouvrir des sockets réseau.
Composante : wd290com.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 21/06/2023

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