PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
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é.
Versions 22 et supérieures
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code navigateur.
Nouveauté 22
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code navigateur.
WEBDEV - Code Navigateur Cette fonction est désormais disponible en code navigateur.
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 (avec guillemets)
Nom du socket à vérifier.
Dans le cas d'une application WINDEV, ce nom a été défini :
Remarques
Composante : wd250com.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