Lokalisierungsprobleme heißt:
Statt 19.08.2020 z. B. 08/19/2020 oder 2020.08.19
Irgendeine Systemeinstellung für u. a. die Datumsdarstellung wird / ist (sporadisch?) "verstrubbelt".
Eventuell kannst Du ja dann, wenn das Datum mal wieder 0 wird, die entsprechenden Systemeinstellungen auslesen und mal in 'ne Textdatei schreiben, um sie Dir zu Gemüte zu führen.
Oder Du setzt Dir beim Programmstart grundsätzlich Datums- und Zeitformat so, wie Du es im Programm erwartest.
In etwa sowas:
Delphi-Quellcode:
// Irgendwo im Formular ...
private
{ Private-Deklarationen }
fFormatSettings: TFormatSettings;
// z. B. im FormCreate:
GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, fFormatSettings);
// Jenachdem, wie Du es brauchst / erwartest.
fFormatSettings.LongDateFormat := 'DD.MM.YYYY';
fFormatSettings.LongTimeFormat := 'hh:mm:ss.zzz';
fFormatSettings.ShortDateFormat := 'DD.MM.YYYY';
fFormatSettings.ShortTimeFormat := 'hh:mm:ss.zzz';
Wenn nun (sprodisch) eine andere Software (oder der Anwender) mal die Systemeinstellungen für's Datum ändert, wirkt sich das nicht (zwingend) auf Dein Programm aus.
Ob's damit aber wirklich funktioniert, vermag ich nicht zu sagen. Aber 'nen Versuch ist es ja vielleicht wert.