Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, _ ByVal flags As Long) As Long
В случае ошибки функция возвращает 0 (используйте GetLastError для получения кода ошибки). В успешном случае возвращается идентификатор раскладки
KLF_ACTIVATE = &H1 | Загрузить и активизировать заданную раскладку |
KLF_NOTELLSHELL | Не отправлять уведомление HSHELL_LANGUAGE |
KLF_REORDER | Переместить активную заданную раскладку в начало внутреннего списка раскладок |
KLF_REPLACELANG | Заменить существующую раскладку, если она существует, на новую |
KLF_SUBSTITUTE_OK | Использовать данные из реестра |
KLF_SETFORPROCESS | Windows 2000 or later:: This flag is valid only with KLF_ACTIVATE. Activates the specified input locale identifier for the entire process and sends the WM_INPUTLANGCHANGE message to the current thread's Focus or Active window. Typically, LoadKeyboardLayout activates an input locale identifier only for the current thread |
' Загружаем белорусскую раскладку
Dim lret As Long
lret = LoadKeyboardLayout(("00000423" & Chr(0)), KLF_ACTIVATE)
ActivateKeyboardLayout lret, 0