WIN32 API的全球热键?

Mar*_*ars 15 c++ winapi hwnd registerhotkey

我已经能够像这样设置本地热键

 RegisterHotKey(hwndDlg, 100, MOD_ALT | MOD_CONTROL, 'S');
Run Code Online (Sandbox Code Playgroud)

如何将热键设置为全局?即使我的窗户被隐藏,我希望它在那里.

Mar*_*ars 11

我自己解决了,但谢谢你的回复,这里出了什么问题......

ShowWindow(hwndDlg, SW_HIDE);
RegisterHotKey(hwndDlg, 100, MOD_ALT | MOD_CONTROL, 'S');
Run Code Online (Sandbox Code Playgroud)

如果你先注册热键,然后隐藏窗口......由于某种原因,它忽略了热键...哦......它现在正在工作:)


Yan*_*nov 6

http://msdn.microsoft.com/ru-RU/library/windows/desktop/ms646309(v=vs.85).aspx

hWnd [in,optional]

类型:HWND

<...>如果此参数为NULL,则WM_HOTKEY消息将发布到调用线程的消息队列中,并且必须在消息循环中处理.

这是注册全局热键的更好方法.