[..] Freeze TCP

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Tulifer
Niveau 1
Niveau 1
Messages : 3
Enregistré le : ven. 05 août 2011 15:45
Status : Hors ligne

[..] Freeze TCP

#1

Message par Tulifer »

Bonjour, je suis tout nouveau dans ce forum donc j’espère ne pas m'être trompé dans le forum.

Alors voilà je suis actuellement en train de faire un script pour vérifier les ports qui sont ouvert et lorsque le port est fermé, le programme freeze pour une durée de 20s environ et j'ai ma réponse qui apparait.
L'idée du scan a été trouvé sur ce forum même je me souviens pu du post :? . J'aimerai ne pas avoir ce freeze.
J'ai vu sur le forum qu'une personne avait eu le même problème que moi mais n'a pas eu de solution qui puisse virer ce freeze.
Voici le code.

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Vérification des ports", 500, 440, 192, 124)
$Label1 = GUICtrlCreateLabel("Ip :", 8, 24, 19, 17)
$Input1 = GUICtrlCreateInput("Input1", 32, 24, 105, 21)
$Label2 = GUICtrlCreateLabel("Port :", 160, 24, 29, 17)
$Input2 = GUICtrlCreateInput("Input2", 192, 24, 65, 21)
$Label3 = GUICtrlCreateLabel("Ordinateur IP", 8, 0, 95, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Tester les ports", 272, 24, 105, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

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

;~                 TESTER les ports
                Case $Input1
                Case $Input2
                Case $Button1

                        $ip = GUICtrlRead($Input1)
                        $port = GUICtrlRead($Input2)
                        Opt("TCPTimeout",300)                        

                        TCPStartup()
                          MsgBox(0, "GUI Event", "Scan en cours de l'ip: "&$ip&" du port "&$port& "")
                          $resultat = TCPConnect($ip, $port)
                           If $resultat = -1 Then
                                  MsgBox(1, "Info", "Le port est fermé")
                          ElseIf @error = 1 Then
                                  MsgBox(0,"Adresse ip invalide","L'adresse ip "&$ip&" n'est pas valide merci de mettre une bonne ip ")
              ElseIf @error = 2 Then
                  MsgBox(0,"Port invalide","Le port "&$port)&" n'est pas valide merci de mettre un port entre 0 et 65535")
              Else
                                  MsgBox(0,"Port Ouvert","Le port "&$port&" de l'ip "&$ip&" est ouvert")
              EndIf                        

        EndSwitch
WEnd
Actuellement je doit mettre le port manuellement mais une fois ce problème réglé celui-ci testera tout les ports et me dira lesquels sont ouverts.
Merci de vos réponse et bonne journée :)
Modifié en dernier par Tulifer le dim. 07 août 2011 15:15, modifié 2 fois.
xHTML, CSS, PHP, MySQL, et maintenant AutoIt
Avatar du membre
matwachich
Membre émérite
Membre émérite
Messages : 986
Enregistré le : lun. 19 oct. 2009 04:04
Localisation : Algérie
Status : Hors ligne

Re: [..] Freeze TCP

#2

Message par matwachich »

J'ai entendu quelque part que la fonction TCPConnect est bugé, c'est à dire que le TCPTimeOut ne marche pas dessus, cherche sur le forum anglais, il y a un UDF qui permet de faire TCPConnect avec un timeout correct.
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
Avatar du membre
Tulifer
Niveau 1
Niveau 1
Messages : 3
Enregistré le : ven. 05 août 2011 15:45
Status : Hors ligne

Re: [..] Freeze TCP

#3

Message par Tulifer »

D'accord, bah je vais allez faire un tour merci.
Il y a t-il un autre moyen que d'utiliser TCPconnect ? Est ce que dans les prochaines mise à jour de AutoIt cela sera réglé ?
xHTML, CSS, PHP, MySQL, et maintenant AutoIt
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Freeze TCP

#4

Message par PandiPanda »

vous pouvez toujours passer par un site qui le fait :P

exemple ici;

► Afficher le texte
Vrai si le port est ouvert
faux si il est fermé
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Répondre