Как запустить режим ожидания / сна из командной строки?
Я нашел много информации о том, как выключить компьютер, перевести его в режим гибернации и т. Д. Через командную строку, однако все советы, которые я читал о том, как перевести компьютер в спящий режим, как это происходит из меню "Пуск", до сих пор не работали должным образом.,
Я хотел бы команду, которая переводит компьютер в легкий режим ожидания, когда нажатие клавиши заставит компьютер снова проснуться, а не в спящем режиме. Кто-нибудь знает об этом?
AFAIK, rundll32.exe powrprof.dll, SetSuspendState 0,1,0 НЕ переводит компьютер в спящий / ждущий режим во всех случаях и поэтому не подходит для моего использования...
Спасибо арахо
3 ответа
Благодаря @minitech я наконец-то заработал. Оставляя это здесь для всех, кто хочет знать ответ, и приводя два примера, один в прямой командной строке и один в Visual C#:
Добавьте повышенные привилегии в свое приложение:
- Другими словами, в командной строке запустите его с правами администратора.
- В Visual C#, который я использую, добавьте файл манифеста в проект и отредактируйте элемент "requiredExecutionLevel" следующим образом:
Затем выполните следующие команды:
В командной строке:
"powercfg -hibernate off" - отключает возможность режима гибернации.
rundll32.exe powrprof.dll, SetSuspendState 0,1,0 - Это заставляет компьютер спать.
powercfg -hibernate on - позволяет снова активировать режим гибернации.
В Visual C# используйте следующий код:
System.Diagnostics.Process.Start ("powercfg", "-hibernate off"); // Отключаем настройку режима гибернации.
System.Diagnostics.Process.Start ("rundll32.exe", "powrprof.dll, SetSuspendState 0,1,0"); // Отправляем компьютер в спящий режим
System.Diagnostics.Process.Start("powercfg", "-hibernate on"); // Включаем режим гибернации после пробуждения компьютера.
Очень важно не забыть добавить привилегии Администратора, иначе это сделает компьютер в спящем режиме, что займет вечность.
Araho
STANDBY (SLEEP) с CMD (командная строка или.bat), не работает в Windows 10.
Используйте БЫСТРЫЙ СОН.
Испытанный и протестированный NirCMd (полезный для многих вещей) имеет как режим ожидания (сна), так и команду гибернации: https://nircmd.nirsoft.net/standby.html Скорее всего, некоторые из вышеперечисленных действий будут выполнены за вас.
Использование
^!Numpad9::DllCall("PowrProf\SetSuspendState", "int", 0, "int", 0, "int", 0)
^!Numpad8::DllCall("PowrProf\SetSuspendState", "int", 1, "int", 0, "int", 0)
в AutoHotkey. Затем вам нужно будет нажать Ctrl+Alt+Numpad9. Ctrl+Alt+Numpad8 - для перевода его в режим гибернации.