SCANNEUR DE PORTS TRES RAPIDE (10 000 PORTS EN MOINS DE 13 SEC )

kllmm Messages postés 35 Date d'inscription jeudi 7 février 2002 Statut Membre Dernière intervention 5 octobre 2003 - 28 juin 2003 à 19:00
cs_pdl Messages postés 134 Date d'inscription mardi 20 novembre 2001 Statut Membre Dernière intervention 16 juin 2008 - 1 juil. 2003 à 08:55
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7697-scanneur-de-ports-tres-rapide-10-000-ports-en-moins-de-13-sec

cs_pdl Messages postés 134 Date d'inscription mardi 20 novembre 2001 Statut Membre Dernière intervention 16 juin 2008
1 juil. 2003 à 08:55
La fonction scann1 de légion91 est presque correcte. Voici les modifs que j'ai fait pour que l'arrêt du scan fonctionne !

Private Function scann1()
Dim a, b, c

w.Close
w.RemoteHost = Text3.Text
a = GetTickCount

i = 0
While (i <Val(Text2.Text) And scan "oui")
'For i = Text1 To Text2
' If scan = "non" Then
' Exit Function
' End If
w.Close
w.RemotePort = i
w.Connect
Label1 = i & " / " & Text2.Text
DoEvents
p.Value = i / Text2.Text * 10000
i = i + 1
'Next i
Wend
b = GetTickCount

Label5.Caption = "Temps écoulé : " & (b - a) / 1000 ' & " Secondes "
Label6.Caption = "Nombre de ports ouverts : " & List1.ListCount
Command1.Caption = "Scanner"
End Function
SatanCorporation Messages postés 123 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 13 septembre 2003
30 juin 2003 à 10:20
Ok je suis désoler d'avoir fais tant d'erreur et je vous prie de pas TROP m'en vouloir
Sur ce Bonne Prog a tous
@+
SatanCorporation Messages postés 123 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 13 septembre 2003
30 juin 2003 à 10:20
Ok je suis désoler d'avoir fais tant d'erreur et je vous prie de pas TROP m'en vouloir
Sur ce Bonne Prog a tous
@+
SatanCorporation Messages postés 123 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 13 septembre 2003
30 juin 2003 à 10:20
Ok je suis désoler d'avoir fais tans d'erreur et je vous prie de pas TROP m'en vouloir
Sur ce Bonne Prog a tous
@+
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
30 juin 2003 à 09:47
C'est carrement n'importe quoi !

Tu n'attend meme pas que la connexion soit etabli donc tu trouvera pas grand chose sur une machine distante et je doute meme que tu trouve qlq chose sur ta machine !

en plus comme le dit si bien shivan on peut changer les textbox en cour d'utilisation, tu prend un mauvais interval dans ta routine de sauvegarde :
For i = 1 To List1.ListCount
au lieu de :
For i = 0 To (List1.ListCount-1)

avec ta methode on peu meme generer une erreur de division par zero : p.Value i / Text2.Text * 10000 si text2 0 !!

s'il on met l'appli directement a la racine C: l'enregistreùent du log plante : App.Path & "Log des ports ouverts" (C:\Log...)

et tu devrais Fermer le socket une fois la connexion etabli et pas avant sinons tu n'aura pas de timeout donc forcement tu trouve ça rapide !

Private Sub w_Connect()
List1.AddItem i
w.close
End Sub

bref fait un petit effort stp, tu sait qu'il existe deja bcp de source comme celci et la tu nous pond un truc vite fait mal fait ....

B@nne prog
cs_shivan Messages postés 363 Date d'inscription jeudi 20 décembre 2001 Statut Membre Dernière intervention 25 août 2003
29 juin 2003 à 19:26
enleve la possibilité d'editer les textes pendant le scann... tu fé un scann a 10000, et pendant le scan tu met une valeur plus petite que celle ou il en est... ca va planter
cs_legion91 Messages postés 216 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 15 décembre 2010
28 juin 2003 à 19:27
a aussi For i = 0 parck sinon tu sauvegarde pas le 1er port ouvert dans le txt ;-)
cs_legion91 Messages postés 216 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 15 décembre 2010
28 juin 2003 à 19:20
petit truc pour stopper le scan en cours

Dim scan As String

Private Sub Command1_Click()
Select Case Command1.Caption
Case "Scanner"
scan = "oui"
Command1.Caption = "Stop"
List1.Clear
scann1
Case "Stop"
scan = "non"
Command1.Caption = "Scanner"
End Select
End Sub

Private Function scann1()
Dim a, b, c

w.Close
w.RemoteHost = Text3.Text
a = GetTickCount

For i = Text1 To Text2
If scan = "non" Then Exit Function
w.Close
w.RemotePort = i
w.Connect
Label1 = i & " / " & Text2.Text





DoEvents

p.Value = i / Text2.Text * 10000
Next i
b = GetTickCount

Label5.Caption = "Temps écoulé : " & (b - a) / 1000 ' & " Secondes "
Label6.Caption = "Nombre de ports ouverts : " & List1.ListCount
Command1.Caption = "Scanner"
End Function

voilou
kllmm Messages postés 35 Date d'inscription jeudi 7 février 2002 Statut Membre Dernière intervention 5 octobre 2003
28 juin 2003 à 19:00
heu j'ai bien voulu le tester sur qq (sur mon pc y n'y a aucuns ports d'ouverts)
alors avec le tien , je n'ai decouvert aucuns port open sur qq (pas meme le 139) .........
par acquis de conscience, ai essayé avec un autre scan , plus lent certe mais qui a lui.... trouvé des ports ouverts
oki le tient est plus rapide , ca oui, mais le resultat n'est pas pareil
...........
qui va lentement va surement :-)
desolé de mon mon cynisme

et puis les Scans TCP/IP et Windows ne vs pas bien ensemble,
trop lents .. pas meme le NMAP wind arrive a la hauteur de la version Linux
Rejoignez-nous