Hallo Forum,
Ich habe ein Formular in dem mehrere PCs eingetragen sind (Microsoft Acces 2003). Nun bräuchte ich einen Code, der dafür sorgt, dass der in der Maske ausgewählte PC über einen zu drückenden Button angepingt wird und mir das Ergebnis mittels einer Messagebox ausgeworfen wird. Also so, dass entweder die Meldung „Nicht erreichbar“ oder „Erreichbar“ ausgegeben wird. Wichtig ist dabei, dass dies nicht über die IP geschehen sollte, sondern über den Hostnamen.
Ich habe hier schon einen kleinen Ansatz, jedoch ist der fehlerhaft, da mir die Messagebox immer die Meldung „Rechner ist erreichbar“ ausgibt, obwohl einige PCs ausgeschaltet sind und es in der cmd.exe genauso angezeigt wird.
Private Sub Ping1\_Click()
Dim nTime As String
Dim strComputer As String
strComputer = Hostname 'Hostname wird aus einer Tabelle als Variable geholt
'nTime = Ping(strComputer) 'funktioniert so nicht
nTime = Shell("cmd.exe /K ping " & strComputer & " -n 1 -w 10")
If nTime \> 0 Then
MsgBox "Rechner erreichbar: Pingzeit: " & nTime & " ..."
Else
MsgBox "Rechner nicht erreichbar!"
End If
End Sub
Wenn Ihr Lösungs- bzw. Verbesserungsvorschläge habt, nehme ich diese gerne entgegen. (Oder wenn ihr einen ganz anderen Code habt, lasst es mich gerne wissen
Danke schonmal im Vorraus!