Soyez le premier à donner votre avis sur cette source.
Snippet vu 25 427 fois - Téléchargée 32 fois
Les imports : Imports System.Net.Sockets.Socket La source : Public Class Scanner #Region "Attributs" ' Attributs Private _strHost As String Private _iPort As Integer Private _strProtocol As String Private _blEtat As Boolean #End Region #Region "Propriétés" ' Proptiété de Host, permet de définir ou de lire l'adresse IP du PC à tester Public Property Host() Get Host = _strHost End Get Set(ByVal Value) _strHost = Value End Set End Property ' Propriété de Port, permet de définir ou de lire le port du PC à tester Public Property Port() Get Port = _iPort End Get Set(ByVal Value) _iPort = Value End Set End Property ' Propriété de Protocol, permet de définir ou de lire le protocol du PC à tester Public Property Protocol() Get Port = _strProtocol End Get Set(ByVal Value) _strProtocol = Value End Set End Property ' Propriété Etat, permet de lire l'état de la connection Public ReadOnly Property Etat() Get Etat = _blEtat End Get End Property #End Region #Region "Méthode principal" ' Méthode qui permet de tester si un port est ouvert ou fermé Public Sub TestPort() _blEtat = True ' Instanciation d'une plage d'IP d'une seule valeur Dim PlageIP As System.Net.IPAddress = System.Net.Dns.Resolve(Host).AddressList(0) Dim HostetPort As New System.Net.IPEndPoint(PlageIP, Port) ' Test quel type de port est sélectionné If _strProtocol = "Tcp" Then ' Si c'est Tcp alors on défini un Socket Tcp Dim LeSocket1 As New System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp) Try LeSocket1.Connect(HostetPort) If Not LeSocket1.Connected Then ' Test si le socket est connecté donc si il y a un connection au port ' Si le port est fermé _blEtat = False Return Else ' Si le port est ouvert _blEtat = True Return End If Catch ' Si la connection retourne une erreur. Intérprété comme port fermé ou périphérique injoignable _blEtat = False Return End Try Else 'Sinon on définit un Socket Udp Dim LeSocket2 As New System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Udp) Try LeSocket2.Connect(HostetPort) If Not LeSocket2.Connected Then ' Test si le socket est connecté donc si il y a un connection au port ' Si le port est fermé _blEtat = False Return Else ' Si le port est ouvert _blEtat = True Return End If Catch ' Si la connection retourne une erreur. Intérprété comme port fermé ou périphérique injoignable _blEtat = False Return End Try End If End Sub #End Region End Class
pour l'udp c'est pas un type raw mais un type DGRAM
Dim LeSocket2 As New System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Dgram, System.Net.Sockets.ProtocolType.Udp)
c'est comme ca que je procede en vb6
Dim LeSocket2 As New System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Raw, System.Net.Sockets.ProtocolType.Udp)
Pour le reste je sais pas encore
Car elle me semble excellente mais je ne sais pas comment parametrer.
merci de vos reponses
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.