Eneriesparplan Monitor Win7

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Hartl
Beiträge: 10
Registriert: 20.02.2013 20:48
Computerausstattung: Win 7 x64 | Win 8.1

Eneriesparplan Monitor Win7

Beitrag von Hartl »

Hallo zusammen,
Wie bekomme ich bei einem Windows 7 Rechner mit eingeschränkten Benutzerrechten den Energiesparplan des Monitors (Standby 10 min) deaktiviert? Die Deaktivierung des Bildschirmschoners war über "SystemParametersInfo_ (#SPI_SETSCREENSAVEACTIVE, 0,0,0)" kein Problem.

Kann vielleicht jemand helfen?
PureBasic 5.30 x86 / x64 ( Win 7 x64 SP1 | Win 8.1 )
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: Eneriesparplan Monitor Win7

Beitrag von _JON_ »

Ohne Adminrechte wird das nix.
Energieoptionen sind globale Einstellungen, die darf ein einfacher Benutzer nicht ändern.
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Hartl
Beiträge: 10
Registriert: 20.02.2013 20:48
Computerausstattung: Win 7 x64 | Win 8.1

Re: Eneriesparplan Monitor Win7

Beitrag von Hartl »

Beim suchen bin ich auf den Befehl gestoßen " PowerSetActiveScheme".
Ist es mit diesem möglich und wenn ja, würde mir ein Beispiel sehr weiter helfen.
PureBasic 5.30 x86 / x64 ( Win 7 x64 SP1 | Win 8.1 )
Benutzeravatar
_JON_
Beiträge: 389
Registriert: 30.03.2010 15:24

Re: Eneriesparplan Monitor Win7

Beitrag von _JON_ »

Das ist schon die richtige API, trotzdem werden hier Administrationsrechte notwendig sein.

Anstatt API kann aber auch powercfg.exe benutzt werden: Befehlszeilenoptionen von "Powercfg"
PureBasic 5.46 LTS (Windows x86/x64) | windows 10 x64 Oktober failure
Benutzeravatar
Waldixxl
Beiträge: 108
Registriert: 27.12.2005 17:35
Wohnort: Linz, Österreich

Re: Eneriesparplan Monitor Win7

Beitrag von Waldixxl »

Hallo Hartl
musst Du die Einstellung ändern oder genügt es wenn Du den Bildschirmschoner einfach verhinderst.
Walter
Lesen bei schlechten Lichtverhältnissen ist nicht schlecht für die Augen, sondern trainiert sie sogar.

Linux Ubuntu Mate 18.04
PB 5.71
Intel i5
Hartl
Beiträge: 10
Registriert: 20.02.2013 20:48
Computerausstattung: Win 7 x64 | Win 8.1

Re: Eneriesparplan Monitor Win7

Beitrag von Hartl »

@Waldixxl
die eingestellte Zeit und die Deaktivierung vom Bildschirmschoner kann ich nicht verändern, ist gesperrt. Der Energiesparplan ist zwar veränderbar, aber nach jeden Benutzerwechsel ist die vom Systemadmin eingestellte Zeit wieder eingestellt.
Nach dem Start des kleinen Tools kommt zwar der Bildschirmschoner nicht mehr aber es schaltet sich nach 10 min der Monitor auf Standby.
Mit "powercfg -change -monitor-timeout-ac 0" funktioniert es zwar auf meinem Rechner , aber funktioniertes auch auf einem Rechner mit eingeschränkten Rechten?

Gruß
Gerhard
PureBasic 5.30 x86 / x64 ( Win 7 x64 SP1 | Win 8.1 )
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Eneriesparplan Monitor Win7

Beitrag von ts-soft »

Hartl hat geschrieben:Mit "powercfg -change -monitor-timeout-ac 0" funktioniert es zwar auf meinem Rechner , aber funktioniertes auch auf einem Rechner mit eingeschränkten Rechten?
Normalerweise nicht, wäre ja auch etwas merkwürdig :wink:
Auf Deinem Rechner biste ja kein User mit eingeschränkten Rechten, sondern Admin oder Standardbenutzer.

Aber trotzdem noch viel Erfolg :lol:

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Eneriesparplan Monitor Win7

Beitrag von Sicro »

So müsstest du den Standby verhindern können (nicht getestet):

Code: Alles auswählen

Procedure PreventStandby(Hwnd, Msg, idEvent, dwTime)
  Protected MousePos.POINT
  
  GetCursorPos_(@MousePos)
  SetCursorPos_(MousePos\x + 1, MousePos\y)
  SetCursorPos_(MousePos\x - 1, MousePos\y)
EndProcedure

#TimeOut = 1000*60*5 ; alle 5 Minuten

Define Timer, Event

Timer = SetTimer_(0, 0, #TimeOut, @PreventStandby())
If Timer = 0
  MessageRequester("Fehler", "Ein Fehler ist aufgetreten!")
  End
EndIf

OpenWindow(0, 0, 0, 400, 400, "PreventStandby - Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
Repeat
  Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow

KillTimer_(0, Timer)
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Hartl
Beiträge: 10
Registriert: 20.02.2013 20:48
Computerausstattung: Win 7 x64 | Win 8.1

Re: Eneriesparplan Monitor Win7

Beitrag von Hartl »

Mit "Powercfg" funktioniert es leider nicht. :cry:
Wie würde es denn mit der API "PowerSetActiveScheme" aussehen?
Ich habe leider bis jetzt noch keine Beispiele für PB gefunden.
PureBasic 5.30 x86 / x64 ( Win 7 x64 SP1 | Win 8.1 )
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Eneriesparplan Monitor Win7

Beitrag von ts-soft »

Das ist im Endeffekt alles dasselbe und benötigt Adminrechte / Standarduser. Du findest keine Sicherheitslücke in
Windows, das wäre dann schon merkwürdig.

Nur durch Aktivität (siehe Posting von Sicro) kannste Du die Auswirkungen des Powerschemas verhindern.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten