InputLocale specifies the input language and the method for input devices, such as the keyboard layout. The input locale (also called input language) is a per-process setting that describes an input language (for example, Greek) and an input method (for example, the keyboard).

Multiple input locales can be installed, and the user can switch between them. Users can add and remove input locales through the Keyboard and Languages tab of the Region and Language Control Panel.

For a list of supported languages, locales, and identifiers, see Supported Language Packs and Default Settings.



Specifies the input language and keyboard layout for a Windows installation.

Input_locale can be one of two values:

  • To use the default input locale for a language, specify the language identifier. For example, to use the default keyboard for English (United States) that corresponds with the QWERTY keyboard, you can specify the value en-US.

  • Specify the locale ID and keyboard layout hexadecimal values. For example, for en-US, use 0409:00000409. The first value (0409) is the locale ID that represents the input language and the second value (00000409) is the keyboard layout value.

If you want to specify more than one input locale to add support for more than one keyboard type, you can specify multiple values separated by semicolons. For example, you can specify <InputLocale>en-US; fr-FR; es-ES</InputLocale> to add support for English (US), French (France), and Spanish (Spain) keyboards. The first value that is listed is used as the default keyboard.

The valid keyboard layouts that can be configured on your system are listed in the HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Keyboard Layouts registry key.

For a list of default input locale values, see Supported Language Packs and Default Settings.




For a list of the Windows editions and architectures that this component supports, see Microsoft-Windows-International-Core.

The following example shows how to set the input locale to the English (US) Dvorak keyboard.