Hallo zusammen,
ich möchte das ein Programm zu einem bestimmten Zeitpunkt eine Aktion durchführt. Soweit ist das auch alles klar.
Die Aktion soll nach einer bestimmten Zeit ausgelöst werden, nach dem eine andere Aktion durch geführt wurde.
Sprich schreibe ich die Zeit von Jetzt + ZeitX in eine Globale Variable, diese ist in der Main Header geklariert und ist von Typ TDateTime. ( in einer Struktur)
Form1->zeit.laufzeit=(Date()+Time())+StrToDateTime("00:1 5:00");
geben ich danach die Zeit in einer MessageBox aus zum test ist exakt die richtigte Zeit in der Variable. Kommt aber die eigentliche Abfrage zum zuge dann kommt was ganz anderes heraus.
Die Abfrage :
if (CompareDateTime(Form1->zeit.laufzeit,Date()+Time())==-1){
}
Gebe die innerhalb dieser Abfrage die Zeit aus, die Abfrage ist immer true.
ShowMessage(DateTimeToStr(Form1->zeit.laufzeit));
kommt z.b. die 19.08.2008 18:00, auch wenn vorher die Zeit von 18:24 geschrieben wurde. Sprich es kommt immer die letzte volle Stunde dabei heraus.
Woran kann das liegen? Das die Variable von einer anderen Stelle im Programm überschrieben wird ist ausgeschlossen, zu mindest bei dem Teil den ich selbst geschreiben hab.
Gruß Lukas
ich möchte das ein Programm zu einem bestimmten Zeitpunkt eine Aktion durchführt. Soweit ist das auch alles klar.
Die Aktion soll nach einer bestimmten Zeit ausgelöst werden, nach dem eine andere Aktion durch geführt wurde.
Sprich schreibe ich die Zeit von Jetzt + ZeitX in eine Globale Variable, diese ist in der Main Header geklariert und ist von Typ TDateTime. ( in einer Struktur)
Form1->zeit.laufzeit=(Date()+Time())+StrToDateTime("00:1 5:00");
geben ich danach die Zeit in einer MessageBox aus zum test ist exakt die richtigte Zeit in der Variable. Kommt aber die eigentliche Abfrage zum zuge dann kommt was ganz anderes heraus.
Die Abfrage :
if (CompareDateTime(Form1->zeit.laufzeit,Date()+Time())==-1){
}
Gebe die innerhalb dieser Abfrage die Zeit aus, die Abfrage ist immer true.
ShowMessage(DateTimeToStr(Form1->zeit.laufzeit));
kommt z.b. die 19.08.2008 18:00, auch wenn vorher die Zeit von 18:24 geschrieben wurde. Sprich es kommt immer die letzte volle Stunde dabei heraus.
Woran kann das liegen? Das die Variable von einer anderen Stelle im Programm überschrieben wird ist ausgeschlossen, zu mindest bei dem Teil den ich selbst geschreiben hab.
Gruß Lukas
Comment