GetDevicePowerState 函式 (winbase.h)
擷取指定裝置的目前電源狀態。 此函式無法用來查詢顯示裝置的電源狀態。
語法
BOOL GetDevicePowerState(
[in] HANDLE hDevice,
[out] BOOL *pfOn
);
參數
[in] hDevice
裝置上物件的控制碼,例如檔案或通訊端,或裝置本身的控制碼。
[out] pfOn
接收 電源狀態之變數的指標。 如果裝置處於工作狀態,則此值為 TRUE 。 否則為 FALSE。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。
備註
應用程式可以使用 GetDevicePowerState 來判斷裝置是否處於工作狀態或低電源狀態。 如果裝置處於低電源狀態,存取裝置可能會導致裝置排入佇列或失敗任何 I/O 要求,或將裝置轉換為工作狀態。 確切的行為取決於裝置的實作。
若要確保膝上型電腦的最大電池使用時間,請使用 GetDevicePowerState 來降低耗電量。 例如,如果磁片目前已關閉電源,存取磁片會導致其啟動,因而增加耗電量並降低電池使用時間。
當系統在電池電源上執行時,應用程式應該延遲或限制裝置的存取。 若要判斷系統是否在電池電源上執行,以及剩餘的電池使用時間,請使用 GetSystemPowerStatus 函式。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winbase.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |