繁体   English   中英

如何判断CTRL-ALT-DEL之后Win32 C ++应用程序是否失去焦点?

[英]How to tell if win32 c++ application lost focus after CTRL-ALT-DEL?

我已经用C++ (一个游戏)编写了一个win32 App ,我想知道该应用程序是否由于用户按下CTRL - ALT - DEL并启动task manager而失去了焦点。 我怎样才能做到这一点? 在检测到事件后,我想做的是最小化游戏窗口并暂停其处理(动画,音频等)。 但是,如果用户从CTRL - ALT - DEL菜单返回到游戏,则它应继续照常运行。 我以为可以检查CTRLALTDEL上的按键,但这似乎不起作用,只是对lost the focusWM_KILLFOCUS )做出反应不是我想要的。

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM