Versuche es mal mit mORMot
Unit SynCommons.pas.
Delphi-Quellcode:
var
tlb: TTimeLogBits;
begin
tlb.FromUTCTime;
ShowMessage(tlb.Text(True));
ShowMessage(IntToStr(tlb.ToUnixTime));
end;
Den Sourcecode habe ich jetzt nicht getestet. Wenns nicht passt, es gibt einige Zeitfunktionen in der
Unit.
Bis bald...
Thomas
Danke aber wüsste nicht was ich damit anfangen sollte.
Ich muss ja die aktuelle zeit übergeben und mit ToUnixTime ist das nicht gegeben.
Die anderen habe ich schon geprüft und funktionieren auch nicht so wie sie sollen.
Die Zeit unter D 10.4 ist korrekt aber ich kann es so in D2010 nicht umsetzen.
Weil ich aber 32Bit und 64Bit gleichhallten möchte in der Funktionsweise muss ich so leider darauf verzischten.
Und nein ich will D 14.4 nicht für 32Bit verwenden da ich nicht einsehe das mein Kompilat um das 4 Fache in der Größe ansteigt.
DateTimeToUnixTime SynCommons
Funktioniert nicht einmal unter 10.4 korrekt. Nur mal so nebenbei.
Ich will nicht sehen was in einer Stunde läuft (The Voice of Germany) sondern das was jetzt läuft. (Auf Streife)
Siehe Shots!
EDIT:
Nicht das wir uns missverstehen.
DateTimeToUnixTime ist schon richtig es sendet die UnixZeit + 1 Stunde.
Nur DateTimeToUnix (DateUtils) schickt die UnixZeit und zieht die 1 Stunde ab abhängig vom gesetzten flag AInputIsUTC das ist der feine Unterschied.
Die Zeit wird also direkt nach UTC konvertiert.