Почему команда Send «{Ctrl}{Shift}{c}» не исполняется в программе «AutoHotkey 2»?

Можно ли в AutoHotkey 2 в команде Send заменить символы ^ и + на имена клавиш Ctrl и Shift?
К примеру, стандартная команда: Send "^+{c}" работает исправно, но если применить замену на имена клавиш: Send "{Ctrl}{Shift}{c}", то она не выполняется. Можно ли это исправить?
  • 3 декабря 2023 г. 5:48
Ответы на вопрос 2
AutoHotkey 2 обновил синтаксис скриптов и не поддерживает использование имен клавиш вместо символов в команде Send. Версия 2 это более новая и более строгая версия синтаксиса, и она уже не поддерживает некоторые функции и синтаксис, которые были в версии 1.

Второе утверждение неверно - в AutoHotkey 2 вы не можете заменить "^" (Ctrl) и "+" (Shift) на "{Ctrl}" и "{Shift}" в команде Send. Это было изменено в новой версии синтаксиса, и теперь эти символы используются только для представления соответствующих клавиш в команде Send. Используйте "^" и "+" для Ctrl и Shift соответственно.

Необходимо использовать "^+c" для представления комбинации клавиш Ctrl + Shift + C. Если вы хотите использовать имена клавиш, вы можете сделать это в команде KeyWait, но не в команде Send. В AutoHotkey 2 использование имен клавиш в команде Send больше не поддерживается.
Для того, чтобы добиться желаемого результата, вам необходимо одновременно нажать следующую комбинацию клавиш: Send "{Ctrl down}{Shift down}{c}{Shift up}{Ctrl up}".
Похожие вопросы