Hallo zusammen,
ich möchte per VB6.0 überprüfen ob ein Rechner im Netzwerk erreichbar ist oder nicht. Über MS-DOS gibt es ja die Möglichkeit den Befehl ping abzusetzen. Kann man diese Rückmeldung abfragen oder gibt es unter VB6.0 eine andere Möglichkeit dies zu lösen?
Vielen Dank für die Mühe im voraus.
Gruß
André
Überprüfung ob Rechner erreichbar ist oder nicht
Hallo André!
' Benötigte API-Deklaration
Private Declare Function IsDestinationReachable Lib \_
"Sensapi.dll" Alias "IsDestinationReachableA" \_
(ByVal lpszDestination As String, \_
lpQOCInfo As QOCINFO) As Long
Private Type QOCINFO
dwSize As Long
dwFlags As Long
dwInSpeed As Long
dwOutSpeed As Long
End Type
Die Funktion Ping gibt im Erfolgsfall den Wert True, andernfalls False zurück.
Public Function Ping(ByVal IP As String) As Boolean
Dim QuestStruct As QOCINFO
Dim lReturn As Long
' Größe der Struktur
QuestStruct.dwSize = Len(QuestStruct)
' Prüfen, ob Ziel erreichbar
lReturn = IsDestinationReachable(IP, QuestStruct)
' Antwort auswerten
If lReturn = 1 Then
' Antwort bekommen
Ping = True
Else
' keine Antwort
Ping = False
End If
End Function
„Gestohlen“ von http://www.vbarchiv.net/archiv/tipp_458.html
Gruß
Gollum
Hallo Gollum,
danke für die schnelle Antwort. Leider funktioniert das bei mir (Windows NT) nicht.
Gruß
André
„Gestohlen“ von http://www.vbarchiv.net/archiv/tipp_458.html
Gruß
Gollum
komisch
Hallo André!
Ich habe es soeben ausprobiert, unter Win2k funkt es problemlos. Laut Artikel müßte es unter NT auch funktionieren. Wenn Du eine präzisere Beschreibung des Fehlers lieferst, kann ich Dir wahrscheinlich helfen.
Gollum
Hallo Gollum,
bei mir ist das Problem das die Function Ping immer true zurückgibt auch wenn der Rechner im MS-DOS-Fenster mit Ping nicht erreichbar ist.
Gruß
André
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]