Zitat von
JonnyGuitar:
... und zwar bekomme ich aus der registry einen string folgenden musters: '12.11.2007'.
Kommt nun drauf an, wer diesen Wert in die Registry schreibt/geschrieben hat.
Wenn du das bist, dann solltest du das Format ändern.
Entweder a.) das
ISO 8601 Format verwenden oder b.) ein maschinenlesbares Format wie z.B. Anzahl der Tage seit dem 31.12.1899 verwenden.
Es gilt folgende Grundregel:
Niemals ein Datum / Uhrzeit so speichern, wie es dem Benutzer an der Oberfläche präsentiert wird!
Immer ein international anerkanntes Stringformat oder ein maschinenlesbares Format verwenden.
Variante b.) ist besonders einfach:
Delphi-Quellcode:
var
datum : TDateTime;
begin
...
datum := SysUtils.Date;
Reg.WriteString('LastUpdate', IntToStr(Trunc(datum)));
// Trunc schneidet den evtl. Zeitanteil ab
...
datum := StrToFloat(Reg.ReadString('LastUpdate')); // und zurück lesen
Übrigens !!! Die Klasse TRegistry hat die Methoden ReadDate, WriteDate.
Damit wird ein Datum gleich
binär in die Registry geschrieben/gelesen.
CPU-Belastung und Speicherverbrauch sind hier am Kleinsten.