KsSetPowerDispatch 関数 (ks.h)

ドライバー オブジェクトが IRP_MJ_POWER IRP を受け取ったときに呼び出される電源ディスパッチ関数を設定します。 これは、電源 IRP をディスパッチまたは完了するために KsDefaultDispatchPower が呼び出された場合にのみ有効です。

これは、このオブジェクト ヘッダーを、実行する電源ディスパッチ ルーチンを持つオブジェクト ヘッダーの一覧に追加する効果があります。 このリストの先頭はデバイス ヘッダーによって保持されます。 呼び出し元が KsAllocateDeviceHeader を使用して、基になる Device オブジェクトにデバイス ヘッダーを以前に割り当てたと仮定します。

構文

KSDDKAPI VOID KsSetPowerDispatch(
  [in]           KSOBJECT_HEADER       Header,
  [in, optional] PFNKSCONTEXT_DISPATCH PowerDispatch,
  [in, optional] PVOID                 PowerContext
);

パラメーター

[in] Header

KsAllocateObjectHeader によって以前に割り当てられたヘッダーを指します。

[in, optional] PowerDispatch

必要に応じて、呼び出される電源ディスパッチ関数を格納します。呼び出される関数の一覧から関数を削除する場合は NULL を 指定します。 この関数は、送信された電源 IRP を完了することはできません。 この関数の戻り値はSTATUS_SUCCESSする必要があります。 このリスト エントリのみを操作することが目的の場合、この電源ディスパッチ ルーチンの実行中に KsSetPowerDispatch を呼び出すことができます。 他のリスト エントリを操作すると、現在の列挙が混乱する可能性があります。

[in, optional] PowerContext

必要に応じて、電源ディスパッチ関数に渡す context パラメーターを格納します。

戻り値

なし

必要条件

要件
対象プラットフォーム ユニバーサル
Header ks.h (Ks.h を含む)
Library Ks.lib

こちらもご覧ください

KStrContextDispatch