Good Morning @ all!
Problematik:
Ein System besteht aus mehreren voneinander unabhängigen Delphi-Programmen.
Systemsprache und Formatseinstellungen sind fast alle auf Deutsch.
Einziger Unterscheid: Standardtrennzeichen für das Datumsformat ist "/" anstatt "."
Wird der Skript für die Gruppenrichtlinien aktualisiert, muss kurzzeitig dieses "/" auf "." gesetzt werden.
Hierbei aktualisiert sich das leider auch in allen Programmen zu einem ".", jedoch nicht wieder, wie im Skript gewollt, zurück auf "/".
Simuliert werden kann das, indem bei "Regionale Einstellungen" ein "." eingestellt wird.
Bisher könnte jedes Programm sich selbst "heilen" indem es folgenden in einem Timer folgenden Code Sekündlich ausführt (maximale Fehlermöglichkeit besteht innerhalb 1 sec)
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| SetLocaleInfo( GetSystemDefaultLCID, LOCALE_SDATE, '/'); SetLocaleInfo( GetSystemDefaultLCID, LOCALE_SSHORTDATE, 'dd/mm/yy'); GetFormatSettings; |
Um das ganze zu Optimieren möchte ich nun als eine Art Dienst im Hintergrund das ganze machen können.
Lösungswunsch:
Ändere ich selbst in "Regionale Einstellungen" das Datumsformat erst auf "." und hiernach manuell wieder auf "/", dann ändert sich (ohne Aufruf der oben genannten Methoden) das Datumsformat wieder automatisch in allen Programmen.
Genau diese aktualisierung würde ich gerne nutzen und ich denke, dass es per WindowsAPI möglich sein könnte. Bisher habe ich jedoch kein Erfolg bei der Suche gehabt.
Ich hoffe jemand stand schonmal vor dem gleichen Problem und kann mir die Methode oder ggf. eine Page nennen, auf der das Datumsproblem bereits vorgekommen ist.
Auch für weitere Vorschläge, wie man hier vorgehen könnte (ohne Alle Programme zu modifizieren) bin ich sehr Dankbar!
Greetings
Masthe