Bin gerade auf einen merkwürdiges Phänomen gestoßen, daß bei mir diverse EConvertError Exceptions bei StrToDateTime() verursacht. Ich setze bei Programmstart die regionalen Datums-Einstellungen folgendermaßen:
Delphi-Quellcode:
DateSeparator := '-';
TimeSeparator := ':';
ShortDateFormat := 'yyyy/mm/dd';
LongTimeFormat := 'hh:nn:ss';
Später mache ich sowas (stark vereinfacht):
bla := StrToDateTime('2000-01-01 01:00:00')
was auch eigentlich niemals eine
Exception wirft, weil ich ja das ShortDateFormat oben passend gesetzt habe.
Nun habe ich durch Zufall einmal
1. Programm gestartet
2. mein Vista gesperrt ...
3. ... und wieder entsperrt
4. tataa - EConvertErrors in StrToDateTime(), weil ShortDateFormat zurückgesetzt wurde auf meine deutschen Originaleinstellungen ('dd.MM.yyyy')
Woher kommt dieses eigenmächtige Verhalten und wie kann ich das verhindern?