加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何判断win32 c应用程序在CTRL-ALT-DEL之后是否失去焦点?

发布时间:2020-12-14 01:54:00 所属栏目:Windows 来源:网络整理
导读:我在C(游戏)中编写了一个win32应用程序,我希望能够知道应用程序是否由于用户按下CTRL-ALT-DEL并启动任务管理器而失去焦点.我怎样才能做到这一点?在检测到事件后我想要做的是最小化我的游戏窗口并暂停其处理(动画,音频等).但是,如果用户从CTRL-ALT-DEL菜单返
我在C(游戏)中编写了一个win32应用程序,我希望能够知道应用程序是否由于用户按下CTRL-ALT-DEL并启动任务管理器而失去焦点.我怎样才能做到这一点?在检测到事件后我想要做的是最小化我的游戏窗口并暂停其处理(动画,音频等).但是,如果用户从CTRL-ALT-DEL菜单返回到游戏,那么它应该像往常一样继续运行.我认为我可以检查CTRL,ALT和DEL上的按键,但这似乎不起作用,只是对丢失焦点(WM_KILLFOCUS)的反应不是我想要的.

解决方法

您可以使用 WTSRegisterSessionNotification(),当用户按下Ctrl Alt Del并切换到安全桌面时,您将收到WM_WTSSESSION_CHANGE消息.

请注意,你不能说它实际上是他切换到的安全桌面,这将是相当讨厌的安全漏洞.当他切换到另一个登录会话时,您也会收到通知.当然也是你想要停止游戏的情况.

就此而言,只要游戏窗口失去前景,游戏就应该自动暂停.当他们切换到他们的电子邮件阅读器时没有人喜欢被杀:)使用WM_ACTIVATEAPP message

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读