![]() |
Ergebnis von CompareDateTime wird nie erreicht?
Guten Tag!
Ich möchte die Funktion CompareDateTime aus der DateUtils nutzen um zwei Zeitstempel zu vergleichen. Aufgebaut habe ich das folgendermaßen:
Delphi-Quellcode:
Siehe Kommentar. Dort kommt das Programm nie rein.
FileAge(srcFile,srcDate);
FileAge(destFile,destDate); case CompareDateTime(srcDate,destDate) of GreaterThanValue : begin //Meldung bringen und nach Benutzerentscheidung handeln end; EqualsValue: begin //Überspringen ( HIER KOMMT DAS PROGRAMM NIE REIN? ) end; end; //Kopieren Wenn ich einen Haltepunkt setze, wird der durchgestrichen. Da ein Neustart der IDE nix hilft, denke ich es liegt irgendwie an der CompareDateTime-Funktion. Kann mir jemand sagen warum das nicht geht? |
AW: Ergebnis von CompareDateTime wird nie erreicht?
Delphi-Quellcode:
uses DateUtils,Math;
{$R *.dfm} procedure TForm4.Button1Click(Sender: TObject); var d1,d2:TdateTime; begin d1 := EncodeDateTime(2012,12,19,12,11,10,0); d2 := EncodeDateTime(2012,12,19,12,11,10,1); if CompareDateTime(d1,d2) = 0 then begin Showmessage('Same'); end else Showmessage('Not Same'); d1 := RoundTo(d1,-6); d2 := RoundTo(d1,-6); if CompareDateTime(d1,d2) = 0 then begin Showmessage('Same ' + DateTimeToStr(d1)+' - '+DateTimeToStr(d2)); end else Showmessage('Not Same'); end; |
AW: Ergebnis von CompareDateTime wird nie erreicht?
Danke, wie man es verwendet weis ich schon, war nur irritiert das der Debugger nicht an die Stelle kommt...
Tatsächlich geht das Programm schon da hin, aber da ich da nur ein Continue habe (was hier im beispiel fehlt) hält der Debugger dort nicht :wall: |
AW: Ergebnis von CompareDateTime wird nie erreicht?
Ich hatte versucht zu zeigen dass die Datumswerte sich wahrscheinlich im ms Bereich unterscheiden und deshalb nie identisch sind und wie man damit umgehen könnte.
Ähnliches wie
Delphi-Quellcode:
if SameValue(d1,d2,EncodeTime(0,0,0,2)) then // wenn Du 2 ms Abweichung ignorieren willst
begin Showmessage('Same'); end else Showmessage('Not Same'); |
AW: Ergebnis von CompareDateTime wird nie erreicht?
Achso :) Vielen Dank! :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz