Wie deaktiviere ich den Schlafmodus über CMD?

10

Kann der Ruhemodus nur mit der Eingabeaufforderung deaktiviert werden, wenn der Deckel eines Laptops geschlossen wird?

kb67
quelle
1
Ist dies aus Neugier nur eine rein theoretische Frage oder gibt es einen bestimmten Grund, warum Sie dies tun müssen? Ich frage, weil es andere Möglichkeiten gibt, dies zu erreichen, wenn dies der Fall ist.
Shinrai
Nun, ich muss es aus der Ferne tun und ich habe nur die Eingabeaufforderung des Laptops.
kb67
1
Könnte es nicht einfacher sein, den Benutzer des Laptops durch die Arbeit zu führen? Ich denke, der Kommentar von iglvzx ist richtig und es gibt keine Möglichkeit, die Deckelaktion ohne manuelle Registrierungsänderungen einfach zu ändern.
Shinrai
Nun, ich habe mich als falsch erwiesen, es gibt eine Möglichkeit, dies über powercfg zu tun, aber ich denke, es ist so kompliziert, dass es immer noch einfacher sein könnte, sie einfach durchzusprechen.
Shinrai

Antworten:

13

Der gesuchte Befehl lautet powercfg. Öffnen Sie eine Eingabeaufforderung und geben Sie einpowercfg –q >poweroptions.txt

Dadurch wird eine Textdatei (poweroptions.txt) mit allen GUIDs für die Energieeinstellungen erstellt. Öffnen Sie die Datei poweroptions.txt und suchen Sie die GUID für das aktuelle Energieschema. Dies sollte sich ganz oben in der Datei befinden und sieht folgendermaßen aus:

Power Scheme GUID: 381b4222-f694-41f0-9685-ff5bb260df2e (Balanced)

Kopieren Sie nur die GUID (in diesem Beispiel - 381b4222-f694-41f0-9685-ff5bb260df2e) und fügen Sie sie in eine neue leere Textdatei ein. Scrollen Sie dann durch und suchen Sie die Untergruppen-GUID für die Aktionen „Netzschalter und Deckel“. Kopieren Sie diese GUID und fügen Sie sie als separate Zeile in dieselbe neue Textdatei ein. Suchen Sie nun die Energieeinstellungs-GUID für „Lid Close Action“ und kopieren Sie diese und fügen Sie sie unter die beiden anderen ein. Bitte beachten Sie auch die 'Possible Setting Index'-Nummern für die Option, auf die Sie sie einstellen möchten (deaktiviert ist 000). Sie müssen den Befehl für jedes Stromversorgungsschema, Gleichstrom und Wechselstrom einmal ausführen, um beide Situationen abzudecken. Der Befehl sieht folgendermaßen aus:

Powercfg –SETACVALUEINDEX [put power scheme GUID here] [put subgroup GUID here] [put power setting GUID here] 000

Ich habe das getestet und mein Befehl sieht folgendermaßen aus:

powercfg -SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 4f971e89-eebd-4455-a8de-9e59040e7347 5ca83367-6e45-459f-a27b-476b1d01c936 000

Der zweite Befehl ist für den Fall, dass der Benutzer im Akkubetrieb ist und genau der gleiche ist, außer dass wir den Schalter verwenden –SETDCVALUEINDEX.

Hier finden Sie die offizielle Powercfg-Befehlszeilenoptionsseite von Microsoft als weitere Referenz.

Bewohner
quelle
Hallo David, ich bin froh zu sehen, dass Microsoft Leute hat, die auf solchen Websites Kontakt aufnehmen. Das ist ermutigend. Es ist jedoch nicht erforderlich, Ihre Beiträge auf einer Stack Exchange-Site zu signieren, und es wird tatsächlich davon abgeraten - dafür ist Ihr Benutzerausweis gedacht.
Shinrai
Shrinrai, Entschuldigung, ich besuche jeden Tag so viele verschiedene Foren, dass es schwierig ist, alle Funktionen klar zu halten. Ich werde mir mein Benutzerabzeichen ansehen.
Dwolters
1
powercfgscheint ein gutes Beispiel dafür zu sein, wie man kein Kommandozeilen-Tool schreibt: /
Martin von Wittich
7

Das Thema hier ist Wie deaktiviere ich den Schlafmodus über CMD?

Angenommen, Sie haben den Deckel Ihres Laptops so konfiguriert, dass er im geschlossenen Zustand nichts tut:

powercfg -x -standby-timeout-ac 0

(Irgendwie funktioniert der Schalter -x bei mir nicht, also habe ich ihn in / x geändert und er funktioniert. Der Rest der Schalter bleibt -standby-timeout-ac )

Wie auf der Technet-Seite von Microsoft "Powercfg-Befehlszeilenoptionen" ( https://technet.microsoft.com/en-us/library/cc748940(v=ws.10).aspx ) gezeigt, lautet der Befehl:

> Einstellungswert powercfg -x (der Wert, den Sie anzeigen, ist "Standby")

deshalb: > powercfg -x -standby-timeout-ac minuten (deaktivieren = 0 minuten)

HINWEIS: ac = an Strom angeschlossen / dc = arbeitet mit Batterie (wenn Sie also den Ruhemodus deaktivieren möchten, während Sie mit Batterie arbeiten, ersetzen Sie "ac" im Befehl durch "dc", damit es so aussieht powercfg -x -standby-timeout-dc 0)

Wikilon
quelle
1
Dies funktioniert unter Win 7 und Win 10, danke! Die einzige Voraussetzung - CMD als Administrator ausführen.
TPAKTOPA
1
Das Problem -xkönnte sein, dass es sich um einen vollständigen Strich handelt, nicht um das normale negative Symbol.
Joel Coehoorn
2

Basierend auf der vorherigen Antwort habe ich eine Batch-Datei geschrieben.

@echo off

for /f "tokens=4 delims= " %%i IN ('powercfg -q ^| find "Power Scheme GUID:"') do Set StrOne=%%i
for /f "tokens=3 delims= " %%i IN ('powercfg -q ^| find "(Power buttons and lid)"') do Set StrTwo=%%i 
for /f "tokens=4 delims= " %%i IN ('powercfg -q ^| find "(Lid close action)"') do Set StrThree=%%i 

powercfg -SETACVALUEINDEX %StrOne% %StrTwo% %StrThree% 000

Sie müssen %% i in% i ändern, wenn Sie versuchen, diese Befehle direkt an einer Eingabeaufforderung (außerhalb eines Stapels) auszuführen.

Jeremy
quelle
1

Basierend auf dem Skript von Jeremy und Jonas Herdick habe ich dieses Umschaltskript geschrieben, das unabhängig von der Lokalisierung ist (funktioniert also auch mit deutschen Fenstern) und mir hilft, die Aktion zum Schließen des Deckels zu deaktivieren und wiederherzustellen (wie auch immer), wenn ich meine Notebook zum Dock (wo der Deckel geschlossen werden muss). Und ja, vergessen Sie nicht, das aktuelle Powerscheme nach jeder Änderung, wie von KallePower erwähnt, erneut zu aktivieren

@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims=:(" %%i in ('powercfg /GETACTIVESCHEME') do set ACTIVESCHEME=%%i
for /f "tokens=2 delims=:(" %%i in ('powercfg -q %ACTIVESCHEME% SUB_BUTTONS LIDACTION ^| findstr "[0-9a-z]*-[0-9a-z]*-[0-9a-z]*-[0-9a-z]*-[0-9a-z]*"') do set FULLPATH=!FULLPATH! %%i
for /f "tokens=2 delims=:(" %%i in ('powercfg /q %FULLPATH% ^| findstr "[0-9]x[0-9]*"') do (
    set CURRENTSETTINGAC=!CURRENTSETTINGDC!
    set CURRENTSETTINGDC=%%i
)
set CURRENTSETTINGAC=%CURRENTSETTINGAC:~-1%
set CURRENTSETTINGDC=%CURRENTSETTINGDC:~-1%
powercfg -SETACVALUEINDEX %FULLPATH% 0
powercfg -SETDCVALUEINDEX %FULLPATH% 0
powercfg /s %ACTIVESCHEME%
pause
powercfg -SETACVALUEINDEX %FULLPATH% %CURRENTSETTINGAC%
powercfg -SETDCVALUEINDEX %FULLPATH% %CURRENTSETTINGDC%
powercfg /s %ACTIVESCHEME%
sc911
quelle
1
REM Disabling all Sleep Parameters

@echo off

powercfg /x -hibernate-timeout-ac 0

powercfg /x -hibernate-timeout-dc 0

powercfg /x -disk-timeout-ac 0

powercfg /x -disk-timeout-dc 0

powercfg /x -monitor-timeout-ac 0

powercfg /x -monitor-timeout-dc 0

Powercfg /x -standby-timeout-ac 0

powercfg /x -standby-timeout-dc 0

Pause
Mizuki
quelle
0

Microsoft hat eine lange Seite mit powercfgBefehlszeilenoptionen.

Sie werden wahrscheinlich den -xSchalter nachlesen. Ich habe jedoch nur die powercfgEinstellungen für den Ruhezustand geändert.


quelle
1
powercfghat keine Optionen zum Ändern der lid close action. Die Energieoptionen werden in der Registrierung unter gespeichert HKEY_CURRENT_USER\Control Panel\PowerCfg\GlobalPowerPolicy, es ist jedoch unklar, welche Werte in den Binärdaten zu welcher Einstellung passen.
iglvzx
Danke für die Rückmeldung. Ich war mir nicht sicher, aber ich bin froh, dass ich mit dem gleichen Ort wie David
0

Eine Sache noch. Denken Sie daran, am Ende des Skripts "powercfg -S% StrOne%" hinzuzufügen, um die Einstellungen zu aktivieren. Andernfalls werden die Einstellungen nur festgelegt, aber nicht gespeichert / aktiviert.

KallePower
quelle
0

Versuchen Sie NoDoz . Nach der Installation können Sie über nodozIhre cmd-Eingabeaufforderung (oder Ihr PowerShell-Terminal) ausführen , um zu verhindern, dass Ihr System unbegrenzt in den Ruhezustand wechselt. Sie können auch einen Timeout-Parameter übergeben -t 6h13m, damit das Programm nach einer beliebigen Zeit automatisch beendet wird.

Nick Spreitzer
quelle