Utiliser un winsock du côté serveur pour plusieurs clients ?

JPKK Messages postés 2 Date d'inscription vendredi 10 septembre 2004 Statut Membre Dernière intervention 27 octobre 2004 - 27 oct. 2004 à 17:37
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 27 oct. 2004 à 18:47
J'ai creer une application client\serveur avec un seul client et un serveur. J'aimerais avoir plusieurs client connecter à mon serveur. j'ai creer deux contrôles winsock(winsock1 et winsock2) au niveau serveur. winsock1 me permets d'écouter les demandes des clients. winsock2 me permet d'accepter les demandes et de les traiter. j'ai indexer le contrôle winsock2 du serveur. cependant je ne peux plus associer d'évènement à ce contrôle.

Peux-tu me dire le problème et la solution?
ou bien as-tu une autre methode? donnes-moi l'algo et le code si posssible.

1 réponse

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
27 oct. 2004 à 18:47
Salut JPKK
Que veux-tu dire par "je ne peux plus associer d'évènement à ce contrôle" ?
Si tu as indexé WS2, tout est fait (ou presque).
Lors d'une demande de connexion d'un client, il faut que WS1 accepte la connexion sur un nouveau WS2 :
Load WS2(1) ' Créé une copie de WS2(0)
WS2(1).Accept RequestID ' Réoriente la conn sur WS2(1)

Bien sûr, il faudra incrémenter le "1" au fur et à mesure des appels.
Ayant indexé WS2, dans WS2_DataArrival, tu connaitras l'index du client qui envoie les données grace à "Index" qui est fourni avec l'évènement.
Inspire-toi des sources du site, par exemple cette source
Vala
Jack
0
Rejoignez-nous