TransWikia.com

Autounattend.xml - Don't add the default keyboard for UserLocale

Server Fault Asked by Bangaio on December 23, 2020

Version: Windows 10 1909 (Spanish)

I wish to add two keyboard layouts (Spanish, US English) to the es-AR language profile in an unattended installation.

I have the following in the OOBE pass:

    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <InputLocale>2C0A:0000040A;2C0A:00000409</InputLocale>
            <SystemLocale>es-AR</SystemLocale>
            <UILanguage>es-ES</UILanguage>
            <UILanguageFallback>en-US</UILanguageFallback>
            <UserLocale>es-AR</UserLocale>
        </component>
   [...]

Keyboard Identifiers:

0000040A -> Spanish
00000409 -> United States - English

Source: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-language-pack-default-values

Default Input Profiles:

Spanish - Argentina     es-AR: Latin American (2c0a:0000080a)

Source: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-input-locales-for-windows-language-packs

According to that article, the default keyboard will get added for the UserLocale (even if not specified in InputLocale in the unattend file, apparently). So I get 3 keyboards (Spanish, US English, Latin American) instead of 2 like I want (Spanish, US English).

Is there any way to prevent this behavior?


EDIT:

I ended up writing a script to re-set the keyboards. It’s too ugly to post since it’s a mix of batch and powershell (which I need to learn properly some day), but the gist of it is:

  1. Set the keyboards for the current user using Set-WinUserLanguageList
  2. Under HKCUControl PanelInternational in the registry, replace the contents of User Profile System Backup with those of User Profile. I found out if you don’t do this, the changes can get reverted under unknown circumstances.
  3. Under HKCU, copy the following keys: Keyboard Layout, Control PanelInternational, Control PanelInput Method and SoftwareMicrosoftCTF to the accounts (under HKEY_USERS): DEFAULT (hive needs to be loaded from %SYSTEMDRIVE%UsersDefaultntuser.dat), .DEFAULT, S-1-5-19 and S-1-5-20
    This is what Control Panel > Region > Administrative > Copy Settings > Welcome screen and system accounts | New User Accounts does, or at least it has the same effect.

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP