題 如何從命令提示符/運行菜單中讓計算機進入休眠狀態?


我知道Windows上的幾乎所有東西,比如打開任何類型的應用程序,都可以通過 命令提示符 或來自  菜單。

我怎麼能把我的電腦 睡覺 要么 關掉它命令是什麼?


135
2017-09-16 14:15


起源


在命令提示符下鍵入shutdown,然後從我所知道的內容中查看XP及以上版本的輸出。 - user10547
有關: superuser.com/questions/39584/... - Nayuki


答案:


你會找到 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

編輯/ UPDATE:

如果打開休眠狀態,打電腦似乎有問題。

從其他答案複製:

你可以試試 PsShutdown 要么:

命令rundll32.exe powrprof.dll,SetSuspendState 0,1,0 for sleep   是正確的 - 然而,如果你不這樣做,它會休眠而不是睡眠   關閉休眠狀態。

以下是如何做到這一點:

轉到“開始”菜單,然後鍵入以打開提升的命令提示符   cmd.exe,右鍵單擊並選擇以管理員身份運行。輸入   以下命令:

powercfg -hibernate off

127
2017-09-16 14:21



問題 rundll32.exe powrprof.dll,SetSuspendState 0,1,0 是因為它不能正常工作。 SetSuspendState 將計算機置於混合睡眠/休眠模式。當您使用開始菜單中的“睡眠”按鈕時,可以通過按鍵盤上的任意鍵從睡眠狀態恢復計算機。使用此命令行,由於更深的睡眠狀態,make恢復得更慢,只有按下計算機上的電源按鈕才能恢復。按鍵無法恢復。那麼......你如何讓它像正常待機一樣睡覺 - 按一下鍵可以恢復? - Corporate Geek
這些挫折並非毫無根據。你的答案本身並沒有解決這個問題。讀者應該能夠從答案中收集足夠有用的信息來解決問題 無 必須遵循任何可能破損或死亡的其他網站的鏈接。 - Iszi
因為沒有回答問題而被低估:即使在鏈接頁面中,當啟用休眠時,用於使機器進入睡眠狀態的描述的方法也不起作用。 - akurtser
我也測試了Sleep命令,並且還可以確認它不能按預期工作。它與仇恨/拖釣無關,但如果該命令不起作用,則該問題無法回答,因為這是問題的主要部分。 - reSPAWNed
rundll32 不應該用來打電話 SetSuspendState 因為它的簽名與預期的簽名不符 rundll32。看到: support.microsoft.com/en-us/kb/164787 和 msdn.microsoft.com/en-us/library/windows/desktop/... 第一個參數獲取垃圾而不是FALSE值。這就是為什麼它要冬眠而不是睡覺的原因。 - SergeyT


如果計算機啟用了休眠模式,計算機將無法在鍵盤上喚醒,或者更重要的是,未在計劃任務中喚醒,則其他人發布的方法無法正常工作。

微軟的Sysinternals工具之一是 PsShutdown 使用命令 psshutdown -d -t 0 它會正確地睡覺, 沒有冬眠, 一台電腦


78
2018-02-29 20:57



需要提升到管理員 - dsmtoday
適用於Windows 10 x64,Build 1709。 - Hans Løken
在Win10x64版本1709中適用於我,使用管理員用戶帳戶運行cmd但沒有 run as administrator 右鍵單擊選項 - Viktor Carlson
適用於Windows 10(甚至不是管理員)。 - DAB
適用於Windows 10 x64 Build 15063.需要 下載PsTools 並複制 psshutdown.exe 從檔案館到例如 C:\Windows\System32 為了能夠使用沒有pathprefix的命令。然後需要執行 psshutdown -d -t 0 具有管理員權限以暫停。 這應該是公認的答案,因為它回答了這個問題,即使沒有使用Windows預裝的工具。 - Arch Linux Tux


命令 rundll32.exe powrprof.dll,SetSuspendState 0,1,0 睡眠是正確的 - 但是,如果你不關閉休眠狀態,它會休眠而不是睡眠。

以下是如何做到這一點:

轉到“開始”菜單,然後鍵入以打開提升的命令提示符 cmd.exe,右鍵單擊並選擇 以管理員身份運行。鍵入以下命令:

powercfg -hibernate off

19
2018-04-28 05:28



我認為這是第一個真正解決它的答案。我把這兩行(首先是-hibernate)放在一起,然後製作了一個批量文件讓pc進入睡眠狀態。一個問題是它基本上關閉了休眠,這不是我想要的,所以為了修復它,我添加了一個在“工作站解鎖”上觸發的計劃任務,以便用一個批次來重新打開休眠,其中只有一行是“ powercfg -hibernate off“。然後我為第一個批處理文件配置了一個快捷鍵。完成。像魅力一樣,謝謝! - akurtser
那太奇怪了。在睡眠正常之前需要關閉休眠狀態嗎?是否有混合睡眠/暫停狀態的名稱 powrprof.dll 是什麼時候打開休眠?只是想知道。它與任何ACPI狀態有關嗎? - Ehtesh Choudhury
rundll32 不應該用來打電話 SetSuspendState 因為它的簽名與預期的簽名不符 rundll32。看到: support.microsoft.com/en-us/kb/164787 和 msdn.microsoft.com/en-us/library/windows/desktop/... 第一個參數變為垃圾而不是FALSE。這就是為什麼它要冬眠而不是睡覺的原因。 - SergeyT
在Windows 10下不起作用 - T3rm1
@EhteshChoudhury,這種情況下的問題是Rundll32參數不正確且完全不適合,因此它們實際上使用以下參數調用SetSuspendState:Hibernate:TRUE,ForceCritical:TRUE,DisableWakeEvents:TRUE。最後一點解釋了為什麼除了電源按鈕之外你不能用電腦喚醒PC。只有巧合的是,當它被禁用時試圖休眠將使你的PC在Win7中睡覺,並且可能為什麼它對某些人不起作用。 - SilverbackNet


NirCmd適用於Windows 8(我認為它也適用於Windows 7)→ http://www.nirsoft.net/utils/nircmd.html
命令是 standby,但它讓電腦入睡。

nircmd.exe standby

如果啟用了混合睡眠,它將起作用;即,它使計算機進入睡眠狀態,並在斷電時將存儲器複製到磁盤。


7
2018-04-06 18:11



無需升級到管理員即可運行。無論是否啟用休眠,均可使用。通過混合睡眠預期工作。 Win10的不錯解決方案。 - dsmtoday


查看免費實用程序 Wizmo,這可以做很多事情。
您正在尋找的命令可能是:

Wizmo待機


3
2017-09-16 19:33



Wizmo有同樣的問題 rundll32.exe powrprof.dll,SetSuspendState 0,1,0  - 它使計算機處於休眠狀態,而不是睡眠狀態 - Andomar
不,因為它實際上把計算機放入了 混合睡眠。如果你不想要這個,那麼 關閉混合睡眠。 - harrymc
wizmo blackout在Windows 8.1,10中工作。很棒!!!!!!!!!!!!! - YumYumYum
Wizmo很棒。不幸的是,我的企業病毒掃描程序刪除它,因為它包含一些使mcafee認為它的序列 包含一個木馬。 - bastian
@bastian:Mcafee對於應用程序編寫者來說總是壞消息(來自個人經歷)。 - harrymc


我已經創建了一個快捷方式 rundll32.exe powrprof.dll,SetSuspendState 0,1,0 (也試過0,0,0),但運行快捷方式似乎讓我的電腦進入休眠狀態。我無法用鍵盤喚醒電腦;我不得不按電源按鈕,電腦顯示主板發布消息等。

看完之後 Windows API文檔,我創建了一個非常簡單的程序,只有3行輸入。我已經上傳了我編譯的可執行文件 此頁面(單擊“SleepTest.exe”),但這個文件可能會在一段時間後被刪除(這是一個免費的文件託管網站,我剛剛通過快速谷歌搜索找到)。

如果您不信任我(完全沒問題)或文件已被刪除,您可以自己編譯代碼,當然。您需要將“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 似乎在做同樣的事情,但不知何故,上面的程序沒有讓計算機進入休眠狀態。我可以通過按鍵盤上的任意鍵立即喚醒PC(沒有主板發布消息等)。


3
2018-01-29 14:55





您可以從命令行啟動掛起或休眠選項,如下所示並在中引用 本文

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

如果您的計算機設置為允許休眠,則上述命令將啟動休眠。如果禁用休眠功能,則它將進入待機狀態。正如其他用戶之前的回答, shutdown.exe /? 將提供許多關閉選項。


2
2017-09-17 05:10



rundll32 不應該用來打電話 SetSuspendState 因為它的簽名與預期的簽名不符 rundll32。看到: support.microsoft.com/en-us/kb/164787 和 msdn.microsoft.com/en-us/library/windows/desktop/... 第一個參數變為垃圾而不是FALSE,所以它總是休眠而不是睡覺。 - SergeyT