求:Win7下应用程序如何阻止系统待机、休眠?(Win7下收不到WM_POWERBROADCAST的PBT_APMQUERYSUSPEND)
如题。高分求教~ Orz
[解决办法]
http://msdn.microsoft.com/en-us/library/aa373247%28VS.85%29.aspx
请仔细查看MSDN的说法,大概翻译过来的意思是:
Windows Server 2003, Windows XP, and Windows 2000可以返回BROADCAST_QUERY_DENY拒绝待机、休眠。
但是Vista和Win7只能接收。
WM_POWERBROADCAST消息不会在UAC控制下的程序中广播,要收到消息可以关闭UAC或者mainfest提权或者用SetThreadExecutionState改变线程状态。
[解决办法]
[b]WM_POWERBROADCAST消息不会在UAC控制下的程序中广播,要收到消息可以关闭UAC或者mainfest提权或者用SetThreadExecutionState改变线程状态。
Win7下应用程序可能做不到,驱动层可以做到[/b]