damit funktioniert's, ist vielleicht nicht gerade elegant, aber na ja...
Delphi-Quellcode:
var
datetimeOriginal,dateTime:tDateTime;
date,time:integer;
begin
datetimeOriginal:=now;
date:=trunc(datetime);
time:=round(frac(datetime)*100000);
memo1.Lines.Clear;
memo1.lines.add(formatdatetime('c',datetime));
memo1.lines.add(inttostr(date));
memo1.lines.add(inttostr(time));
dateTime:=date+(time / 100000);
memo1.lines.add(formatdatetime('c',dateTime));
end;
Allerdings könnte man anstatt dem *100000 / 100000 auch wie in assembler doch einfach die oberen x byte in einen integer und die unteren x byte in einen integer speichern und dann beim wiederherstellen einfach die bytes wider zusammen setzten. In assembler weiss ich wie's geht, nicht jedoch in delphi....