Функция 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 |