Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long
GetKeyboardLayoutName позволяет получить текущую раскладку, которая отображается в нижнем правом углу. В России, как правило применяются две раскладки - русская и английская. Имя раскладки состоит из строки, содержащей шестнадцатиричное значение идентификаторов языка (младшее слово) и устройства (старшее слово). Например, существуют несколько типов американской раскладки. Для русской раскладки применяется значение 00000419, для американской - 00000409
' Определим текущую раскладку на клавиатуре Dim strName As String 'Создадим буфер strName = String(KL_NAMELENGTH - 1, 0) ' Получаем номер раскладки GetKeyboardLayoutName strName Print "Номер раскладки: " + strName