怎样知道我的程序被挂机键最小化了?

TORSA 2010-12-22 04:22:53
手机按挂机键会把所有的程序最小化回到桌面,怎样在我的程序中知道这个事件?

hook按键的建议就不采纳了,因为如果其它程序安装,我的再安装就没用了。
...全文
180 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
TORSA 2011-06-23
  • 打赏
  • 举报
回复
这贴没有太满意的答案。
在没有桌面插件干扰的情况下, 可判断[HKEY_CURRENT_USER\System\State\Shell]下的Active Application
hmg25 2010-12-23
  • 打赏
  • 举报
回复
判断当前顶层窗口是否是该程序的窗口
lvlin1980 2010-12-23
  • 打赏
  • 举报
回复
GetForegroundWindow()==GetDesktopWindow() 学习了 不错
ProgrammerNO1 2010-12-22
  • 打赏
  • 举报
回复
1楼思路不错
xiayadong 2010-12-22
  • 打赏
  • 举报
回复
使用以下函数注册一个热键试试看,VK取vk=VK_TEND ,VK_TEND是挂机键的虚拟代码,
BOOL RegisterHotKey(
HWND hWnd,
int id,
UINT fsModifiers,
UINT vk
);
注册成功的话,应用程序收到的是WM_HOTKEY消息;
取消注册热键使用
BOOL UnregisterHotKey(
HWND hWnd,
int id
);
具体的使用方式查msdn
88csdn 2010-12-22
  • 打赏
  • 举报
回复
正常的话,程序会收到WM_ACTIVATE(WA_INACTIVE)然后判断一下GetForegroundWindow()==GetDesktopWindow()看是不是回桌面了。
当然,如果本来你程序后面就是桌面的话,点了×之后也满足这个条件,看你需求,如果确实要抓按挂机键的话,再加上个这个按键的判断就可以了。

7,659

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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