2

I have multiple users on my PC - using a variety of keyboard layouts. But modifications to layouts for one user affect the layouts of other users.

So for example if user 1 adds a second layout, it appears on the other users' layouts too.

I've searched a lot, found plenty of people also running into bizarre problems (you have to add a keyboard layout before you can remove it...), but nothing like this. Is my use case just too exotic? Is there something in the way this data is stored that is user independent? Or is it because my user has admin rights that it's being written somewhere else?

Benjol
  • 1,848

1 Answers1

1

The administrator may add keyboard layouts for the entire system. You may control user keyboard layouts more finely through the registry.

The values under HKEY_CURRENT_USER\Keyboard Layout\Preload represent the keyboard layouts a user can choose from on the taskbar. These values are the hexadecimal representation of a language id. The value whose name is 1 is the default keyboard layout. The keyboard identifier list is found in Microsoft's article Keyboard Identifiers.

You may examine the layouts of all users under the registry hive of HKEY_USERS.

A more humanly readable form for these ids is found in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes. For example 807 for Swiss German (sg) or 409 for United States (us).

harrymc
  • 498,455