Delphi-Quellcode:
function TzSpecificLocalTimeToSystemTime(lpTimeZoneInformation: PTimeZoneInformation; var lpLocalTime, lpUniversalTime: TSystemTime): BOOL; stdcall;
function TzSpecificLocalTimeToSystemTime; external kernel32 name 'TzSpecificLocalTimeToSystemTime';
implementation
uses
system.dateUtils;
Function DateTime2Utc(d:TDateTime):TDateTime;
var
TZI:TTimeZoneInformation;
LocalTime, UniversalTime:TSystemTime;
begin
GetTimeZoneInformation(tzi);
DateTimeToSystemTime(d,LocalTime);
TzSpecificLocalTimeToSystemTime(@tzi,LocalTime,UniversalTime);
Result := SystemTimeToDateTime(UniversalTime);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text := intToStr(secondsBetween(dateTime2Utc(now), encodeDate(1970,1,1)));
end;
wenn ich die Zeit
hier wieder von Unix nach real Zeit umwandele,
bekomme ich die aktuelle Zeit.
Mein Ergebnis bei
DateTime2Utc(IncDay(Now, 1));
= 30.12.1899
Zitat:
DateTime2UnivDateTime
gibt es bei mir nicht.
Zitat:
TimeStart := DateTimeToUnixWithOffSet(Now, -3600);
Schlägt fehl keine unix zeit.