Какая команда PowerShell эквивалентна выбору "Sleep" из меню Win7?
Какие команды PS я использую, чтобы перевести мой сон в режим сна, как в описании, когда наведу указатель мыши на пункт меню "Спящий режим" в меню Windows:
Keeps your session in memory and puts the computer in
a low-power state so that you can quickly resume
working.
Эти потоки SE SuperUser имеют некоторые идеи о похожих решениях:
Какую команду использовать, чтобы перевести компьютер в спящий режим (не в спящий режим)?
Как написать в Windows 7 команду "сна"
... но очевидно, что rundll32.exe повреждает стек, и эти решения находятся в спящем режиме, а не "спят".
Когда в меню выбран "Sleep", я предполагаю, что не было вызвано никакой магии, которая не может быть воспроизведена с помощью простой команды или псевдонима для сценария?
=========================================
на пользователя @jnL (очень благодарен!) Теперь у меня есть следующее в моем профиле PS, и я могу вызвать "Sleep" с nap
:
C:\Users\ имя_пользователя \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);