[VB.NET] récupérer les données d'un thread...

Fermé
liegeus Messages postés 113 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 24 octobre 2012 - 2 mars 2005 à 16:03
Obeet Messages postés 1766 Date d'inscription mercredi 13 octobre 2004 Statut Modérateur Dernière intervention 17 novembre 2010 - 3 mars 2005 à 19:29
Bonjour,
Je suis en train de programmer un chat en VB.bet, j'ai un problème, dans mon client, j'ai un thread de lancé pour écouter ce qu'envoie le serveur, les données que ce thread reçoit, il les place dans une variable char "donnees lues" il faudrai que ke récupère ces données pour les afficher dans un richTextBox mais impossible... quelqu'un a-t-il la solution ?

merci

3 réponses

Obeet Messages postés 1766 Date d'inscription mercredi 13 octobre 2004 Statut Modérateur Dernière intervention 17 novembre 2010 30
2 mars 2005 à 21:46
Salut,
Sers toi de ton contrôle et de sa fonction invoke...
elle est là pour ça...
0
liegeus Messages postés 113 Date d'inscription mardi 29 avril 2003 Statut Membre Dernière intervention 24 octobre 2012 12
3 mars 2005 à 18:57
oulà là j'y pige pas grand chose à ce invoke,
alors j'ai créer un variable recup (as string) je fais (dans mon thread ??) recup.invoke() et là j'ai 2 arguements à passer à mon invoke ?? lesquels ??
j'suis allé voir sur le net mais j'ai rien trouvé de compréhensible...

voici le code du thread si ça peut aider :

Sub GoRecoiMessage()
Try

stream.Read(data, 0, data.Length)
donnee_lu = System.Text.Encoding.ASCII.GetString(data, 0, data.Length)
stream.Read(data2, 0, data2.Length)

recup.invoke(donnee_lu, recup)

Catch

MsgBox("serveur déconnecté")

End Try

End Sub
0
Obeet Messages postés 1766 Date d'inscription mercredi 13 octobre 2004 Statut Modérateur Dernière intervention 17 novembre 2010 30
3 mars 2005 à 19:29
8-)
Bizzare ton truc,
Je connais pas du tout VB.Net mais je bosse sur C# donc en gros ce que je fais:

Dans le main thread, je déclare un nouveau thread et je le lance, je lui passe en paramètre un control (bouton, form, peut importe) au moment de l'initialisation. Ensuite dans la classe de mon worker thread, je fait:
control.invoke(nomdundelegateque je defini, args qui est une suite d'arguments)

0