【发布时间】:2016-11-02 23:16:10
【问题描述】:
我正在开发一个 C 应用程序,它在没有任何 Windows 控件的情况下在后台运行。
我想将 Windows 置于系统空闲状态,就像启用了屏幕保护程序并且达到了 ScreenSaveTimeOut 值一样。
我可以通过使用带有 SPI_SETSCREENSAVERACTIVE 和 SPI_SETSCREENSAVETIMEOUT=1 参数的 SystemParametersInfo 在某种程度上模拟所需的行为。
很遗憾,这需要我使用屏幕保护程序。
是否有任何可用的 API 可用于将 Windows 直接置于空闲状态?
提前致谢。
【问题讨论】:
-
您不能真正手动将系统置于空闲状态,只有用户活动可以管理它。但是,您可以通过向前台窗口发送
WM_SYSCOMMAND(SC_SCREENSAVE) 消息来调用用户的屏幕保护程序。
标签: c windows winapi screensaver