AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Rechner soll an bleiben nach Aufwachen mit WaitableTimer
Thema durchsuchen
Ansicht
Themen-Optionen

Rechner soll an bleiben nach Aufwachen mit WaitableTimer

Offene Frage von "kriegste"
Ein Thema von kriegste · begonnen am 7. Mär 2010 · letzter Beitrag vom 9. Mär 2010
 
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Rechner soll an bleiben nach Aufwachen mit WaitableTimer

  Alt 9. Mär 2010, 07:34
Hi,

ich hab das auch, kommt nur nicht bei allen Systemen vor, aber ich habs so gelöst, jetzt ist mein PC mein Wecker

Delphi-Quellcode:
public
  procedure WMPowerBroadcast(var MyMessage: TMessage); message WM_POWERBROADCAST;

.
.
.



procedure TMRMaster.WMPowerBroadcast(var MyMessage: TMessage);
begin
  if MyMessage.Msg = WM_POWERBROADCAST then begin
    if (MyMessage.WParam = PBT_APMQUERYSUSPEND) or (MyMessage.WParam = PBT_APMQUERYSTANDBY)
    then begin
      // windows wants to go into standby or hibernation mode
      // Hier hin, was getan werden muss, bevor Windows in den Standby darf,
      // z.B. Netzwerk- oder Datenbankverbindungen trennen, Timer abstellen, etc.
               

      MyMessage.Result := 1; // allow standby/hibernation
      // MyMessage.Result := BROADCAST_QUERY_DENY; // deny standby/hibernation
    end else if (MyMessage.WParam = PBT_APMRESUMEAUTOMATIC) or (MyMessage.WParam = PBT_APMRESUMECRITICAL) or
                (MyMessage.WParam = PBT_APMRESUMESUSPEND) or (MyMessage.WParam = PBT_APMRESUMESTANDBY)
    then begin
      // windows returns from standby or hibernation
      // Hier z.B. Verbindungen wiederherstellen
      // und Windows sagen das es benötigt wird und sich nicht automatisch ohne Usereingabe wieder ausschaltet
      SetThreadExecutionState(ES_DISPLAY_REQUIRED or ES_SYSTEM_REQUIRED or ES_CONTINUOUS);
      CancelWaitableTimer(htimer);

    end;
  end;
end;
ich denke das sollte alles ziemlich klar sein, hoff ich hab dir geholfen hab selbst ewig danach gesucht

Gruß

Cylence
Tom
Just DO it
  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 08:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz