AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Ergebnis von CompareDateTime wird nie erreicht?
Thema durchsuchen
Ansicht
Themen-Optionen

Ergebnis von CompareDateTime wird nie erreicht?

Ein Thema von Angel4585 · begonnen am 19. Dez 2012 · letzter Beitrag vom 19. Dez 2012
Antwort Antwort
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

Ergebnis von CompareDateTime wird nie erreicht?

  Alt 19. Dez 2012, 12:27
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:
  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
Siehe Kommentar. Dort kommt das Programm nie rein.
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?
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: Ergebnis von CompareDateTime wird nie erreicht?

  Alt 19. Dez 2012, 12:36
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;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Ergebnis von CompareDateTime wird nie erreicht?

  Alt 19. Dez 2012, 12:39
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
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#4

AW: Ergebnis von CompareDateTime wird nie erreicht?

  Alt 19. Dez 2012, 12:51
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');
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#5

AW: Ergebnis von CompareDateTime wird nie erreicht?

  Alt 19. Dez 2012, 13:16
Achso Vielen Dank!
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:24 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