Is there a way to notice the release of a hot-key button registered with RegisterHotKey?

I get a WM_HOTKEY message every time I press the hot-key but I need to know when the key was released

有帮助吗?

解决方案

There is no specific notification for that specific action. You will have to write a DLL that implements a global keyboard hook via SetWindowsHookEx(), then you will receive individual keypress up/down notifications and can match them up to your WM_HOTKEY notifications as needed.

其他提示

Use RegisterHotkey to detect the key going down, then use polling with GetAsyncKeyState until the key is no longer down. This avoids the complexity of SetWindowsHookEx and the polling is generally acceptable since it is only done while the hotkey is being held down.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top