PoCreatePowerRequest 函式 (wdm.h)
PoCreatePowerRequest 例程會建立電源要求物件。
語法
NTSTATUS PoCreatePowerRequest(
[out] PVOID *PowerRequest,
[in] PDEVICE_OBJECT DeviceObject,
[in] PCOUNTED_REASON_CONTEXT Context
);
參數
[out] PowerRequest
例程寫入新建立之電源要求物件的指標的位置指標。 如果呼叫失敗,例程會將 NULL 寫入此位置。
[in] DeviceObject
呼叫端裝置物件的指標, (DEVICE_OBJECT 結構) 。
[in] Context
COUNTED_REASON_CONTEXT 結構的指標,描述呼叫端建立電源要求物件的原因。 此參數是選擇性的,而且可以設定為 NULL。
傳回值
如果呼叫成功,PoCreatePowerRequest 會傳回STATUS_SUCCESS。 如果呼叫失敗,可能的錯誤傳回碼包括下列專案:
傳回碼 | Description |
---|---|
|
DeviceObject 參數為 NULL。 |
|
記憶體不足,無法建立電源要求物件。 |
備註
此例程會建立電源要求物件。 若要啟用電源要求,呼叫端應該建立一個電源要求物件,並將該對象用於 PoSetPowerRequest 和 PoClearPowerRequest 例程的所有呼叫。
驅動程式可以使用電源要求來覆寫計算機默認電源行為的某些層面。 例如,電視接收器裝置的驅動程式可以使用電源要求來防止 電源管理員 在長時間內自動將顯示器空白,而不會發生用戶互動。
不再需要電源要求物件時,呼叫端必須呼叫 PoDeletePowerRequest 例程來刪除物件。 驅動程式必須先刪除電源要求物件,才能刪除用來建立電源要求對象的裝置物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 7 開始提供。 |
目標平台 | Universal |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | <= APC_LEVEL |