与从 Win7 菜单中选择“睡眠”等效的 PowerShell 命令是什么?

与从 Win7 菜单中选择“睡眠”等效的 PowerShell 命令是什么?

当我将鼠标悬停在 Windows 菜单“睡眠”选项上时,我使用什么 PS 命令可以使我的笔记本电脑进入睡眠状态,如描述所述:

Keeps your session in memory and puts the computer in
a low-power state so that you can quickly resume
working.

这些 SE 超级用户线程对类似的解决方案有一些想法:

使用什么命令可以使您的计算机进入睡眠状态(而不是休眠状态)?

如何编写 Windows 7“睡眠”命令脚本

...但显然 rundll32.exe 破坏了堆栈,这些解决方案处于休眠状态,而不是“睡眠”状态。

当从菜单中选择“睡眠”时,我假设没有调用任何无法通过简单命令或脚本别名复制的魔法?

=========================================

每位用户@jnL(非常感谢!)我现在在我的 PS 配置文件中具有以下内容,并且可以使用以下命令调用“睡眠” nap:C:\Users\user_name\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

function sleepy_time {
Add-Type -AssemblyName System.Windows.Forms
$PowerState = [System.Windows.Forms.PowerState]::Suspend;
$Force = $false;
$DisableWake = $false;
[System.Windows.Forms.Application]::SetSuspendState($PowerState, $Force, $DisableWake);
}

new-alias -name nap -value sleepy_time

答案1

和你的提供链接在评论部分...

创建 PS 脚本或直接在 PowerShell 中运行以下行:

# load assembly System.Windows.Forms which will be used
Add-Type -AssemblyName System.Windows.Forms

# set powerstate to suspend (sleep mode)
$PowerState = [System.Windows.Forms.PowerState]::Suspend;

# do not force putting Windows to sleep
$Force = $false;

# so you can wake up your computer from sleep
$DisableWake = $false;

# do it! Set computer to sleep
[System.Windows.Forms.Application]::SetSuspendState($PowerState, $Force, $DisableWake);

相关内容