Поделиться через


Функция 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, а затем используется для синхронизации доступа к списку. Это значение может быть NULL если флаг не задан в EventsFlags.

Возвращаемое значение

Функция KsEnableEvent возвращает STATUS_SUCCESS при успешном выполнении или ошибку, определенную для события, если не удалось. Функция всегда задает IO_STATUS_BLOCK. Информационное поле ПИРП. Элемент IoStatus в IRP до нуля. Он не задает IO_STATUS_BLOCK. Поле состояния и не завершает IRP.

Замечания

Мини-drivers не вызывают KsEnableEvent. Только чистый драйвер KS или драйвер класса должен вызывать эту подпрограмму.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ks.h (include Ks.h)
библиотеки Ks.lib

См. также

KsDisableEvent