The RegisterHotKey function defines a system-wide hot key.
BOOL RegisterHotKey(
HWND hWnd, |
// window to receive hot-key notification |
int id, |
// identifier of hot key |
UINT fsModifiers, |
// key-modifier flags |
UINT vk |
// virtual-key code |
); |
Value |
Meaning |
MOD_ALT |
Either ALT key must be held down. |
MOD_CONTROL |
Either CTRL key must be held down. |
MOD_SHIFT |
Either SHIFT key must be held down. |
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
When a key is pressed, the system looks for a match against all hot keys. Upon finding a match, the system posts the WM_HOTKEY message to the message queue of the thread that registered the hot key. This message is posted to the beginning of the queue so it is removed by the next iteration of the message loop.
This function cannot associate a hot key with a window created by another thread.
RegisterHotKey fails if the keystrokes specified for the hot key have already been registered by another hot key.
If the window identified by the hWnd parameter already registered a hot key with the same identifier as that specified by the id parameter, the new values for the fsModifiers and vk parameters replace the previously specified values for these parameters.