AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Abfragen der Eigenschaften eines Energieschemas
Thema durchsuchen
Ansicht
Themen-Optionen

Abfragen der Eigenschaften eines Energieschemas

Ein Thema von DevidEspenschied · begonnen am 29. Okt 2007 · letzter Beitrag vom 22. Apr 2021
 
DevidEspenschied

Registriert seit: 7. Sep 2006
Ort: Berlin
444 Beiträge
 
Delphi 12 Athens
 
#4

Re: Abfragen der Eigenschaften eines Energieschemas

  Alt 30. Nov 2007, 10:23
Unter Vista heißt das ganze übrigens Energiesparplan.

Nun verwende ich mithilfe der Jedi-Bibliothek verschiedene Funktionen, um die Daten eines Energiesparplans auszulesen (hier das Wichtigste meines Codes):

Delphi-Quellcode:
USES JwaPowrProf, Dialogs;
VAR uiID : UINT;
    ActiveSchemaIndex : LPDWORD;
    CurrentPowerPolicy : POWER_POLICY;
    Name, Desc : STRING;
BEGIN
  IF GetActivePwrScheme(uiID) = True THEN
  BEGIN
    IF GetNamePowerScheme(uiID, Name, Desc) = True THEN
    BEGIN
      IF ReadPwrScheme(uiID, CurrentPowerPolicy) = True THEN
      BEGIN
        ShowMessage('Monitorabschaltung im Batteriebetrieb nach '+IntToStr(CurrentPowerPolicy.user.VideoTimeoutDc DIV 60)+' Minuten');
        ShowMessage('Festplattenabschaltung im Batteriebetrieb nach '+IntToStr(CurrentPowerPolicy.user.SpindownTimeoutDc DIV 60)+' Minuten');
        ShowMessage('Standby im Batteriebetrieb nach '+IntToStr(CurrentPowerPolicy.user.IdleTimeoutDc DIV 60)+' Minuten');
      END;
    END;
  END;
END;
Das ganze funktioniert unter Windows XP auch fehlerfrei, unter Vista werden aber vollkommen falsche Werte angezeigt. Ich erhalte hier bspw. folgendes:

Bildschirm: nach 5 Minuten abschalten (obwohl 1 Stunde eingestellt ist)
Festplatte: nach 10 Minuten abschalten (obwohl 15 Minuten eingestellt sind)
Standby: nach 5 Minuten aktivieren (obwohl nie eingestellt ist)

Arbeiten die Jedi-Funktionen wirklich fehlerhaft, oder woran kann das liegen ?

Ich hatte auch mal den Registry-Weg versucht, hier müsste aber der binäre Schlüssel "Policies" in HKEY_CURRENT_USER/Control Panel/PowerCfg/PowerPolicies" ausgewertet werden, und dieser besteht aus 80 hexadezimalen undokumentierten Werten. Von daher dachte ich schon, dass die Jedi-Funktionen nicht nur unter XP funktionieren.

Wer kann hier helfen ?
Devid
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz