Einzelnen Beitrag anzeigen

Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
721 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: WM_POWERBROADCAST wie verwenden?

  Alt 20. Dez 2019, 14:07
Danke für den Hinweis. Inzwischen bin ich auch schlauer: selbst
PBT_APMRESUMEAUTOMATIC
PBT_APMRESUMESUSPEND
PBT_APMSUSPEND
werden nicht empfangen.
Danke für deine Info. Aber: Ich verwende WM_POWERBROADCAST seit vielen Jahren in einem Onlinespiel ohne "RegisterSuspendResumeNotification" und es funktioniert auch im Insider Build Version 10.0.19041 (soeben getestet). Ich schliesse den Deckel, mein Programm empfängt WM_POWERBROADCAST wParam=PBT_APMSUSPEND. Ich öffne den Deckel und melde mich an und prüfe: Mein Programm empfängt zuerst PBT_APMRESUMESUSPEND und danach PBT_APMRESUMEAUTOMATIC. Dein Code aus #1 sollte also funktionieren.

Hast du eventuell bei der Deklaration message WM_POWERBROADCAST; vergessen (?).


Delphi-Quellcode:
type
  TMeinForm = class(TForm)
   ...
  procedure WMPowerBroadcast(var Msg: TMessage); message WM_POWERBROADCAST;


procedure TMeinForm.WMPowerBroadcast(var Msg: TMessage);
begin
  try
    case Msg.wParam of
    PBT_APMSUSPEND: ….
    PBT_APMRESUMESUSPEND: ….
    PBT_APMRESUMEAUTOMATIC: ….
Michael Gasser
  Mit Zitat antworten Zitat