Page 1 sur 1

[..] Problème Protocole IRC avec autoIT

Posté : sam. 12 mars 2011 18:35
par Fish
Salut tout le monde!

Alors j'ai besoin d'aide car j'ai fait avec un ami un programme pour parler (chater) avec IRC. Le problème c'est que la liste des membres et la possibilité de voir les messages des autres est assez anarchique. On voit les autres membres déjà connectés quand le programme le décide!
Merci de m'aider. :(

Voici le code :
► Afficher le texte

Re: [..] Problème Protocole IRC avec autoIT

Posté : dim. 13 mars 2011 11:30
par Fish
Désolé si je double-post mais c'est pour up le sujet. :roll:
Personne n'aurait d'idées?

Re: [..] Problème Protocole IRC avec autoIT

Posté : dim. 13 mars 2011 22:07
par Tlem
J'ai survolé votre code. La partie qui me choque le plus ce trouve entre les lignes 94 et 144. Ce code ne devrait pas ce trouver ici.

Il ne faut jamais (sauf si vous savez ce que vous faites) mettre un code qui prend beaucoup de temps machine en dehors des cas de la boucle principale.

Pour simplifier, votre code ressemble à ceci :

Code : Tout sélectionner

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

        Case $Button1
            MsgBox(0, "", "Bouton 1")

        Case $Button2
            MsgBox(0, "", "Bouton 2")
    
    EndSwitch
Sleep(2000)
WEnd
Vous comprendrez bien que le Sleep(2000) va très fortement perturber le comportement de votre boucle, car si vous cliquez sur le bouton 1 alors que vous êtes dans la pause, hé bien la commande GUIGetMsg() n'a pas le temps d’être exécutée et donc votre clic ne sera pas interprété. 8)

Re: [..] Problème Protocole IRC avec autoIT

Posté : lun. 14 mars 2011 17:14
par Fish
Ok merci, donc celons vous c'est la partie réception des donnés qui est à revoir?
Il faudrait se débrouiller comment pour pallier à ce problème?

Bonne journée.

Re: [..] Problème Protocole IRC avec autoIT

Posté : lun. 14 mars 2011 20:28
par Tlem
Difficile à dire comme ca. Il faudrait prendre pas mal de temps pour comprendre votre code et essayer de l'améliorer.

Je vous ai donné les grandes lignes. Si vous effectuez une action longue dans votre boucle While, alors l'exécution de la commande GUIGetMsg() sera fortement perturbée.
A vous de voir à optimiser le code afin de bloquer au minimum cette boucle.

Re: [..] Problème Protocole IRC avec autoIT

Posté : mer. 16 mars 2011 12:37
par Fish
Hum j'ai peux être une idée, si l'on faisait deux programmes, un pour la GUI et l'autre qui s'occupe de l'envoi et de la réception des données? Ainsi l'un ne ralenti pas l'autre. Qu'en pensez vous?

Re: [..] Problème Protocole IRC avec autoIT

Posté : mer. 16 mars 2011 23:47
par Tlem
Regardez cette réponse sur un sujet similaire au votre : http://www.autoitscript.fr/forum/viewto ... 868#p45868

Re: [..] Problème Protocole IRC avec autoIT

Posté : dim. 20 mars 2011 13:15
par Fish
Heu en faite c'est pas du tout similaire à notre projet...

Re: [..] Problème Protocole IRC avec autoIT

Posté : mar. 22 mars 2011 16:58
par Tlem
Ha ! Par ce que l'IRC ne fonctionne pas avec des clients et un serveur ... :lol:

De toute façon, je parlais du principe du code, pas de la fonctionnalité. :P

Re: [..] Problème Protocole IRC avec autoIT

Posté : mar. 22 mars 2011 17:03
par Fish
Je voulais pas dire ça mais en faite je comprend pas en quoi ça nous aide. J'aurais plutôt du dire comme ça. :roll:

Re: [..] Problème Protocole IRC avec autoIT

Posté : mar. 22 mars 2011 17:23
par Tlem
Tout simplement, j'ai dit : http://www.autoitscript.fr/forum/viewto ... 770#p45770

Et sur cette réponse : http://www.autoitscript.fr/forum/viewto ... 868#p45868
Je donne un exemple de boucle 'mieux pensée'. :mrgreen: