Change default keyboard language for Windows PE media

I have used this guide to make a Windows PE flash drive. It works as it should. When I boot a computer into Windows PE a CMD window appears.

The problem is that the keyboard is set to US by default, but I am using a nordic keyboard.

How can I change the default keyboard that loads on the initial CMD window?

I have tried all the following command without any success:

Dism /Add-Package /Image:"C:\tmp" /PackagePath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\nb-NO\lp.cab"
Dism /Image:"C:\tmp" /Set-SetupUILang:nb-NO
Dism /Image:"C:\tmp" /Set-SKUIntlDefaults:nb-NO
Dism /Image:"C:\tmp" /Set-SysLocale:nb-NO
Dism /Image:"C:\tmp" /Set-UILang:nb-NO
Dism /Image:"C:\tmp" /Set-UILangFallBack:nb-NO
Dism /Image:"C:\tmp" /Set-UserLocale:nb-NO
Dism /Image:"C:\tmp" /Set-InputLocale:nb-NO
Dism /Image:"C:\tmp" /Set-AllIntl:nb-NO

If I investigate I can see that Norwegian keybobard is in fact installed. That is 0414:00000414. So that is kind of weird.

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>Dism /online /Get-Intl

Deployment Image Servicing and Management tool
Version: 10.0.17763.1

Image Version: 10.0.17763.437

Reporting online international settings.

Default system UI language : en-US
System locale : nb-NO
Default time zone : W. Europe Standard Time
Active keyboard(s) : 0409:00000414, 0414:00000414
Keyboard layered driver : PC/AT Enhanced Keyboard (101/102-Key)

Installed language(s): en-US
  Type : Fully localized language.

Do I really have to type wpeutil SetKeyboardLayout 0409:00000414 each time I load Windows PE? Is there no other way?


Solution 1:

The input profiles are made up of a language identifier and a keyboard identifier.

For example: 0409:00000414

A language identifier is a standard international numeric abbreviation for the language in a country or geographical region. For example 0409 is the hexadecimal identifier of the language United States (US) and 00000414 is the hexadecimal identifier of the keyboard "Norway/Norwegian".

Change

Dism /Image:"C:\tmp" /Set-InputLocale:nb-NO

to

Dism /Image:"C:\tmp" /Set-InputLocale:0409:00000414

and you will get Nowegian keyboard input at the initial CMD screen once Windows PE has loaded.

enter image description here

Not really sure why nb-NO does not work. The documentation says you can use it...

Solution 2:

You can setup your keyboard as follows:

  • In the customized Windows PE image, go to %SYSTEMROOT%\System32
  • Edit the file Startnet.cmd containing the startup script
  • Add the command:

    wpeutil setkeyboardlayout 0414:00000414
    

More info and keyboard layouts in the article Set Keyboard Layout in MDT and SCCM Task Sequence, where I have found listed these possible Norwegian keyboard layouts:

enter image description here