Systemenergieverwaltungsereignisse
Ein Systemenergieverwaltungsereignis ist eine Änderung der status des Systems, des Betriebsmodus eines Geräts oder des Systems oder des Werts einer Energieeinstellung. Da sich diese Ereignisse auf den Betrieb von Anwendungen und installierbaren Treibern auswirken können, benachrichtigt das System alle Anwendungen und installierbaren Treiber, indem es eine Benachrichtigung für jedes Ereignis sendet. Anwendungen und Dienste registrieren sich für Benachrichtigungen mithilfe der Funktion RegisterPowerSettingNotification . Benachrichtigungen werden über die WM_POWERBROADCAST-Nachricht empfangen, die das Energieverwaltungsereignis und alle zugehörigen ereignisspezifischen Daten enthält.
Systemstromstatusereignisse
Ein Systemstrom-status-Ereignis tritt auf, wenn sich die Stromversorgung oder der Systembatterie status ändert. Beispielsweise überträgt das System ein PBT_APMPOWERSTATUSCHANGE-Ereignis , wenn der Benutzer vom Akku zum Wechselstrom wechselt oder umgekehrt. Das System leitet dieses Ereignis auch dann weiter, wenn die verbleibende Akkuleistung unter einen vom Benutzer festgelegten Wert sinkt oder sich um einen angegebenen Prozentsatz ändert.
Betriebsmodusereignisse
Ein Betriebsmodusereignis tritt auf, wenn sich der Stromverbrauch ändert, z. B. wenn das System aufgrund von Inaktivität in einen Ruhezustand wechselt oder der Benutzer das System manuell in den Ruhezustand versetzt. Das System sendet Ereignisse zu diesen Änderungen, bevor die Änderung des Energieverbrauchs vorgenommen wird. Wenn das System z. B. feststellt, dass es sich im Leerlauf befindet, sendet es ein PBT_APMSUSPEND Ereignis, das Anwendungen und Treiber benachrichtigt, dass der Betrieb und der Ruhemodus ausgesetzt werden sollen, um Strom zu sparen. Anwendungen und Treiber können sich auf den Ruhezustand vorbereiten, indem Sie Dateien schließen und Daten speichern, um potenzielle Datenverluste zu vermeiden.
Wenn das System eine kritische Aufhängung ausführt, wird das System aufgrund eines kritischen Zustands wie einem kritischen Batteriealarm sofort in den Ruhezustand versetzt. Im Gegensatz zu einem normalen Schlafübergang benachrichtigt das System Anwendungen und Treiber nicht vor einer kritischen Aussetzung. Daher müssen Anwendungen für den Umgang mit kritischen Aufhängungen vorbereitet sein.
Wenn der Systembetrieb nach dem Anhalten wiederhergestellt wird, benachrichtigt das System alle Anwendungen und Treiber. Es gibt auch an, ob das System nach einer kritischen Aussetzung fortgesetzt wird, damit die Anwendung oder der Treiber geeignete Schritte unternehmen kann, um ihre Daten wiederherzustellen und den Betrieb fortzusetzen.
Anwendungen sollten jeden Versuch unternehmen, den Übergang zum Ruhezustand ohne Benutzereingriff zu verarbeiten, da es dem Benutzer möglicherweise nicht möglich ist, darauf zu reagieren. Beispielsweise kann der Deckel auf dem Notebook-Computer geschlossen sein. Wenn eine Anwendung eine Benachrichtigung erhält, dass das System in den Ruhezustand versetzt wird, sollte sie alle erforderlichen Vorgänge schnell ausführen und aus der Nachrichtenschleife zurückkehren. Das System ermöglicht maximal zwei Sekunden pro Anwendung, wenn diese Nachricht verarbeitet wird, bevor ein Timeout erfolgt.
Energieeinstellungsänderungsereignisse
Ein Energieeinstellungsänderungsereignis tritt auf, wenn sich der Wert einer Energieeinstellung ändert. Beispielsweise ändert der Benutzer in der Anwendung Energieoptionen in Systemsteuerung den Energiesparplan von "Hohe Leistung" in "Ausgeglichen". In diesem Fall würde das System ein Ereignis senden, das angibt, dass sich der Energiesparplan geändert hat. Dieses Ereignis enthält den neuen Wert für die Energieeinstellung.
Zugehörige Themen