我正在使用WinAPI和C ++编写Windows服务。其中一个选项是我需要在所有用户注销后将系统发送到睡眠状态。注销命令从UI启动(可以通知我的服务),问题是知道在系统进入睡眠状态之前所有用户帐户完全注销需要多长时间。
我首先想到从发出注销命令的那一刻起和进入睡眠模式之前引入一个人工延迟,但是在某些用户帐户配置了漫游配置文件的情况下,注销过程可能会远远超过我的延迟。
所以有任何建议如何知道所有用户帐户是否“确定”注销?
答案 0 :(得分:0)
更好的选择可能是定期(每3-5分钟)检查是否有任何交互式会话处于活动状态。如果不是 - 让系统进入睡眠状态。
每隔几分钟枚举交互式会话的服务的开销非常小,我认为开发某种形式的高级事件处理系统是不值得的。