系統電源管理事件
系統電源管理事件是系統電源狀態、裝置或系統的操作模式或電源設定的值變更。 由於這些事件可能會影響應用程式和可安裝驅動程式的作業,因此系統會針對每個事件廣播通知,以通知所有應用程式和可安裝的驅動程式。 應用程式和服務會使用 RegisterPowerSettingNotification 函式註冊通知。 通知會透過 WM_POWERBROADCAST 訊息接收,其中包含電源管理事件和任何相關聯的事件特定資料。
系統電源狀態事件
當電源供應器或系統電池狀態發生變更時,就會發生 系統電源狀態事件 。 例如,每當使用者從電池切換到 AC 電源,系統就會廣播 PBT_APMPOWERSTATUSCHANGE 事件,反之亦然。 當剩餘電池的電力下滑至使用者所指定的臨界值之下,或是如果電池的電力由指定百分比來變更時,系統也會廣播這個事件。
操作模式事件
當電源耗用量發生變更時,就會發生 操作模式事件 ,例如系統因為閒置或使用者手動讓系統進入睡眠狀態而切換到睡眠狀態。 系統會在進行耗電量變更之前,廣播這些變更的相關事件。 例如,如果系統判斷它閒置,它會廣播 PBT_APMSUSPEND 事件,通知應用程式和驅動程式即將暫停作業和睡眠以節省電源。 應用程式和驅動程式可以關閉檔案並儲存資料來準備睡眠,以避免潛在的資料遺失。
當系統執行 重大暫停時,系統會立即進入睡眠狀態,因為發生重大電池警示之類的重大狀況。 相較于正常睡眠轉換,系統不會在執行重大暫停之前通知應用程式和驅動程式。 因此,應用程式必須準備好處理重大暫停。
當系統作業在暫停後還原時,系統會通知所有應用程式和驅動程式。 它也會指出系統是否從重大暫停繼續,讓應用程式或驅動程式可以採取適當的步驟來還原其資料並繼續作業。
應用程式應該每次嘗試處理轉換到睡眠狀態,而不需要任何使用者介入,因為使用者可能無法回應。 例如,筆記本電腦上的蓋子可能會關閉。 當應用程式收到系統即將進入睡眠的通知時,應該快速執行任何必要的作業,並傳回訊息迴圈。 系統允許在逾時之前處理此訊息時,每個應用程式最多允許兩秒。
電源設定變更事件
當電源設定的值發生變更時,就會發生電源設定變更事件。 例如,使用者在 主控台 的 Power Options 應用程式中,將電源計劃從 [高效能] 變更為 [平衡]。 在此情況下,系統會廣播事件,指出電源計劃已變更。 此事件包含電源設定的新值。
相關主題