Utiliser un winsock du côté serveur pour plusieurs clients ?
JPKK
Messages postés2Date d'inscriptionvendredi 10 septembre 2004StatutMembreDernière intervention27 octobre 2004
-
27 oct. 2004 à 17:37
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 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.
A voir également:
Utiliser un winsock du côté serveur pour plusieurs clients ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 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