cs_leka
Messages postés19Date d'inscriptionjeudi 27 mars 2003StatutMembreDernière intervention17 juin 2004
-
23 déc. 2003 à 11:55
gallyhc
Messages postés386Date d'inscriptionsamedi 4 octobre 2008StatutMembreDernière intervention19 février 2018
-
23 déc. 2003 à 20:25
Bon, j'ai un probleme, je bosse sur un bot IRC en ce moment, c'est du VB.net. Je m'explque, la fonction MassOp est uen fonction qui permet de mettre Op tous les utilisateurs du channel d'irc. Pour cela, j'envoie une requete au server pour qu'il me donne le nick de chacun des utilisateurs, mais le probleme, c'est que pour que sa marche il faut attendre que le server reponde, du coup, j'ai eu une idée, faire une boucle, qui attende qu'un des mots que le serveur renvoit a chaque (le mot "names").
Mais voila mon probleme, traduit en langue normale, ma boucle donnerait :
"Ne fais rien tant que la position du mot "NAMES" vaut zero dans ce que tu reçois"
Mais sa marche pas, le programme se fout en boucle, et n'en sort pas meme si ma condition est vraie.
Par contre, si a la place de "'On fait rien" je met, une MsgBox, la, le programme sort de ma boucle et il n'y aucun probleme.
En gros mon probleme, c'est comment faire pour que ma boucle marche, sans avoir a mettre de MsgBox.
Public Sub MassOp()
Dim monTabAMassOP() As String
Dim ListeNickChan
IRCSock.SendData("NAMES " & ChannelName & Chr(10))
Do Until InStr(Receive, "NAMES") <> 0
'On fait rien
Loop
ListeNickChan = Replace(Receive, "@", "") 'On enleve les @ et + de la liste des nicks de façon a ce que sa soit propre,
ListeNickChan = Replace(Receive, "+", "") ' et qu'il n'y ai pas d'erreur sur les nicks
MsgBox(ListeNickChan)
monTabAMassOP = Split(Receive, " ")
End Sub