begin process at 2012 05 30 17:30:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Réseau & Internet

 > 

[Sockets] Problèmes de réceptions/envois


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[Sockets] Problèmes de réceptions/envois

lundi 18 juin 2007 à 17:15:29 | [Sockets] Problèmes de réceptions/envois

gg_the_boss

Salut à tous !

Donc voila j'essaye d'ajouter la gestion des sockets à mon langage de script. J'ai implementé les fonctions mais ca ne marche qu'a moitié.

Le client peut se connecter au serveur, envoyer un message, mais le serveur ne recoit le message qu'une fois que la socket est close du côté du client.

Le code en Syp Script (mon langage de script):


# server

test: !open_port_socket :syp_server_socket 6969

!listen_port_socket :test

!print !read_port_socket :test
!write_port_socket :test "pong"

!close_port_socket :test

!ask



# client

test: !open_port_socket "127.0.0.1" 6969

!write_port_socket :test "ping"
!print !read_port_socket :test

!close_port_socket :test

!ask



L'implémentation des fonctions concernées en C++:

Voir ici: http://pastebin.fr/50


Je suis sur que c'est une erreur toute bête :/


Merci d'avance pour vos réponses


gg_tk

mardi 19 juin 2007 à 14:13:39 | Re : [Sockets] Problèmes de réceptions/envois

katsankat

Membre Club
Réponse acceptée !
C'est le code qui le veut!
A partir du moment où le serveur fait son script "!read_port_socket :test" on arrive ligne 152 le serveur fait un recv et ajoute le buffer temporaire à sypbuffer ligne 155. Puis la boucle infinie continue! Elle ne stoppe que lorsque recv retourne 0, ligne 154, c'est à dire lorsque le client ferme, ce qui exécute le code de close_port_socket ligne 64 si j'ai bien compris. D'ailleurs le WSACleanup(); qui s'y trouve ne drvrait être invoqué qu'à la fermeture de l' appli.

Conseil: le code de read_port_socket (ligne 127) ne devrait QUE faire un recv, rien d'autre. Pour l'instant on est dans une boucle infinie qui fait un recv et attend que recv retourne -1 ou 0 pour continuer. Pas normal.

Sinon c'est super intéressant de développer un langage de script, bonne prog.

I can break the rules too, goodbye.



Cette discussion est classée dans : script, port, test, socket, sockets


Répondre à ce message

Sujets en rapport avec ce message

pb de socket [ par ed53 ] je voudrais que plusieurs applications qui se connecte et garde la connection sur le meme port.faut il que je crée plusieurs sockets et que je les bin [SOCKET]Tjrs le pb de recuperation du buffer recv() [ par enthaz ] Allez J me lance : ca fait des heures et des heures ke le newb ke je suischerche la solution :D un coté j ai un logiciel client ki envoie "coucou" sur Socket, quand tu nous tiens ... [ par enthaz ] Allez J me lance : ca fait des heures et des heures ke le newb ke je suischerche la solution :D un coté j ai un logiciel client ki envoie "coucou" sur utilisation de socket [ par Sade ] lors de la création du projet, je n'ai pas coché la case "Windows Sockets", car mon projet ne nécéssité pas l'utilisation des sockets, mais voici que sockets: méthode accept() [ par julien20vt ] Voila,je viens de coder le serveur de ma socket et ce qui me parait etrange c'est que la méthode accept() n'est pas bloquante, je pensais que le serve Probleme de sockets [ par MaDC ] J'ai fait ça, mais la reception ferme mon appli mfc sans raison... biens ur on ne reçoit rien... si qq1 pouvait m'éclairer se serait sympa de sa part Création d'une socket .. [ par bubbless ] Bonjour !à l'aide !! J'ai programmé tout un systèle réseau / client, que j'ai enfin pu tester grâce à l'aide d'une âme charitable sur ce forum, et je sockets : port local [ par Helkanen ] salut !j'aimerais savoir comment avec une socket toute bête on peut récupérer le port local ouvert, si cela est possible...de même que l'ip locale qui gestion de socket [ par kev03 ] bonjour,je travaille sur un logiciel de messagerie et j'aurais quelques petites questions a propos des sockets:peut-on laisser un grand nombre de port raw sockets sous windows [ par cosmobob ] voila en creant un raw socket j'arrive facilement à intercepter les donnees qui arrivent vers mon pc. Comment faire pour intercepter les packets qui s


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales