Как перевести компьютер в режим сна из командной строки / меню «Выполнить»?

425961
Lazer

Я знаю, что почти все в Windows, например, открытие любого приложения, можно выполнить из командной строки или из меню « Выполнить» .

Как я могу перевести компьютер в режим сна или выключить его ? Какая команда для этого?

137
Введите shutdown в командной строке и посмотрите, что работает на XP и выше, насколько я могу судить. user10547 14 лет назад 0
Связанный: http://superuser.com/questions/39584/what-is-the-command-to-use-to-put-your-computer-to-sleep-not-hibernate Nayuki 7 лет назад 0

12 ответов на вопрос

128
brandstaetter

Вы найдете, shutdown.exeчтобы быть вашим другом.

Другие удобные команды смотрите в этом посте:

Спящий компьютер (подробнее на https://superuser.com/a/463652/249349 )

Блокировка рабочей станции

Спящий компьютер

see answers by Scott Chamberlain and Eric L 

Перезапустить компьютер

Shutdown.exe -r -t 00 

Выключить компьютер

Shutdown.exe -s -t 00 

EDIT / UPDATE:

Кажется, что спать компьютер является проблематичным, если спящий режим включен.

Копирование из других ответов:

Вы можете попробовать PsShutdown или:

Команда rundll32.exe powrprof.dll, SetSuspendState 0,1,0 для спящего режима верна - однако она будет переходить в спящий режим вместо спящего, если вы не выключите спящий режим.

Вот как это сделать:

Перейдите в меню «Пуск» и откройте командную строку с повышенными правами, введя cmd.exe, щелкнув правой кнопкой мыши и выбрав «Запуск от имени администратора». Введите следующую команду:

powercfg -hibernate off 
Если у вас есть разрешения, вы можете использовать shutdown.exe, чтобы инициировать удаленное отключение другого компьютера в вашей сети. Может быть хорош для шуток. (Ответственность не принимается) Matthew Lock 14 лет назад 2
Проголосовал, потому что это на самом деле не отвечает на вопрос (как вызвать сон). Shutdown.exe НЕ вызывает сон, только выключение, перезагрузку или спящий режим. Чтобы спать, нужно запустить: rundll32.exe powrprof.dll, SetSuspendState 0,1,0 Nicholas Head 13 лет назад 3
Если вы прочтете связанную страницу, вы найдете все перечисленные необходимые команды с пояснениями. Необоснованные отрицательные голоса FTW! :П brandstaetter 13 лет назад 1
The downvotes are not in the least unwarranted. Your answer does not address the question on its own. Readers should be able to gather enough useful information from an answer to solve the problem *without* having to follow any links to other sites which may become broken or dead. Iszi 12 лет назад 4
@Изи, хорошо, я добавил информацию, счастлив? : D brandstaetter 12 лет назад 0
Проблема с `rundll32.exe powrprof.dll, SetSuspendState 0,1,0` заключается в том, что он НЕ работает должным образом. SetSuspendState переведет компьютер в гибридный режим сна / гибернации. Когда вы используете кнопку «Режим сна» в меню «Пуск», вы можете вывести компьютер из режима сна, нажав любую клавишу на клавиатуре. Используя эту командную строку, утилита make возобновляется гораздо медленнее из-за более глубокого состояния сна, и она может возобновиться только при нажатии кнопки питания на компьютере. Он не может возобновиться после нажатия клавиши. Итак ... как заставить его спать, как в обычном режиме ожидания, - возобновить нажатием клавиши? Corporate Geek 14 лет назад 19
Отказался в голосовании за то, что не ответил на заданный вопрос: даже на связанной странице описанный способ перевода машины в спящий режим не будет работать, если включен режим гибернации. akurtser 12 лет назад 4
... Ненавистники будут ненавидеть, кажется. Пожалуйста, предоставьте лучшее решение, akurtser. brandstaetter 12 лет назад 0
Я также проверил команду Sleep и могу также подтвердить, что она не работает так, как задумано. Это не имеет ничего общего с ненавистью / троллингом, но если эта команда не работает, то вопрос остается без ответа, так как это была основная часть вопроса. reSPAWNed 12 лет назад 4
rundll32.exe powrprof.dll, SetSuspendState 0,1,0 переводит мой Win8 в режим гибернации (приостановка на диск). Он не превращает его в Suspend-to-RAM (называемый Sleep или Standby, в зависимости от версии Windows) и не переводит его в гибридный режим сна (suspend-to-RAM, в то же время сохраняя состояние на диск), как параметр Sleep. в меню выключения. Таким образом, ответчик (которого в настоящее время нет) должен быть обновлен. David Balažic 10 лет назад 1
`rundll32` не должен использоваться для вызова` SetSuspendState`, поскольку его подпись не совпадает с той, которую ожидает `rundll32`. См. Https://support.microsoft.com/en-us/kb/164787 и https://msdn.microsoft.com/en-us/library/windows/desktop/aa373201(v=vs.85).aspx Первый параметр получает мусор вместо значения FALSE. Это причина, почему он зимует вместо того, чтобы идти спать. SergeyT 7 лет назад 5
«PsShutdown» - золотой самородок. Хотя не проверял это Dheeraj Bhaskar 6 лет назад 0
ПРЕКРАТИТЕ СОДЕЙСТВИЕ ЗНАНИЮ CARGO CULT! Прекратите злоупотреблять Rundll32, если вы не знаете, как он работает, прекратите создавать абсурдные обходные пути, прекратите настраивать потенциальные сбои системы. Используйте подходящий инструмент, такой как DllCall (из AutoHotkey), который на самом деле работает так, как вы считаете, Rundll32 работает. SilverbackNet 6 лет назад 0
@SilverbackNet, пожалуйста, предоставьте свой ответ вместо ненависти в комментариях brandstaetter 6 лет назад 1
Достаточно правильные правильные ответы уже были опубликованы Скоттом Чемберленом и Эриком Л., даже если вы украли Скотта, чтобы поддержать свой ПОЛНОСТЬЮ НЕПРАВИЛЬНЫЙ ОТВЕТ. По крайней мере, удалите ту часть, которая так неправильна, она горит, если вы собираетесь что-то исправить. SilverbackNet 6 лет назад 0
78
Scott Chamberlain

Методы, опубликованные другими людьми, не будут работать правильно, если на компьютере включен режим гибернации, компьютер не будет активирован на клавиатуре или, что более важно, не активируется на запланированном задании.

Одним из инструментов Sysinternals Microsoft является PsShutdown с помощью команды psshutdown -d -t 0он будет правильно спать, не спящий режим, компьютер

Требуется повышение прав до администратора dsmtoday 7 лет назад 0
Не работает под Windows 10. Операция не поддерживается. Побежал как админ. T3rm1 7 лет назад 0
У меня работает в Windows 10 x64, сборка 1709. Hans Løken 6 лет назад 2
У меня работает в Win10x64 версии 1709, запустите cmd с учетной записью администратора, но без опции «запуск от имени администратора». Viktor Carlson 6 лет назад 1
У меня работает с Windows 10 (даже не с правами администратора). DAB 5 лет назад 2
@ T3rm1 [Работает в Windows 10] (https://docs.microsoft.com/en-us/sysinternals/downloads/psshutdown), но [требует установки PsTools] (https://download.sysinternals.com /files/PSTools.zip). Boaz 5 лет назад 0
Работает в Windows 10 x64 Build 15063. Нужно [скачать PsTools] (http://technet.microsoft.com/en-us/sysinternals/bb897541) и скопировать `psshutdown.exe` из архива, например, в` C: \ Windows \ System32`, чтобы можно было использовать команду без pathprefix. Затем необходимо выполнить `psshutdown -d -t 0` с правами администратора для приостановки. ** Это должен быть принятый ответ **, потому что он отвечает на вопрос, даже если не с предустановленными средствами Windows. Arch Linux Tux 5 лет назад 1
19
3498DB

rundll32.exe powrprof.dll,SetSuspendState 0,1,0Правильная команда для сна верна - однако она будет переходить в спящий режим вместо сна, если вы не выключите спящий режим.

Вот как это сделать:

Перейдите в меню «Пуск» и откройте командную строку с повышенными cmd.exeправами. Для этого введите правой кнопкой мыши и выберите « Запуск от имени администратора» . Введите следующую команду:

powercfg -hibernate off 
Я думаю, что это первый ответ, который действительно решает это. Я поместил эти две строки (-hibernate off first) и создал командный файл, который переводит компьютер в спящий режим. Одна из проблем заключается в том, что он по существу отключает спящий режим, а это не то, что я хотел, поэтому, чтобы исправить это, я добавил запланированное задание, запускаемое при «разблокировке рабочей станции», чтобы снова включить спящий режим с помощью пакета, единственной строкой которого является « powercfg -hibernate off ". Затем я настроил короткий ключ для первого командного файла. Готово. Работает как шарм, спасибо! akurtser 12 лет назад 4
Это так странно. Спящий режим должен быть отключен, прежде чем вы сможете нормально спать? Есть ли название для гибридного состояния сна / ожидания `powrprof.dll`, когда включен режим гибернации? Просто хочу знать. Это относится к любому из состояний ACPI? Ehtesh Choudhury 11 лет назад 0
`rundll32` не должен использоваться для вызова` SetSuspendState`, поскольку его подпись не совпадает с той, которую ожидает `rundll32`. См. Https://support.microsoft.com/en-us/kb/164787 и https://msdn.microsoft.com/en-us/library/windows/desktop/aa373201(v=vs.85).aspx Первый параметр получает мусор вместо FALSE. Это причина, почему он зимует вместо того, чтобы идти спать. SergeyT 7 лет назад 3
Не работает под Windows 10 T3rm1 7 лет назад 0
@EhteshChoudhury, проблема в этом случае состоит в том, что параметры Rundll32 являются неправильными и полностью неподходящими, так что они фактически вызывают SetSuspendState с параметрами: Hibernate: TRUE, ForceCritical: TRUE, DisableWakeEvents: TRUE. Последний бит объясняет, почему вы не можете разбудить ПК ни с чем, кроме кнопки питания. Это всего лишь совпадение, что попытка перехода в спящий режим при отключении приведет к тому, что ваш компьютер перейдет в спящий режим в Win7, и, вероятно, почему он не работает для некоторых людей. SilverbackNet 6 лет назад 0
8
Eric L

NirCmd работает в Windows 8 (я полагаю, что это также работает и в Windows 7) → http://www.nirsoft.net/utils/nircmd.html
Команда есть standby, но она переводит компьютер в спящий режим.

nircmd.exe standby

Если у вас включен гибридный сон, он будет работать; т.е. он переводит компьютер в спящий режим и копирует память на диск в случае потери питания.

Это работает без необходимости повышения до администратора. Работает с или без Hibernate включен. Работает, как и ожидалось, с гибридным сном. Хорошее решение для Win10. dsmtoday 7 лет назад 0
3
harrymc

Посмотрите бесплатную утилиту Wizmo, которая может делать очень много вещей.
Вероятно, вы ищете команду:

Wizmo Standby

Wizmo имеет ту же проблему, что и `rundll32.exe powrprof.dll, SetSuspendState 0,1,0` - он переводит компьютер в спящий режим, а не в спящий Andomar 11 лет назад 1
Нет, поскольку Vista фактически переводит компьютер в [Hybrid Sleep] (http://www.mydigitallife.info/what-is-hybrid-sleep-and-differences-with-basic-sleep-mode-in-vista/) , Если вы не хотите этого, то [Отключить гибридный сон] (http://maximumpcguides.com/windows-7/turn-off-hybrid-sleep-in-windows-7/). harrymc 11 лет назад 2
Wizmo затемнение работало в Windows 8.1, 10. БОЛЬШОЙ !!!!!!!!!!!!! YumYumYum 7 лет назад 1
Wizmo отлично работает. К сожалению, мой корпоративный антивирусный сканер удаляет его, так как он содержит некоторые последовательности, из-за которых mcafee считает, что он [содержит троян] (https://www.virustotal.com/en/file/7b0b47f936d24686de461bea05a9480179035a5b2b23a74167a7728e95922d5d/analis/). bastian 6 лет назад 0
@bastian: Mcafee всегда был плохой новостью для автора приложений (из личного опыта). harrymc 6 лет назад 0
3
Damn Vegetables

Я создал ярлык для rundll32.exe powrprof.dll,SetSuspendState 0,1,0(также пробовал с 0,0,0), но запуск ярлыка, похоже, перевел мой компьютер в спящий режим. Я не мог разбудить ПК с помощью клавиатуры; Пришлось нажимать кнопку включения, а на ПК показывались сообщения системной платы и т. Д.

Прочитав документ Windows API, я создал очень простую программу, набрав всего 3 строки. Я загрузил исполняемый файл, скомпилированный на эту страницу (нажмите «SleepTest.exe»), но через некоторое время этот файл может быть удален (это бесплатный сайт для размещения файлов, который я только что нашел в результате быстрого поиска в Google).

Если вы не доверяете мне (что вполне нормально) или файл был удален, вы, конечно, можете скомпилировать код самостоятельно. Вам необходимо добавить «PowrProf.lib» к дополнительным зависимостям компоновщика.

#include "stdafx.h" #include "windows.h" <-- Added this to make it work on Windows. #include "PowrProf.h" <-- Added this to use the sleep function.  int main() { SetSuspendState(FALSE, FALSE, FALSE); <-- Added this actual call. return 0; } 

rundll32.exe powrprof.dll,SetSuspendState 0,1,0кажется, делает то же самое, но каким-то образом вышеприведенная программа не переводит компьютер в спящий режим. Я мог мгновенно разбудить компьютер (без сообщений на материнской плате и т. Д.), Нажав любую клавишу на клавиатуре.

2
BlueDevil

Вы можете запустить параметры приостановки или спящего режима из командной строки, как указано ниже и упоминается в этой статье .

%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState 

Если на вашем компьютере разрешен режим гибернации, то приведенная выше команда инициирует режим гибернации. Если функция гибернации отключена, то она перейдет в режим ожидания. Как другие пользователи ответили ранее, shutdown.exe /?предоставит много вариантов выключения.

`rundll32` не должен использоваться для вызова` SetSuspendState`, потому что его подпись не совпадает с той, которую ожидает `rundll32`. См. Https://support.microsoft.com/en-us/kb/164787 и https://msdn.microsoft.com/en-us/library/windows/desktop/aa373201(v=vs.85).aspx Первый параметр получает мусор вместо FALSE, поэтому он всегда спит, а не засыпает. SergeyT 7 лет назад 1
1
Mohsen Abasi

Сначала необходимо отключить Hibernate в Windows, а затем перевести компьютер в состояние сна . Используйте следующие две команды:

powercfg -hibernate off rundll32.exe powrprof.dll,SetSuspendState 0,1,0 

и для выполнения обратного действия, гибернации компьютера, используйте команды ниже:

powercfg -hibernate on rundll32.exe powrprof.dll,SetSuspendState Hibernate 
`rundll32` не предназначен для вызова` SetSuspendState` и не должен использоваться для этого. Первый параметр получает мусор вместо правильного значения. Поэтому он всегда спит, а не засыпает (если вы вообще не отключили спящий режим). SergeyT 7 лет назад 3
@SergeyT Кажется, он работает для меня (после отключения гибернации); ты хочешь сказать, что это повредит окна? moondra 6 лет назад 0
Он повреждает стек (поскольку rundll32 ожидает другую сигнатуру вызова, поэтому он выталкивает из стека вещи, которые на самом деле не были помещены туда). Это приводит к неожиданному поведению. imoatama 6 лет назад 0
@imoatama хорошая находка ... masterxilo 5 лет назад 0
1
wonton

Вот статья об использовании CLI для выключения.

Microsoft предоставляет PsTools, который дает вам отключение CLI вместе с другими полезными инструментами. Вы можете получить это здесь .

1
T.Todua

only QUICK SLEEPER works for me (works in Windows 7,8,10).

p.s. source code available here.

Есть ли шанс, что вы сможете указать ссылку на сайт, с которого вы получили файл? Прямая ссылка на загружаемый файл, особенно при использовании сокращающего URL-адреса, может сделать файл особенно подозрительным, поскольку он часто используется разработчиками вредоносных программ. Mokubai 8 лет назад 1
Хорошо, я обновил ссылку на официальный сайт. T.Todua 8 лет назад 0