共用方式為


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專案清單的前端。 此函式假設至少一個事件子集的單一清單。

[in, optional] EventsFlags

指定 KSEVENTS_LOCKTYPE 旗標,指定在存取事件清單時要使用的排除鎖定類型。 如果未設定旗標,則不會取得鎖定。 如果已經指定處理程式,則會忽略此參數。

[in, optional] EventsLock

如果KSEVENT_SET。包含已啟用事件之事件集的 AddHandler 為 NULL,然後用來同步處理清單的存取權。 如果 EventsFlags 中未設定任何旗標,這個值可以是 NULL

傳回值

如果成功, KsEnableEvent 函式會傳回STATUS_SUCCESS,或失敗時啟用事件的特定錯誤。 函式一律會設定IO_STATUS_BLOCK。PIRP 的資訊欄位。IRP 內的IoStatus元素為零。 它不會設定IO_STATUS_BLOCK。狀態欄位,也不會完成 IRP。

備註

Minidrivers 不會呼叫 KsEnableEvent。 只有純 KS 驅動程式或類別驅動程式應該呼叫此例程。

規格需求

需求
目標平台 Universal
標頭 ks.h (包含 Ks.h)
程式庫 Ks.lib

另請參閱

KsDisableEvent