C++ 如何防止CreateProcess/ShellExecute重置Windows空闲计时器?

C++ 如何防止CreateProcess/ShellExecute重置Windows空闲计时器?,c++,windows,visual-studio,winapi,idle-timer,C++,Windows,Visual Studio,Winapi,Idle Timer,我需要从我的应用程序启动一个应用程序。我尝试使用CreateProcess和ShellExecute,但它们都重置了windows空闲计时器(用于监视器和系统睡眠)。有可能防止这种行为吗 感谢您的帮助。如果CreateProcess要重置Windows的空闲计时器,那似乎是不可信的。您是如何验证这一点的?从活动到空闲的转换并不像“空闲计时器”那么简单:首先尝试SleepStudy工具来检查到底发生了什么:@IInspectable:谢谢!您是对的,该问题与CreateProcess/ShellE

我需要从我的应用程序启动一个应用程序。我尝试使用
CreateProcess
ShellExecute
,但它们都重置了windows空闲计时器(用于监视器和系统睡眠)。有可能防止这种行为吗


感谢您的帮助。

如果
CreateProcess
要重置Windows的空闲计时器,那似乎是不可信的。您是如何验证这一点的?从活动到空闲的转换并不像“空闲计时器”那么简单:首先尝试SleepStudy工具来检查到底发生了什么:@IInspectable:谢谢!您是对的,该问题与CreateProcess/ShellExecute无关。似乎打开任何窗口应用程序都会重置空闲计时器。例如,如果我在For循环中延迟1分钟打开notepad.exe,监视器将永远不会关闭。@SimonMourier,谢谢!但是睡眠研究工具对系统电源事件很有用,但我更感兴趣的是监控断电事件。这听起来也很不可思议。超时值对应于用户交互。启动GUI进程不会重置
GetLastInputInfo
报告的最后一个输入时间戳。你得出的结论可能不准确。似乎还有别的事情在发生。