Some times, you may find you can not login on a new imaged/setup computer and the reason is default keyboard is UK layout~

To mitigate this issue, you can change the key value with “Value Name” is 1 under hive:

HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
  • Action: update
  • Hive: HKEY_USERS
  • Key Path:.DEFAULT\Keyboard Layout\Substitutes
  • Value name:1
  • Default: unchecked
  • Value type: REG_SZ
  • Value data: 00000409

Change the “Value Data” to 00000409, which stand for English (United States).

Now the English (United States) should show in your login screenAnd we need to make it default:

HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes configure the keyboard layouts preferred by the user. Create a REG_SZ type key:

  • Action: update
  • Hive: HKEY_USERS
  • Key Path:.DEFAULT\Keyboard Layout\Substitutes
  • Value name: 00000c09
  • Default: unchecked
  • Value type: REG_SZ
  • Value data: 00000409

Click OK, reboot your machine, the default Keyboard on your login screen should be English (United States)

Via GPO

If this happens to a imaging process, you may find it easy to change via GPO:

create a new policy, navigate to Computer Configuration > preferences > Windows Settings > Registry

Right click Registry, select New > Registry Item

  • Action: update
  • Hive: HKEY_USERS
  • Key Path: click …,  navigate to “HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
  • Value name:1
  • Default: unchecked
  • Value type: REG_SZ
  • Value data: 00000409

Click OK.

Then do similar for Substitutes:Right click Registry, select New > Registry Item

HKEY_USERS\.DEFAULT\Keyboard Layout\Substitutes configure the keyboard layouts preferred by the user. Create a REG_SZ type key:

  • Action: update
  • Hive: HKEY_USERS
  • Key Path:.DEFAULT\Keyboard Layout\Substitutes
  • Value name: 00000c09
  • Default: unchecked
  • Value type: REG_SZ
  • Value data: 00000409

Link this to the computers that has the problems.

Language packs codes for Windows
Language/region Language/region tag Language/region ID Language/region decimal ID
Arabic (Saudi Arabia) ar-SA 0x0401 1025
Bulgarian (Bulgaria) bg-BG 0x0402 1026
Chinese (Hong Kong SAR) zh-HK Note: No longer used. See zh-TW. 0x0c04 3076
Chinese (PRC) zh-CN 0x0804 2052
Chinese (Taiwan) zh-TW 0x0404 1028
Croatian (Croatia) hr-HR 0x041a 1050
Czech (Czech Republic) cs-CZ 0x0405 1029
Danish (Denmark) da-DK 0x0406 1030
Dutch (Netherlands) nl-NL 0x0413 1043
English (United States) en-US 0x0409 1033
English (United Kingdom) en-GB 0x0809 2057
Estonian (Estonia) et-EE 0x0425 1061
Finnish (Finland) fi-FI 0x040b 1035
French (Canada) fr-CA 0x0c0c 3084
French (France) fr-FR 0x040c 1036
German (Germany) de-DE 0x0407 1031
Greek (Greece) el-GR 0x0408 1032
Hebrew (Israel) he-IL 0x040d 1037
Hungarian (Hungary) hu-HU 0x040e 1038
Italian (Italy) it-IT 0x0410 1040
Japanese (Japan) ja-JP 0x0411 1041
Korean (Korea) ko-KR 0x0412 1042
Latvian (Latvia) lv-LV 0x0426 1062
Lithuanian (Lithuania) lt-LT 0x0427 1063
Norwegian, Bokmål (Norway) nb-NO 0x0414 1044
Polish (Poland) pl-PL 0x0415 1045
Portuguese (Brazil) pt-BR 0x0416 1046
Portuguese (Portugal) pt-PT 0x0816 2070
Romanian (Romania) ro-RO 0x0418 1048
Russian (Russia) ru-RU 0x0419 1049
Serbian (Latin, Serbia) sr-Latn-CS Note: No longer used. See sr-Latn-RS. 0x081a 2074
Serbian (Latin, Serbia) sr-Latn-RS 0x241A 9242
Slovak (Slovakia) sk-SK 0x041b 1051
Slovenian (Slovenia) sl-SI 0x0424 1060
Spanish (Mexico) es-MX 0x080a 2058
Spanish (Spain) es-ES 0x0c0a 3082
Swedish (Sweden) sv-SE 0x041d 1053
Thai (Thailand) th-TH 0x041e 1054
Turkish (Turkey) tr-TR 0x041f 1055
Ukrainian (Ukraine) uk-UA 0x0422 1058