DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Sockets
  • 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
Teste l'existence d'un socket.
Remarques :
  • Pour tester la validité de la connexion, il faut utiliser la fonction SocketClientInfo pour vérifier l'adresse IP du socket client et le numéro de port.
  • Tant que le socket créé n'a pas été fermé par la fonction SocketFerme, le socket existe.
  • En cas d'interruption de la communication, la fonction SocketExiste peut retourner un résultat positif alors que le dialogue est arrêté.
Exemple
// Vérification de l'existence avant la création
SI SocketExiste("MaSocket") = Faux ALORS
SI SocketCrée("MaSocket", 8000) = Faux ALORS
 Erreur("Erreur création " + ErreurInfo(errMessage))
 FIN
SINON
 SocketLit("MaSocket", Faux)
FIN
Syntaxe
<Résultat> = SocketExiste(<Nom du socket>)
<Résultat> : Booléen
  • Vrai si le socket existe,
  • Faux dans le cas contraire.
<Nom du socket> : Chaîne de caractères
Nom du socket à vérifier.
Dans le cas d'une application WINDEV, ce nom a été défini :
WINDEV Attention : le nom du socket est "case-sensitive".
Remarques
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
Client toujours connecté ?
Il n'existe pas de véritable moyen pour s'assurer que le client est toujours prêt à écouter les messages du serveur.

Si l'application client est brutalement fermée, du côté du serveur :
- la fonction SocketExiste(sCanalClient) renvoie vrai
- la fonction SocketClientInfo(sCanalClient,SocketAdresse) renvoie l'ip du client.

Pour savoir si le client n'est plus prêt à écouter les messages du serveur, il faut utiliser une technique de time out. Par exemple, si le client n'a pas répondu depuis 15 minutes, on suppose qu'il n'est plus connecté.

Exemple :
Côté serveur :
// Ecoute des messages clients attente maximale 15 minutes.
sMessage = SocketLit(sCanalClient,Faux,1000*60*15)
SI sMessage = "" ALORS
// le client est déconnecté
SocketFerme(sCanalClient)
SINON
// le client est encore là, on traite le message.
FIN
Arnaud
11 oct. 2012

Dernière modification : 21/06/2023

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