Winsock pour chat (multiconnection)

Signaler
Messages postés
107
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
12 novembre 2006
-
Messages postés
107
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
12 novembre 2006
-
bonsoir tous le monde.
j'ai commence a faire un chat avec une solution donne dans vos source c'est a dire avec un winsock indexe du cote server cela est fais.
du cote server j'ai mi une liste box pour voir les pseudo client.
mon probleme est que quand je connecte le 1er client pas de probleme j'ai bien son pseudo dans la list je peux tchater et tout..mais des que je met le 2eme client les choses se compliquent (lol) j'ai son nom qui apparais autant de fois qu'il y a d'utilisateur connectés
et le 1er client ne recois rien de la part du server.seulement le dernier a avoir ete connecter qui recois tous en double,en triple .....

donc moi je pense que le probleme viendrais au niveau du changement d'index du winsock
pourtant j'ai bien fais une boucle.

voila ma source : (cote serveur)
pas d'inkietude pour la gestion des message ce sont des essais.

i = le nombre de connecté - le serveur

Private Sub winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim Data As String
Winsock1(i).GetData Data 'recupere des donnees du port decoute'
For Z = 0 To i
Winsock1(i).SendData Data 'envois message au client
DoEvents
Next Z
commandes = Left(Data, 7)
If Len(Data) > 7 Then
Data = Right(Data, Len(Data) - 7)
End If
If commandes = "׃PSDƒ×" Then
List1.AddItem "PSEUDO : " & Data
End If
If commandes = "׃MSGƒ×" Then
List1.AddItem "MSG : " & Data
End If
Data = ""
End Sub

Merci de bien vouloir m'aider a resoudre ce probleme.bonne continuation a vous tous.

1 réponse

Messages postés
107
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
12 novembre 2006

Bonjour tout le monde.

benh j'ai une super bonne nouvelle j'ai trouvé mon erreur.
erreur vraiment bête (lol).
tout mon code est bon sauf une lettre et oui l'erreur etait bien au niveau de l'index au lieu de mettre le:
Winsock1(i).SendData Data 'envois message au client
il faut mettre :
Winsock1(Z).SendData Data 'envois message au client

Z = variable boucle incremente

et la ca fonctionne bien tout le monde recois c'est parfais.
je vous souhaite donc bonne continuation a tous et bonne prog.