Schlafen eines Computers über Batch-Datei in Windows 7

Ich möchte eine Batch-Datei erstellen, die meinen Computer nach einiger Zeit ruht.

Das Nächste, was ich gefunden habe, ist, es in den Standby-Modus zu versetzen, scheint aber anders zu funktionieren als die Sleep-Taste auf meiner Tastatur (längeres Booten, wacht beim Mausklick nicht auf). Irgendwelche Ideen? Wäre es einfacher in Python oder C#?

Die weniger als ideale Technik, die oben erwähnt wurde, ruft dies in der cmd-Eingabeaufforderung auf:

Rundll32.exe powrprof.dll,SetSuspendState
Author: Hennes, 2010-05-26

7 answers

Einfach Befehl

rundll32.exe powrprof.dll,SetSuspendState

Macht System Ruhezustand, aber wenn Sie dies schreiben:

rundll32.exe powrprof.dll,SetSuspendState 0,1,0

Und Deaktivieren Sie Ruhezustand mit dem Befehl:

powercfg -hibernate off

Jetzt schläft Ihr System ein und wacht bei Mausbewegung auf, wenn Sie ein Gerät dafür ausgewählt haben (scrollen Sie nach unten, um zu erfahren, wie).

Batch einen Timer:

timeout /t 1200
rundll32.exe powrprof.dll,SetSuspendState 0,1,0

Wo 1200 ist Sekunden, was bedeutet, dass batch nach 20 Minuten den Sleep-Befehl ausführt.

Optional können Sie das Abbrechen Countdown verhindern (wenn sie drücken eine beliebige Taste im Batch-Fenster):

timeout /t 1200 /nobreak
rundll32.exe powrprof.dll,SetSuspendState 0,1,0

Kleines HOWTO über das Aufwachen mit der Maus:

Gehen Sie zu: Start -> Systemsteuerung -> Maus.

alt-text

Klicken Sie im Fenster Eigenschaften der Maus auf die Registerkarte Hardware und wählen Sie Ihre Maus aus der Liste der Geräte aus. Normalerweise wird hier nur eine Maus aufgeführt, dies hängt jedoch von der Hardware ab, die Sie an Ihren Computer angeschlossen haben. Wenn Sie Ihre Maus aus der Liste ausgewählt haben, klicken Sie auf die Schaltfläche Properties.

alt-text

Klicken Sie nun im Fenster Properties für Ihre Maus auf die Schaltfläche Change Settings auf der Registerkarte General .

alt-text

Klicken Sie im folgenden Fenster auf die Registerkarte Energieverwaltung und aktivieren Sie die Option Lassen Sie dieses Gerät den Computer wecken . Klicken Sie auf die Schaltfläche OK in diesem Fenster und auf die Schaltfläche OK in den Fenstern Mouse Properties. ist noch offen. Ab sofort können Sie Windows 7 aus dem Ruhemodus aufwecken, indem Sie mit der Maus auf eine Maustaste klicken oder die Maus bewegen.

alt-text

 26
Author: Anotomix,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2011-10-28 05:05:40
shutdown /h

Wird den Computer in den Ruhezustand versetzen (jedoch nicht sicher über suspend).

 2
Author: Stacey Richards,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-05-26 10:46:08

Funktionierende Lösung!
Ich musste das Dienstprogramm PsShutdown verwenden, um ein ordnungsgemäßes Schlafen zu ermöglichen (das Hauptproblem ist, dass SetSuspendState keine Wecktimer zulässt, um den Computer aufzuwecken). Meine Batch-Datei in den Ruhezustand ist 1 einfache Zeile:

PsShutdown -d -t 2
 2
Author: P Pace,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-07-25 15:35:52

. NET zur Rettung. Diese Lösung versetzt den Computer in den Ruhezustand, ohne die PC-Konfiguration ändern zu müssen (Ruhezustand ausschalten). Führen Sie diesen Befehl im Batch aus:

powershell.exe -command "Add-Type -AssemblyName System.Windows.Forms; [System.Windows.Forms.Application]::SetSuspendState([System.Windows.Forms.PowerState]::Suspend, $false, $false)"

Sie können entweder ::Suspend für den Schlaf oder ::Hibernate (so wie die anderen Antworten funktionieren). Dokumentation für SetSuspendState.

Da der Namespace System.Windows.Forms standardmäßig nicht geladen ist (in Powershell ISE), müssen Sie zuerst die Assembly laden.

Ursprüngliche Antwort

 1
Author: Velda,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-03-21 07:27:58

Sie können SetSystemPowerState versuchen, um zu vermeiden, dass Hiberanate deaktiviert werden muss.

- Rundll32.exe-Datei kernel32.dll,SetSystemPowerState

Beachten Sie, dass das Hinzufügen 1,0 oder 1 0 oder sogar Rundll32.exe-Datei powrprof.dll,SetSuspendState 0 0 1 oder Rundll32.exe-Datei powrprof.dll,SetSuspendState 0,0,1, dass die Argumente (0,0,1) NICHTS bedeuten.

Die powrprof.dll, SetSuspendState analysiert keine Argumente im rundll32-Stil und ignoriert sie daher. Deshalb müssen Sie den Ruhezustand deaktivieren.

 0
Author: Rodney,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-09-27 21:47:35

Diese Frage wurde bereits beantwortet.

Powercfg-h aus & Start / min "" C:\WINDOWS\System32\rundll32.exe-Datei PowrProf.dll,SetSuspendState 0,1,0 & ping -n 3 127.0.0.1 > nul & powercfg -h on & exit

Siehe Folgendes:

Mit welchem Befehl können Sie Ihren Computer in den Ruhezustand versetzen (nicht in den Ruhezustand)?

 0
Author: Josh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-20 10:17:24

Erstellen Sie einfach eine Batch-Datei und fügen Sie die folgenden Zeilen ein:

7200 = 2 hours

@echo off
timeout /t 7200 /nobreak
powercfg -h off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
powercfg -h on
 0
Author: Chris Fischer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-03-02 20:57:22