Windows Mobile 6.5
A version of this page is also available for

This function sets the input locale identifier, formerly called the keyboard layout handle, for the system. The input locale identifier specifies a locale as well as the physical layout of the keyboard.

HKL ActivateKeyboardLayout(
  HKL hkl,
  UINT Flags


[in] Input locale identifier to be activated. Obtain this parameter with LoadKeyboardLayout or GetKeyboardLayoutList.


[in] Ignored.

The return value is of type HKL. If the function succeeds, the return value is the previous input locale identifier. Otherwise, it is zero.

To obtain extended error information, call the GetLastError function.

This function is not restricted to keyboard layouts. The hkl parameter is actually an input locale identifier, because it can also encompass a speech-to-text converter, an IME, or any other form of input. Several input locale identifiers can be loaded at any one time, but only one is active at a time.

Windows Embedded CEWindows CE .NET 4.2 and later
Windows MobileWindows Mobile Version 5.0 and later

Community Additions