以编程方式将PC置于睡眠模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以编程方式将PC置于睡眠模式相关的知识,希望对你有一定的参考价值。
一个老问题,可能(?)解决了较旧的Windows版本,但不适用于Windows 10!
旧讨论中提出的解决方案(...带有参数0,1,0(或睡眠)的SetSuspendState,有或没有先前的休眠关闭...)不适用于Windows 10系统;至少不是全部:启动模式主要是休眠,而不是睡眠。
我发现:在较旧的Windows版本中,注册表中有类似的内容:[HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows CurrentVersion Explorer CommandStore shell sleep command] @ =“rundll32.exe powrprof.dll,SetSuspendState睡觉“这显然是睡眠命令。至少在我的Windows 10 PC上没有这样的条目!
有人在这里有新的答案吗?
==================编辑:在我的OP之后我发现这不是Windows 10问题,它是Surface 3问题,与Surface上使用的电源选项有关3作为睡眠模式:
Surface 3使用的睡眠模式似乎是“Modern Standby”=“S0 Low Power Idle”=“Connected Network Standby”。 (不是通常的S3睡眠模式!!!)
使用SetSuspendState的命令似乎根本无法启动Surface 3上的睡眠模式。
我的问题的一个新措辞:我想要的是一个命令,它与Surface 3上的电源按钮相同,设置为“电源按钮操作=睡眠”,或者作为外部的睡眠按钮当Surface 3设置为“sleep-button action = Sleep”时(USB)键盘。
我在Programmatically enter Connected Standby in C#上找到了这个新的解决方案
在Surface 3上,我现在可以通过关闭显示器的命令激活睡眠模式(“现代待机”=“S0低功耗空闲”=“连接网络待机”)。在Autohotkey中,这只是一行:
SendMessage,0x112,0xF170,2,程序管理器
我可以在sleepstudy-report.html(由powercfg / sleepstudy创建)中看到,真正的“现代待命”就是这样进入的。
以上是关于以编程方式将PC置于睡眠模式的主要内容,如果未能解决你的问题,请参考以下文章