Ищите функцию, похожую на GetAsyncKeyState или GetCursorPos - PullRequest
0 голосов
/ 21 августа 2011

Я хотел бы получить сигнал нажатия клавиш без использования функций мониторинга с помощью хуков или клавиатуры, таких как getasynckeystate, которые, кажется, решают мою проблему.Мне нужна функция, которая может работать глобально (за пределами созданных окон), что-то вроде GetCursorPos, но для нажатия клавиши (нажатие клавиши PageUp) для запуска какого-то настроенного события.Спасибо за любые рекомендации, которые вы можете предложить.

1 Ответ

0 голосов
/ 21 августа 2011

Я верю, что DirectInput может это сделать.Давным-давно у моей команды разработчиков было приложение для голосовой связи, в котором ключ «нажми и говори» может быть пойман нашим приложением, независимо от того, было ли другое приложение на переднем плане или нет.

Если сервер памяти работает правильномы использовали DirectInput с выделенным потоком, прослушивающим DInput, чтобы сигнализировать нашему дескриптору HEVENT.Когда четная нить просыпается, она спрашивает directinput, какая клавиша была нажата.Если это была наша горячая клавиша, мы отключили звук микрофона (и приглушили его при событии up).

Большинство документов DirectInput были взяты из MSDN.(Заменено XInput).Я понятия не имею, может ли xinput выполнить то же самое.Но если вы можете найти устаревший пакет DirectX SDK (например, DirectX 8 SDK), включенные документы должны иметь все необходимое для DirectInput.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...