cs_linux21
Messages postés24Date d'inscriptionmercredi 17 janvier 2007StatutMembreDernière intervention19 juin 2007
-
15 juin 2007 à 09:11
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024
-
15 juin 2007 à 10:29
Bonjour à tous,
voilà je dois finir une application pour ma présentation à l'oral dans 3 jours. Elle est presque finie mais un gros problème est toujours présent, m'empechant de le présenter sans me faire assassiner ^^. Je vais tenter de vous expliquer ça du mieux possible.
Mon programme est en deux partis: client & serveur.
Mon serveur se connecte, ainsi qu'un premier client. Tout se passe bien, ils peuvent discuter, une liste d'utilisateurs les informent de leur connexion.
Le problème survient quand plusieurs clients se connectent au serveur. Que je connecte 3 ou 18 clients, le problème est le suivant:
Le serveur ainsi que le dernier client connecté peuvent discuter sans soucis. Tout les autres clients peuvent envoyer des messages, mais rien ne s'écrit sur leur écran de chat.
Je ne vois pas trop comment vous expliquer ça, s'il vout faut des bouts de codes ou que je vous envoie la source par mail, faites-le moi savoir. J'ai vraiment besoin d'une aide serieuse et rapide (j'en demande beaucoup n'est-ce pas ^^).
cs_linux21
Messages postés24Date d'inscriptionmercredi 17 janvier 2007StatutMembreDernière intervention19 juin 2007 15 juin 2007 à 09:17
Mon serveur possède deux winsock, un en écoute, et un pour les envois et réceptions de données. Les sources dispos ne correspondent pas à mon problème.
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 15 juin 2007 à 09:34
Bonjour
Ayant aidé Linux21 pour son programme, j'expose un peu la situation :
Le serveur écoute sur le port TCP 1001.
Chaque client créé un nouveau composant Winsock sur le serveur et est enregistré.
Le problème (que j'ai constaté sur une machine et pas sur une autre), le dernier client reçoit les informations du serveur immédiatement alors que les autres ne reçoivent les données (sans troncature) que lors de la connexion ou la déconnexion d'un client.
Je pense qu'il y a un buffer quelque part qui refuse de se vider, mais où et pourquoi ?
Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Mon site
Vous n’avez pas trouvé la réponse que vous recherchez ?