怎么检测快捷键被哪些程序占用了?

悠然的二货 2017-07-08 03:31:32
试过获取所有窗口的句柄 然后DWORD dw = ::SendMessage(hwnd, WM_GETHOTKEY, NULL, NULL);
得到的值全是0
...全文
1121 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
tulingwangbo 2017-12-26
  • 打赏
  • 举报
回复
系统热键可以在程序隐藏或失去焦点时响应;感觉没有键盘钩子好用,键盘钩子只有在程序获得焦点时才有效: 初始化时:ms_hHook = SetWindowsHookEx(WH_KEYBOARD_LL, &LowLevelKeyboardProc, 0, 0); 退出时:UnhookWindowsHookEx(ms_hHook);
悠然的二货 2017-07-11
  • 打赏
  • 举报
回复
引用 7 楼 zhao4zhong1 的回复:
[quote=引用 3 楼 zhao4zhong1 的回复:] 百度搜相关关键字。
https://www.baidu.com/s?wd=怎么检测快捷键被哪些程序占用 [/quote]我也搜过的 就搜到一个帖子 里面就是说用SendMessage(hWnd, WM_GETHOTKEY, NULL, NULL)
悠然的二货 2017-07-11
  • 打赏
  • 举报
回复
引用 6 楼 zgl7903 的回复:
Windows热键注册原理
最后的遍历系统热键需要哪方面的知识..一堆没见过的结构体和api
赵4老师 2017-07-11
  • 打赏
  • 举报
回复
引用 3 楼 zhao4zhong1 的回复:
百度搜相关关键字。
https://www.baidu.com/s?wd=怎么检测快捷键被哪些程序占用
赵4老师 2017-07-11
  • 打赏
  • 举报
回复
在我眼中,间接调用命令行或GUI软件获取我想要的信息,跟调用相关底层或高层API获取,没有本质区别。 命令行使用输入输出重定向。GUI使用AutoHotKey。
赵4老师 2017-07-10
  • 打赏
  • 举报
回复
百度搜相关关键字。
oyljerry 2017-07-10
  • 打赏
  • 举报
回复
直接用注册的方式,如果冲突了,会返回失败信息,这样就可以知道有没有冲突
zgl7903 2017-07-10
  • 打赏
  • 举报
回复
从 WM_HOTKEY 的注释来看, WM_HOTKEY is unrelated to the WM_GETHOTKEY and WM_SETHOTKEY hot keys. 因此 WM_GETHOTKEY 可能获取不到, 可以试试用 RegisterHotKey 测试,看返回值 RegisterHotKey fails if the keystrokes specified for the hot key have already been registered by another hot key.
zgl7903 2017-07-10
  • 打赏
  • 举报
回复
悠然的二货 2017-07-10
  • 打赏
  • 举报
回复
引用 2 楼 oyljerry 的回复:
直接用注册的方式,如果冲突了,会返回失败信息,这样就可以知道有没有冲突
可能我没说清楚 我是想知道这个热键被哪个程序占用了 注册的话 只能知道被注册了 但是不知道被谁注册
悠然的二货 2017-07-10
  • 打赏
  • 举报
回复
引用 1 楼 zgl7903 的回复:
从 WM_HOTKEY 的注释来看, WM_HOTKEY is unrelated to the WM_GETHOTKEY and WM_SETHOTKEY hot keys. 因此 WM_GETHOTKEY 可能获取不到, 可以试试用 RegisterHotKey 测试,看返回值 RegisterHotKey fails if the keystrokes specified for the hot key have already been registered by another hot key.
RegisterHotKey 只能知道这个热键有没有被注册 怎么才能知道这个热键被哪个程序注册?

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧