Zeitzone in Windows auslesen

Hallo,
es gibt einen Rechner (Terminalserver) mit englischem Betriebssystem. Darauf lese ich in Delphi mit der Windows-Funktion GetTimeZoneInformation die Zeitzone aus. Zurück bekomme ich jedoch den Standardname-Wert „Mitteleuropäische Zeit“.
Was ich nicht verstehe, ist, warum ich einen deutschen Wert zurück bekomme, obwohl es ein englisches Betriebssystem ist.
In der Registry sind die Zeitzonen-Keys alle in englisch eingetragen.

Wer kann mir weiterhelfen? Wäre sehr dankbar.

Viele Grüße, Salbei

Das kommt ganz auf das wo und wie an. Wenn du auf die Windows Management Instrumentation auf dem Server zugreifst solltest du die Lokalisierung des angemeldeten Benutzers bekommen. Ganz gleich ob das Betriebssystem Englisch, Koreanisch oder Deutsch ist. Das gleiche gilt auch für die Windows API.

Schau mal ob es für Delphi ein Äquivalent zur ThreadUILanguage gibt. Dort solltest du im Thread-Context konfigurieren können ( setThreadUILanguage(…) ) welche Sprache du von der Windows API erwartest.

Um das noch mal klarzustellen, du erwartest ein „Central Europe Time“ anstatt „Mitteleuropäische Zeit“ oder erwartest du „MEZ“ ( bzw. CET ) ?