Ping Interval
-
Hallo,
ich habe eine CListCtrl mit IP einträgen und zu jedem eintrag ein Interval in welchem abstand ein Pingtest durchgeführt werden soll.
Wehrend der Laufzeit werden einträge gelöscht, neue eingetragen und verändert.
Der Interval wird auch bei jedem eintrag einzelt verändert, bei einem alle 5min bei einem anderen 10min usw.Mein Frage ist nun, wie kann ich es mit dem Intterval realisieren?
-
SetTimer!?
-
für jede IP?
weil es sind verschiedene intervale und es sind knapp 80 IP's
-
Du suchst Dir das kleineste gemeinsame Intervall und verwendest nur einen Timer. Oder Du machst prinzipiell einen Timer mit 10 Sekunden und rufst Den Ping halt immer nur noch x TImeouts auf...
-
ok,
1. in die liste werde ich eine spalte einfügen wo die uhrzeit und datum des letzten pingtest automatisch eingetragen wird.
2. erstelle mal dann einen Timer mit dem kleinsten gemeinsamen Intervall, der dann die aktulle zeit mit der gespeichert zeit bei der IP in der Liste überprüft, (alle von oben nach unten durchgehen)
3. wenn der zeitunterschied größer ist als der eingestellte intervall bei der ip, dann ping test und dann nechster eintrag. Wenn kleiner, dann sonnst nechster eintrag.
einen einen besseren vorschlag?
-
Ein "Intervall" hat IMHO nix mit einem Datum/Uhrzeit zu tun. Da kommst Du dann nur wieder in Probleme, wenn diese sich ändert!!! Speichere z.B. den "GetTickCount" und beachte dort den überlauf!
-
Wenn ich mal wieder was zur Diskussion Beitragen kann.
Ich würde für jede IP auf der ein Pingtest ausgeführet werden soll, einen Thread anlegen. Da ist man nicht auf den Timer des Windows nicht angewießen. und muß keine Kopfstand für einen gemeinsamen Timer machen oder eine Liste durchgehen und Schauen ob jetzt ein Ping ausgefüht werden muß. Mit CreateWaitableTimer usw. kann man das auch relativ genau machen.
Gruß
-
Wenn ich ma fragen darf. Wie setzt den Ping ab? Gibts da ne g'scheite
Klass für?