Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Timer - Komponente: Intervall von einer Woche (https://www.delphipraxis.net/57949-timer-komponente-intervall-von-einer-woche.html)

mumu 29. Nov 2005 10:44


Timer - Komponente: Intervall von einer Woche
 
ich habe mir ein kleines backup programm erstellt, dass im intervall von einer woche (ist einstellbar im Programm) ein Backup zieht. Nur irgendwie wird mein Timer nicht ausgeführt, wenn ich ein solch hohes intervall angebe.

kann es eventuell sein, dass es daran liegt, dass mein programm in der systray ausgeführt wird und somit der timer nicht ausgelöst wird. Verwende die systray komponente von den jedi's.

gruß

Luckie 29. Nov 2005 10:51

Re: Timer - Komponente: Intervall von einer Woche
 
Der Intervall sollte ein DWORD sein, das heißt man kann maximal einen Intervall von 49 Tagen einstellen. Daran sollte es also eigentlich nicht liegen. Wäre es nicht sinnvoll mit einem Datum zu arbeiten oder ist dein Rechner ununterbrochen an? Auch wenn du das berücksichtig hast, musst du dir ja immer merken, wie viel zeit schon verstrichen ist und die ganze Zeit einen Timer laufen lassen ist auch nicht so schön. Ich würde das datum des nächsten Backups speichern und bei jedem Programmstart gucken, ob der Termin an dem Tag ist oder nicht.

Eine Alternative wäre, und die halte ich für die bessere und einfachhere, dein Programm im Taskplaner von Windows einzutragen. Da musst du dich um nichts mehr kümmern, macht alles Windows für dich. Desweiteren ist er genau dafür gedacht. Und Code wie man sein Programm dort einträgt, sollte auch zu finden sein. Einziger nachteil, auf manchen Systemen ist er deaktiviert. Aber wer so ein Programm benutzt, wird ihn nicht deaktivieren.

FriFra 29. Nov 2005 11:11

Re: Timer - Komponente: Intervall von einer Woche
 
Ein Timer ist viel zu ungenau... Wenn Dein Programm gerade weniger Rechenzeit vom System bekommt dann läuft auch Dein Timer langsamer (bzw. hat aussetzer) - Eine Woche kann dann schonmal 8 Tage dauern ;)
Nimm einfach einen deutlich kürzeren Interval (z.B. 1 Minute) und vergleiche das Tagesdatum mit dem "Zieldatum", dann reagiert Dein Programm sehr schnell und zuverlässig :???:

Luckie 29. Nov 2005 11:16

Re: Timer - Komponente: Intervall von einer Woche
 
Zitat:

Zitat von FriFra
Nimm einfach einen deutlich kürzeren Interval (z.B. 1 Minute) und vergleiche das Tagesdatum mit dem "Zieldatum", dann reagiert Dein Programm sehr schnell und zuverlässig :???:

Dann läuft 24 Stunden, 7 Tage die Woche ein Program, was sich alle Minute eine WM_TIMER Nachricht schicken lässt, nur um alle 7 Tage eine Aktion auszuführen. Nun ja. Muss er selber entscheiden, ob diese Systembelastung es wert ist. Mir wäre sie es nicht.

mumu 29. Nov 2005 11:53

Re: Timer - Komponente: Intervall von einer Woche
 
hmm denk mal, ich werd dann wirklich den Taskplaner einsetzen. Muss zwar mein Programm ganz schön abändern, aber das ist wohl das Zuverlässigste.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz