4

Есть ли способ узнать, какая клавиша Enter была нажата? Требуется ли драйвер низкого уровня или что-то подобное? ОС знает, какая Enter была нажата?

Я на Windows, и я попробовал Carnac, но он только говорит мне, была ли нажата Enter или нет.

2 ответа2

0

Если вы имеете в виду цифровую клавиатуру, сценарии в AutoHotkey будут запускаться / обнаруживаться отдельно для Enter и для NumPadEnter

В зависимости от того, что вы хотите сделать, вы можете запускать их по отдельности, но позволить нажатию клавиши перейти к исходному приложению, используя тильду перед определением горячей клавиши, а затем выполнить последующее действие сбоку (параллельно ) с отправкой нажатия клавиши в приложение (отправка сообщения, запись в журнал и т. д.)

0

Насколько я знаю, оба ключа ввода имеют одинаковый код сканирования (VK_RETURN). Я думаю, что ключ numpad можно определить, проверив lParam например, из сообщения WM_KEYDOWN .

Ключи Numpad, вероятно, собираются установить для "расширенного" бита (бит 24) значение 1. Таким образом, операция AND (lParam & x1000000) будет проверять этот бит.

https://msdn.microsoft.com/en-us/library/windows/desktop/ms646280(v=vs.85).aspx

Вот как это видит Windows, но она может не отображаться во многих программах в стиле горячих клавиш.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .