共用方式為


PoCreatePowerRequest 函式 (ntifs.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。 如果呼叫失敗,可能的錯誤傳回碼包括下列專案:

傳回碼 描述
STATUS_INVALID_PARAMETER DeviceObject 參數為 NULL。
STATUS_INSUFFICIENT_RESOURCES 記憶體不足,無法建立電源要求物件。

言論

此例程會建立電源要求物件。 若要啟用電源要求,呼叫端應該建立一個電源要求物件,並將該對象用於所有呼叫 PoSetPowerRequest,並 PoClearPowerRequest 例程。

驅動程式可以使用電源要求來覆寫計算機默認電源行為的某些層面。 例如,電視接收者裝置的驅動程式可以使用電源要求來防止 電源管理員 在長時間內自動將顯示器空白,而使用者不會發生任何互動。

不再需要電源要求物件時,呼叫端必須藉由呼叫 PoDeletePowerRequest 例程來刪除物件。 驅動程式必須先刪除電源要求物件,才能刪除用來建立電源要求對象的裝置物件。

要求

要求 價值
最低支援的用戶端 Windows 7
目標平臺 普遍
標頭 ntifs.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

PoClearPowerRequest

PoDeletePowerRequest

PoSetPowerRequest