⇨ MENU ⇨ BIBLIOTHEQUE ⇨ socklib.bbc
FN_writelinesocket()
⇨ MENU ⇨ BIBLIOTHEQUE ⇨ socklib.bbc
FN_writelinesocket()
DESCRIPTION.
La fonction FN_writelinesocket() envoie une chaine de caractères.
SYNTAXE.
ketat = FN_writelinesocket( socket , chaine )
REMARQUES.
socket doit être l'identifiant de la variable ayant reçue la valeur retournée par la fonction :
- FN_tcplisten(), si l'envoi est fait depuis un client vers le serveur :
- FN_check_connection(), si l'envoi est fait depuis un serveur vers le client qui l'a sollicité.
chaine doit être une chaine de caractères quelconque mais valide.
La fonction FN_writelinesocket() écrira aussi un retour chariot (code ASCII 13) et d'un saut de ligne (code ASCII 10), c'est donc chaine + CHR$( 13 ) + CHR$( 10 ) qui sera envoyé sur socket. Il faut en tenir compte, lors de l'analyse de la chaine recues.
Si la transmission a été correctement effectuée, la fonction FN_writelinesocket() va retournée une valeur 0. Toute autre valeur indique qu'un problème est survenu.
Voir la fonction FN_writesocket() qui envoie une suite d'octets débutant à une certaine adresse mémoire.
Voir la fonction FN_readlinesocket() pour réception directement une chaine de caractères.
Rappel : la procédure PROC_initsockets() doit être appelée avant toute autre utilisation d'une procédure ou fonction du module socklib.bbc. et la procédure PROC_exitsockets devra être appelée dès que toutes les opérations de communication seront terminées, et avant de terminer et de fermer l'application.
La fonction FN_writelinesocket() est importée depuis le module socklib.bbc.
EXEMPLE.
REM --- Module de la bibliothèque BBC BASIC ---
INSTALL @lib$ + "socklib.bbc"
REM --- INITIALISATION GENERALE ---
ON CLOSE PROC_Fermeture
DIM ADR_Debut 1024 : REM --- reserve 1024 octets en memoire et indique l'adresse du premier octet dans ADR_Bebut
REM --- Initialisation de socklib ---
PROC_initsockets
REM --- Creation du serveur ---
kserveur = FN_tcplisten( "" , "1234" )
REM --- Mise en attende d'une sollicitation du client ---
PRINT "Serveur en attente sur le port 1234..."
REPEAT
kclient = FN_check_connection( kserveur )
UNTIL kclient <> 0
REM --- Envoi d'une chaine de caracteres ---
kmessage = "Client connecté avec l'identifiant " + STR$( kclient )
PRINT kmessage
ketat = FN_writelinesocket( kclient , kmessage )
IF ketat = 0 THEN PRINT "Envoi realisé." ELSE PRINT "Erreur durant l'envoi."
REM --- Fermeture du canal de communication (socket) ---
PRINT "Client déconnecte."
PROC_closesocket( kclient )
REM --- Fermeture du reseau ---
PRINT "Reseau ferme."
PROC_Fermeture
END
REM --- Gestion de la fermeture du programme ---
DEF PROC_Fermeture
PROC_exitsockets
QUIT
ENDPROC
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
avec un exemple de résolution à télécharger pour vous inspirer.