WinFuture-Forum.de: Ruhezustand oder Energiesparen - WinFuture-Forum.de

Zum Inhalt wechseln

Alle Informationen zum Thema Windows 7 in unserem Special. Windows 7 Download, FAQ und neue Funktionen im Überblick.
  • 2 Seiten +
  • 1
  • 2

Ruhezustand oder Energiesparen


#1 Mitglied ist offline   joe13 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.349
  • Beigetreten: 10. September 09
  • Reputation: 48

geschrieben 30. April 2019 - 22:23

Hallo,
man kann Windows in den Ruhezustand oder Energiesparen schicken. Energiesparen geht mit dem Startmenü, ist mir aber etwas zu umständlich. Mit Shutdown /h Ruhezustand geht Windows noch weiter herunter.

Gibt's einen Shutdown-ähnlichen Befehl auf der Kommandozeile fürs Energiesparen? Würde mir weiterhelfen.
0

Anzeige



#2 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.769
  • Beigetreten: 20. Juli 07
  • Reputation: 1.100
  • Geschlecht:Männlich
  • Wohnort:Jena

geschrieben 01. Mai 2019 - 01:09

Das geht mit Powershell (und mit .NET; nichts anderes macht PS). Kern ist jener Befehl:

[Windows.Forms.Application]::SetSuspendState([System.Windows.Forms.PowerState]::Suspend, $true, $true)



Dazu muß ggfs. zunächst WinForms referenziert werden (Add-Type -AssemblyName System.Windows.Forms).

Parameter 1 kann auch Hibernate sein (statt Suspend).
Parameter 2 (Force) sagt, ob der Zustandswechsel erzwungen werden soll oder nicht, und
Parameter 3 deaktiviert WakeTimer für den Prozeß. Der PC wacht dann nicht zeitgesteuert auf (wohl aber eventgesteuert).

In .NET (C#, VB.NET, ...) geht das Ganze auch, wenn man das will. Spart den Overhead für die Powershell, aber schlägt halt schon die Brücke zum Programmieren und man muß das kompilieren, bevor man seine EXE bekommt.


Meines Wissens gibt es allerdings keine "fertige" Lösung in Windows-Bordmitteln, aber kann natürlich sein, daß es da eine App für gibt.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#3 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 05:30

Beitrag anzeigenZitat (joe13: 30. April 2019 - 22:23)

Gibt's einen Shutdown-ähnlichen Befehl auf der Kommandozeile fürs Energiesparen? Würde mir weiterhelfen.

C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep

/hibernate on -> Ruhezustand
/hibernate off -> Energiesparen

Dieser Beitrag wurde von Candlebox bearbeitet: 01. Mai 2019 - 05:31

»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#4 Mitglied ist offline   joe13 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.349
  • Beigetreten: 10. September 09
  • Reputation: 48

geschrieben 01. Mai 2019 - 12:07

Schöne Hinweis, aber sowohl
C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep
als auch C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep /hibernate off
führen zum selben Zustand, und ich muß den Netzschalter drücken statt bloß einem Druck auf die Tastatur.
0

#5 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 12:48

Habe ich mich wohl unglücklich ausgedrückt.

Wenn Du den Ruhezustand mit powercfg -h on aktiviert hast, fährt der Befehl

Zitat

C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep

Den PC in den Ruhezustand.

Wenn Du den Ruhezustand mit powercfg -h off deaktiviert hast fährt der Befehl

Zitat

C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep

den PC in den Energiesparmodus.

Aktivieren/deaktivieren des Ruhezustands unter CMD mit Adminrechten.
Angehängtes Bild: sleep.jpg

Hier vielleicht besser erklärt.

Dieser Beitrag wurde von Candlebox bearbeitet: 01. Mai 2019 - 13:00

»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#6 Mitglied ist offline   joe13 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.349
  • Beigetreten: 10. September 09
  • Reputation: 48

geschrieben 01. Mai 2019 - 15:08

Sorry - auch die Befehlsfolge

powercfg -h off
C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState Sleep

fährt bei meinem Win7/64 ganz runter - vermutlich suspend to disk.

Dieser Beitrag wurde von joe13 bearbeitet: 01. Mai 2019 - 17:02

0

#7 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.011
  • Beigetreten: 19. August 04
  • Reputation: 1.197
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 01. Mai 2019 - 15:57

https://www.nirsoft....ils/nircmd.html

nircmd.exe standby

Dann kannst Du das System auch wieder mit Maus o. Tastatur aufwecken. Klappt bei mir jedenfalls.

Ansonsten musst Du Dir über die Powershell etwas zurecht basteln, so wie es Ralph schon vorgeschlagen hat, auch wenn es so nicht funktioniert. Das muss ich selber erst einmal testen.

Theoretisch müsste es aber auch mit rundll gehen:

C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState 0,1,0

Das sollte eigentlich Sleep aktivieren und WakeupEvents zulassen. Aber funktioniert bei mir so nicht. Kann sein, dass sich da in Windows 10 wieder was verändert hat.
Nutella hat nur sehr wenig Vitamine.
Deswegen muss man davon relativ viel essen.
0

#8 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 16:07

Es sind auch 2 unterschiedliche Befehle und nicht einer.

Ich habe den Ruhezustand per powercfg -h off permanent deaktiviert und lasse den PC einfach einschlafen, ersatzweise könnte ich gezeigte Verknüpfung nehmen und wecke per Maus bzw. Tastatur.

Naja, wahrscheinlich mache ich mal wieder nur was falsch, daß es bei mir funktioniert.
»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#9 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.011
  • Beigetreten: 19. August 04
  • Reputation: 1.197
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 01. Mai 2019 - 16:21

Der scheint da irgendwie die Werte nicht zu übernehmen.

Mit powercfg -h off geht er in Sleep, weil Hybernation nicht zur Verfügung steht. Was anderes unterstützt die Funktion ja nicht. Aber das ist ja so nicht wirklich Sinn der Sache.

Es müsste eigentlich mit 0,1,0 funktionieren, tut es aber nicht, weil er die Werte nicht übernimmt. SetSuspendState Sleep ist auch nutzlos, weil kennt die Funktion nicht. Die erwartet nur drei mal TRUE|FALSE (0|1).

---

In der Powershell funktioniert es:

Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::SetSuspendState(0,1,0)

Da übernimmt er die Werte korrekt und das System geht trotz powercfg -h on nur in den Sleep Modus. 1,1,0 würde Hybernation bewirken. über rundll32 funktioniert das irgendwie nicht mehr so.
Nutella hat nur sehr wenig Vitamine.
Deswegen muss man davon relativ viel essen.
0

#10 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 16:44

Beitrag anzeigenZitat (joe13: 30. April 2019 - 22:23)

Gibt's einen Shutdown-ähnlichen Befehl auf der Kommandozeile fürs Energiesparen? Würde mir weiterhelfen.


Für mich war das halt die Fragestellung hier für Windows 7 und ich nutzte das so schon immer und nutze das auch in Windows 10 noch so, bzw. könnte es so nutzen, wenn ich auf den Knopp da auf Sleep klickte, den ich schon ewig habe.

Aber eigentlich lauf ich einfach vom PC weg und der geht nach 5 Minuten wie von Geisterhand von selber aus, wenn er nix rechnet oder aufnimmt und wecke den mit Maus und oder Tastatur.

Also eigentlich alle PCs hier.

Weiß nicht, mein Handy lege ich auch einfach weg, und das geht dann halt nach einer Minute aus, das fahre ich nicht aktiv jedesmal runter. Wozu?


Ich sehe keinen Sinn darin, den PC "runterzufahren" damit er durch Schnellstart immer langsamer "da" sein wird, als mit Standby.
Gibts sowas bei Handys für Nachts? Oder bei TVs? Ruhemodus und bootet aber dann nach mit allen Apps in 10 Sekunden komplett durch?

Ich bin zu blöd für Powershell und komplizierte Scripte und .exe Dateien wenn ichs einfacher haben kann.
Wie gesagt, ich machs dann halt falsch, aber macht in dem Fall, wie ich es eben gerne hätte.

Dieser Beitrag wurde von Candlebox bearbeitet: 01. Mai 2019 - 16:48

»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#11 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.011
  • Beigetreten: 19. August 04
  • Reputation: 1.197
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 01. Mai 2019 - 16:48

Du machst nichts falsch.

powercfg -h off
rundll32.exe powrprof.dll,SetSuspendState

Das führt immer zum Sleep Modus, weil Hybernation nicht mehr zu Verfügung steht. Die Funktion nimmt dann das Einzige, was noch geht und das ist Sleep.
Nutella hat nur sehr wenig Vitamine.
Deswegen muss man davon relativ viel essen.
0

#12 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 17:05

Beitrag anzeigenZitat (DK2000: 01. Mai 2019 - 16:48)

Du machst nichts falsch.
powercfg -h off
rundll32.exe powrprof.dll,SetSuspendState

Das führt immer zum Sleep Modus, weil Hybernation nicht mehr zu Verfügung steht. Die Funktion nimmt dann das Einzige, was noch geht und das ist Sleep.

Ja, deswegen hab ich das ja auch so gemacht. :-)



Beitrag anzeigenZitat (DK2000: 01. Mai 2019 - 16:21)

---
In der Powershell funktioniert es:

Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::SetSuspendState(0,1,0)

Da übernimmt er die Werte korrekt und das System geht trotz powercfg -h on nur in den Sleep Modus. 1,1,0 würde Hybernation bewirken. über rundll32 funktioniert das irgendwie nicht mehr so.

Hab da jetzt mal kurz gegoogled, ich wäre dafür schon wieder zu blöde eine schnelle Verknüpfung zu basteln
»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#13 Mitglied ist offline   joe13 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.349
  • Beigetreten: 10. September 09
  • Reputation: 48

geschrieben 01. Mai 2019 - 17:20

Dann laß ich's halt bei SHUTDOWN /H oder klick halt auf dem Startmenü rum.

Danke für Eure Hilfe.
0

#14 Mitglied ist offline   Candlebox 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.736
  • Beigetreten: 08. Juli 04
  • Reputation: 303
  • Geschlecht:Männlich

geschrieben 01. Mai 2019 - 17:38

Nun, das soll dann verstehen wer will, warum man dem PC unbedingt noch einen letzten Befehl erteilen muß.

Eigentlich, so dachte ich, wissen die sowas von selber besser seit 2K/XP/Vista, wenn man da gar nix dran macht, weil sie evtl noch Updates fertig ziehen oder gar installieren, wenn sie merken, daß der PC gerade nicht benutzt wird, als wenn man Ihnen ständig befiehlt zu schlafen und auch noch den Strom wegnimmt.

Vielleicht habe ich deswegen so wenige Probleme, weil die bei mir machen dürfen was Sie für Ihr wohlbefinden für richtig halten und ich, wie die Sau vom Trog einfach weglaufe.
»Man kann die Realität ignorieren, aber man kann nicht die Konsequenzen der ignorierten Realität ignorieren.« ~Ayn Rand
0

#15 Mitglied ist offline   DK2000 

  • Gruppe: Administration
  • Beiträge: 19.011
  • Beigetreten: 19. August 04
  • Reputation: 1.197
  • Geschlecht:Männlich
  • Wohnort:Oben auf dem Berg
  • Interessen:Essen, PC, Filme, TV Serien...

geschrieben 01. Mai 2019 - 17:40

@Candlebox:

Das müsste man in eine *.ps1 Datei speichern, z.B. sleep.ps1.

Ausführen könnte man es dann im einfachsten Fall mit:

PowerShell.exe -Command "& 'C:\Test\sleep.ps1'"

bzw. mit

PowerShell.exe -ExecutionPolicy Bypass -Command "& 'C:\Test\sleep.ps1'"

Da kann man sich dann auch einen Link zurechtbasteln.

Und warum man so etwas braucht? Habe dafür die Sleep-Taste am Gerät. Benutze ich auch häufig, wenn gerade nichts gemacht wird und ich kurz weggehe. Dann versetze ich auch gerne sofort das Gerät in den Sleep Modus. Ist wohl Gewohnheitssache.
Nutella hat nur sehr wenig Vitamine.
Deswegen muss man davon relativ viel essen.
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0