Autor Beitrag
MilchKaffee
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 04.09.08 13:08 
Hi Forum!

Wie führt man eine bestimmte Funktion täglich zu einer bestimmten Uhrzeit aus?

Kurze Beschreibung: Das Programm läuft immer im Tray und soll z.B. morgens um 3 Uhr eine einfache Datenbankabfrage initiieren. Danach wird automatisch eine eMail versendet.

Benötigt man dazu einen Timer? Oder evtl. einen Thread, der permanent die Systemzeit abfragt und bei einer voreingestellten Uhrzeit die Funktion auslöst?

Kennt jemand eine gute Quelle / ein Tutorial, wo dieses Thema beschrieben wird bzw. hat jemand eine Idee für den groben Aufbau?

Vielen Dank vorab!
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 04.09.08 13:35 
Hierfür ist ein Timer genau das Richtige. Da du ja nicht auf ein paar Sekunden genau den Vorgang starten mußt, reicht es einfach im Timer jede Minute (60000 ms) die aktuelle Uhrzeit mit der gewünschten abzufragen, und bei 'größer gleich (>=)' dann deine Aktion starten. Das Programm muß sich dann aber noch merken, daß es die Aktion schon für den aktuellen Tag ausgeführt hat, damit es nicht den ganzen Tag sendet.
Wenn du alternativ nur auf exakte Gleichheit abfragen willst, dann vergleiche aber auch wirklich nur Stunden und Minuten.

Einen Thread brauchst du nur, wenn du mehrere Sachen gleichzeitig machen willst, also z.B. noch eine GUI anzeigen, während die DB-Abfrage erfolgt...

P.S: Noch eine Alternative: du könntest dein Programm mittels der Systemsteurung/Geplante Tasks ausführen lassen (sofern es nicht noch andere Dinge machen soll).
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 04.09.08 14:11 
Weitere (überwiegend gleiche) Antworten gibt es auch hier und hier. Hier in Punkt 2 wird auch erläutert, warum solche Mehrfach-Posts als unhöflich angesehen werden. Jürgen
MilchKaffee Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Do 04.09.08 14:13 
Vielen Dank Th69