全球热键发布(keyup)? (WIN32 API)

时间:2012-01-09 03:29:06

标签: c++ winapi hotkeys registerhotkey

有没有办法注意到用RegisterHotKey注册的热键按钮的发布?

每次按热键时都会收到WM_HOTKEY消息,但我需要知道密钥何时被释放

2 个答案:

答案 0 :(得分:5)

没有针对该具体行动的具体通知。您必须编写一个通过SetWindowsHookEx()实现全局键盘挂钩的DLL,然后您将收到单独的按键加/减通知,并且可以根据需要将它们与WM_HOTKEY通知匹配。

答案 1 :(得分:4)

使用RegisterHotkey检测密钥关闭,然后使用GetAsyncKeyState轮询,直到密钥不再关闭。这样可以避免SetWindowsHookEx的复杂性,并且轮询通常是可以接受的,因为只有在热键被按下时才会进行轮询。