Überprüfen, ob PC an ist.
-
Hallo,
ich muss für ein programm wissen, wie ich checken kann Ob eine IP im netztwerk erreichbar ist (um zu wissen ob der rechner an ist).
Es gibt ja die cmd-funktion ping, aber in c++ bringt die einem ja nicht so wirklich was.
-
Nimm die Indy Client Komponente "ICMP" ,
Bsp :IdIcmpClient1->Host = 192.168.0.24;
IdIcmpClient1->Port = 25;
IdIcmpClient1->Ping();Diese Komponente hat eine Eigenschaft "OnReply" , diese Eigenschaft wird ausgelöst sobald eine Antwort eintrifft.
Hoffe ich konnte helfen

Gin0 CaZin0
-
und was hat das damm noch mit WinAPI zu tun?
ich denke es wird eine lösung über winapi gesucht, oder nicht?MfG
_ich_
-
IcmpSendEcho(2)
-
nein muss keine lösung über winAPI sein (immer wenn ich was poste wird in winapi verschoben^^).
Danke für die antworten! werds ausprobieren
-
Kann mir jemand ein Beispiel für IcmpSendEcho(2) geben?
Mir fehlt die icmpapi.h. Wie ich das verstehe muss man die
wohl irgendwie selbst mit LoadLibrary laden aus der entsprechenden dll?Ich googel mir schon den Wolf, kann aber nicht verwertbares finden.
Die MSDN ist für mein Laienverständnis an diesem Punkt nicht
ergiebig genug.
-
http://www.codeproject.com/library/wfc/cping.asp
http://www.codeguru.com/cpp/i-n/network/basicnetworkoperations/comments.php/c2481/?thread=32444
http://www.codeguru.com/forum/showthread.php?t=351570Wenn Du die Header nicht hast, dann verwendest Du wohl noch (das unsupportete) VC6... musst entweder ein aktuelleres PSDK installieren (aber max. Feb 2003!) oder es via LoadLibrary verwenden.
-
Ich verwende Visual Studio 2003 mit aktuellem PSDK.
-
Ach so.. die liegt im Verzeichnis:
C:\Programme\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Misc\Icmp