Что нового

[Автоматизация] Сочетание управляющих клавиш с буквами работает по-разному на разных машинах

JIeo_NEED

Прокачиваю знание AutoIt
Сообщения
17
Репутация
2
Находил в поиске многие похожие темы, но в них нет ответа на конкретно этот вопрос:
В документации есть пример использования функции Send для отправки сочетания клавиш:
[box title=Инфа]Эмуляция нажатия комбинации клавиш Win + R:
Send("#r")
Если русский язык у пользователя установлен по умолчанию при загрузке OS, то вместо "#r" нужно написать "#к", либо в скрипте временно переключать раскладку на англоязычную.
[/box]
Как узнать, какой язык у пользователя установлен по умолчанию?

Я костыльно проверял текущую раскладку с помощью Send('d'), копированием символа в буфер и проверкой, не равен ли введенный символ 'в'.

Спасибо.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
JIeo_NEED [?]
Как узнать, какой язык у пользователя установлен по умолчанию?
Код:
ConsoleWrite(StringFormat('KB Layout -> %s\n', _KBLang(@KBLayout)))

Func _KBLang($i_Code)
	
	Switch Dec($i_Code)
	Case 1033
		Return 'English'
	Case 1049
		Return 'Russian'
	EndSwitch
EndFunc; ==>_KBLang
 
Верх