Warum ändert sıch dıe Regıstry nıcht, wenn ich das Eingabegebietsschema ändere?

Hallo!

Ich habe in der Eingabegebietsschemaleiste (Windows XP) mehrere Sprachen eingestellt (Deutsch, Russische, Serbisch…).

Eigentlich sollte sich die Windows Codepage jedes mal ändern, wenn ich eine andere Sprache auswähle. Welche Codepage verwendet wird, ist ja meines Wissens in der Registry („HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage -> ACP“ ) abgelegt. Wenn ich in der Systemsteuerung->Regions- und Sprachoptionen->Sprache->Details zb Russisch als mein Standard-Eingabegebietsschema einstelle und den PC neustarte, steht unter ACP (s.o) in der Registry noch immer 1252.

Das bedeutet, dass sich die Registry nicht ändert. Wie kann ich dann zuverlässig auslesen, welche Windows Codepage gerade benutzt wird?

Bin für jeden Tipp bzw Hilfe dankbar.

Hallo.
Ich habe leider keine genaue Ahnung.
Laut der Microsoft Datenbank (http://support.microsoft.com/kb/102987/de ) steht dieser Schlüssel nur für die installierten Codepages. Die aktive Codepage scheint sich darüber nicht abfragen zu lassen.

Wenn du aber den passenden Registry Schlüssel dafür herausfinden möchtest, könntest du aus den MS Sysinternals die Regmon.exe benutzen, die die Registry beobachtet während du von hand dann die Codepage wechselst…

Hallo,

da muß ich leider passen, keine Ahnung wo in der Registry diese Änderung abgelegt wird.

LG, Wasili

Hi,
in der Codepage 1252 (ISO 8859) definiert 15 verschiedene Zeichensätze, darunter auch kyrillisch. Also muss die CP sich nicht ändern, wenn der Schriftsatz des geänderten Eingabegebietsschemas in der bisherigen CP schon definiert ist :wink:

Ausserdem sollte nicht (wenn eine Änderung überhaupt nötig ist) das ControlSet unter HKLM geändert werden, das betrifft nämlich - wie der Keyname schon sagt - Maschineneinstellungen, sondern untezr HKEY_CURRENT_USER, weil die Änderungen sich auf den gerade angemeldeten User beziehen :wink:

Das Tasturlayout (das über das Eingabegebietsschemas geändert wird) wird übrigens in einem anderen Registry-Zweig gespeichert, nämlich unter HKEY_CURRENT_USER\Keyboard Layout

Ich hoffe das hilft weiter :smile:

  • Ulli -

Hallo,

danke für die Antwort.

Aber laut http://msdn.microsoft.com/en-us/goglobal/cc305145.aspx definiert Windows 1252 keine kyrillischen Zeichen.

Unter HKEY_CURRENT_USER\Keyboard Layout hab ich nichts gefunden.

Hallo,

danke für die Antwort.

Aber laut http://msdn.microsoft.com/en-us/goglobal/cc305145.aspx definiert Windows 1252 keine kyrillischen Zeichen.

Unter HKEY_CURRENT_USER\Keyboard Layout hab ich nichts gefunden…

Hallo,

danke. guter Tipp. Werd ich gleich mal ausprobieren. Das ganze heißt jetzt „ProcessMonitor“ und ist unter http://technet.microsoft.com/de-de/sysinternals/bb89… zu finden.

Hallo,

bei mir befindet sich der Wert in:
HKEY_CURRENT_USER\Keyboard Layout\Preload

Der Wert unter 1 ist das aktuell eingestellte Tastaturlayout, die anderen sind die weiteren installierten.

Schönen Gruß,
Sebastian Jänicke