Ich möchte meinen Windows-PC (Windows 7) über die Befehlszeile in den Ruhezustand versetzen (damit ich mich an die Makrotaste auf der Tastatur binden kann).
Der Einschaltknopf am PC ist so eingestellt, dass der Computer nicht in den Ruhezustand wechselt (aber er liegt auf dem Boden und ich bin zu faul, um nach unten zu greifen).
Der Befehl sleep im Menü shutdown funktioniert ebenfalls.
die meisten Informationen, die ich gefunden habe, sagen zu verwenden;
%windir%\system32\rundll32.exe PowrProf.dll, SetSuspendState 0,1,0
Dadurch wird der Computer jedoch in den Ruhezustand versetzt. Ich habe den Winterschlaf deaktiviert, benutze aber den hybriden Schlaf.
Also, was ist der Befehl, um Ihren Computer in den Ruhezustand zu versetzen (nicht in den Ruhezustand)?
windows-7
windows
command-line
Eric L
quelle
quelle
rundll32.exe PowrProf.dll,SetSuspendState
ist nicht zu empfehlen. Es ist gefährlich. (Da es sich um den Stapel verdirbt, da es sich nicht mit der Funktion Signatur entsprechen gefordert durchRundll32
. Dann unvorhersehbar schlechte Dinge können passieren, wie Raymond Chen warnt ...)Antworten:
Ich habe eine Lösung gefunden. Ich habe ein Freeware-Programm namens AutoHotKey installiert und die Schritte zum Aufrufen von Start Menu -> Sleep in einer Skriptdatei aufgezeichnet. Dann habe ich die Skriptdatei in eine eigenständige ausführbare SleepWin7.exe umgewandelt.
Jetzt führe ich einfach SleepWin7.exe aus, um meinen Computer in den hybriden Ruhezustand zu versetzen.
Sie können AutoHotKey deinstallieren, wenn dies alles ist, wofür Sie es benötigen.
Update: Die obige Lösung funktioniert nicht, wenn der Benutzer nicht angemeldet ist, dh der Windows 7-Anmeldebildschirm. (Mein Computer wacht jeden Sonntag um 4 Uhr morgens auf, um eine wöchentliche Sicherung durchzuführen, die ohne Benutzeranmeldung durchgeführt wird.) In diesem Fall funktioniert das Wizmo- Programm weiterhin:
quelle
nircmd.exe standby
Weitere Informationen finden Sie hier -> nirsoft.net/utils/nircmd.htmlIch hoffe, Sie finden diese nützlich.
Ausschalten
%windir%\System32\shutdown.exe -s
Starten Sie neu
%windir%\System32\shutdown.exe -r
Ausloggen
%windir%\System32\shutdown.exe -l
Bereithalten
%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState StandbyÜberwintern
%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState HibernateAchtung: rundll32.exe sollte nicht zum Starten von powerprof.dll verwendet werden . Stattdessen sollten Sie SetSuspendState direkt aufrufen. Dies kann mit Powershell geschehen. Erstellen Sie eine Datei, z. B. sleep.ps1, mit dem folgenden Inhalt.
Führen Sie es dann mit
powershell -File C:\your-path\sleep.ps1
. Möglicherweise müssen Sie zuerst den BefehlSet-ExecutionPolicy RemoteSigned
ausführen, um die Ausführung von Powershell-Skripten zu ermöglichen.Das obige Skript führt zu einer Systemunterbrechung, die abhängig von Ihrer aktuellen Ruhezustandseinstellung entweder in den Ruhezustand oder in den Ruhezustand wechselt. Um diese Einstellung über die Befehlszeile zu ändern, führen Sie
powercfg -h off
(oderon
) als Administrator über die Befehlszeile aus.quelle
Sehen Sie sich das kostenlose Dienstprogramm von Wizmo an , das sehr viele Dinge kann.
Der gesuchte Befehl lautet wahrscheinlich:
quelle
wizmo.exe quiet standby
unterdrückt wohl störende Pieptöne durchwizmo.exe
.Sie können eine Datei mit der Erweiterung .ps1 (Powershell) wie "sleep.ps1" erstellen und Folgendes schreiben:
Ich benutze dies, wenn etwas läuft und ich den PC verlassen muss und ihn nicht ausschalten möchte. Also ändere ich das Skript so:
Und jetzt, wenn ich es starte, gebe ich einfach die Minuten ein, die ich warten möchte, bis ich eingeschlafen bin.
Sie können dies von der cmd-Zeile aus ausführen, indem Sie schreiben
Wenn Sie noch nie ein PowerShell-Skript ausgeführt haben, sollten Sie es zuerst ausführen
in PowerShell, um die Skriptausführung zu aktivieren. Dies muss nur einmal ausgeführt werden.
quelle
Mit Sysinternals PsTools [ herunterladen ]:
Verwenden Sie das Befehlszeilentool PsShutdown .
(Möglicherweise bevorzugen Sie diese Lösung, wenn Sie PsTools bereits heruntergeladen haben. Sie wird häufig verwendet. Ansonsten entspricht dieser Ansatz der Verwendung von .)
wizmo
quiet standby
Quelle: https://superuser.com/a/331545/21887
quelle
Ich benutze dieses SLEEP.EXE- Dienstprogramm seit Jahren. Es funktioniert gut und Sie müssen sich nicht merken, welche Argumente es für den Suspend-Modus gibt (die Standardform von "sleep").
quelle
Um den Ruhezustand zu deaktivieren, müssen Sie verwenden
Jetzt versetzt rundll32 powrprof.dll, SetSuspendState Ihre Station in den Standby-Modus
[BEARBEITEN]
Eigentlich kann ich keinen Hybrid-Schlafmodus einrichten, da ich einen Laptop besitze (ein Status, der auf Mobilstationen nicht verfügbar ist). Für den Hybrid-Schlafmodus muss der Ruhezustand aktiviert sein, und einige sagen, dass rundll32 powrprof.dll und SetSuspendState den Standard-Schlafmodus auslösen Modus in Ihrem Control-Panel \ Power-Management-Einstellungen. Bitte versuchen Sie, ob rundll32 powrprof.dll, SetSuspendState Hybrid Schlaf einige Ergebnisse geben.
quelle
Erstellen Sie eine Fledermausdatei, in der 600 Sekunden als Verzögerung angegeben sind.
ping -n 600 -w 1 127.0.0.1> nul
powercfg -h aus
% windir% \ System32 \ rundll32.exe powrprof.dll, SetSuspendState Standby
quelle
Wenn Sie mit dem Kompilieren eines .NET-Programms vertraut sind, führt der folgende Befehl dies aus
Hinweis: Sie müssen den Ruhezustand nicht deaktivieren, da dies für den
rundll32 powrprof.dll,SetSuspendState
Befehl erforderlich ist . Sie können auch verwenden,PowerState.Hibernate
welche die Maschine in den Ruhezustand versetzt, wenn Sie möchten.Mit diesem Befehl können Sie problemlos eine EXE-Datei mit jeder Version von Visual Studio kompilieren . Erstellen Sie einfach eine Konsolenanwendung und fügen Sie einen Verweis auf die
System.Windows.Forms
DLL hinzu.quelle
Visual Studio
zum Kompilieren verwenden. Stattdessen könnte der Befehlszeilencompilercsc.exe
verwendet werden. Es ist bereits in allen modernen Windows-Versionen installiert.