KsEnableEvent 関数 (ks.h)
KsEnableEvent 関数は、IOCTL_KS_ENABLE_EVENTを介して要求されたイベントを有効にします。 セットによって定義されたすべてのイベント識別子に応答します。 この関数は、PASSIVE_LEVELでのみ呼び出すことができます。
構文
KSDDKAPI NTSTATUS KsEnableEvent(
[in] PIRP Irp,
[in] ULONG EventSetsCount,
[in] const KSEVENT_SET *EventSet,
[in, out] PLIST_ENTRY EventsList,
[in, optional] KSEVENTS_LOCKTYPE EventsFlags,
[in, optional] PVOID EventsLock
);
パラメーター
[in] Irp
対応する要求を有効にする IRP を指定します。 IRP に関連付けられているファイル オブジェクトは、イベントを無効にするときに後で比較するために、 イベントと共に格納されます。
[in] EventSetsCount
渡されるイベント セット構造体の数を示します。
[in] EventSet
イベント セット情報の一覧へのポインターを指定します。
[in, out] EventsList
有効化イベントのKSEVENT_SET。イベント セットの AddHandler は NULL です。イベントを追加するKSEVENT_ENTRY項目の一覧の先頭を指す必要があります。 この関数は、少なくともイベントのサブセットに対して 1 つのリストを想定しています。
[in, optional] EventsFlags
イベント リスト への アクセスに使用する除外ロックの種類 (存在する場合) を指定するKSEVENTS_LOCKTYPEフラグを指定します。 フラグが設定されていない場合、ロックは行われません。 ハンドラーが既に指定されている場合、このパラメーターは無視されます。
[in, optional] EventsLock
KSEVENT_SET場合。有効になっているイベントを含むイベント セットの AddHandler は NULL です。これは、リストへのアクセスを同期するために使用されます。 EventsFlags でフラグが設定されていない場合、この値は NULL にすることができます。
戻り値
KsEnableEvent 関数は、成功した場合はSTATUS_SUCCESSを返し、失敗した場合は有効になっているイベントに固有のエラーを返します。 関数は常にIO_STATUS_BLOCKを設定します。PIRP の情報フィールド。IRP 内の IoStatus 要素を 0 にします。 IO_STATUS_BLOCKは設定されません。[状態] フィールドは、IRP を完了しません。
注釈
ミニドライバーは KsEnableEvent を呼び出しません。 純粋な KS ドライバーまたはクラス ドライバーのみが、このルーチンを呼び出す必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | ks.h (Ks.h を含む) |
Library | Ks.lib |