Функция 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.
Комментарии
Мини-накопители не вызывают KsEnableEvent. Эту подпрограмму должен вызывать только чистый драйвер KS или драйвер класса.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ks.h (включая Ks.h) |
Библиотека | Ks.lib |