Función KsEnableEvent (ks.h)

La función KsEnableEvent habilita los eventos solicitados a través de IOCTL_KS_ENABLE_EVENT. Responde a todos los identificadores de evento definidos por los conjuntos. Solo se puede llamar a esta función en PASSIVE_LEVEL.

Sintaxis

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
);

Parámetros

[in] Irp

Especifica el IRP con la solicitud enable que se está administrando. El objeto de archivo asociado al IRP se almacena con el evento para una comparación posterior al deshabilitar el evento.

[in] EventSetsCount

Indica el número de estructuras del conjunto de eventos que se pasan.

[in] EventSet

Especifica un puntero a la lista de información del conjunto de eventos.

[in, out] EventsList

Si la KSEVENT_SET del evento de habilitación. AddHandler para el conjunto de eventos es NULL, debe apuntar al encabezado de la lista de KSEVENT_ENTRY elementos en los que se va a agregar el evento. Esta función supone una sola lista para al menos un subconjunto de eventos.

[in, optional] EventsFlags

Especifica KSEVENTS_LOCKTYPE marcas que especifican el tipo de bloqueo de exclusión que se va a usar para acceder a la lista de eventos, si existe. Si no se establece ninguna marca, no se toma ningún bloqueo. Si ya se especifica un controlador, este parámetro se omite.

[in, optional] EventsLock

Si el KSEVENT_SET. AddHandler para el conjunto de eventos que contiene el evento que se está habilitando es NULL y, a continuación, se usa para sincronizar el acceso a la lista. Este valor puede ser NULL si no hay ninguna marca establecida en EventsFlags.

Valor devuelto

La función KsEnableEvent devuelve STATUS_SUCCESS si se ejecuta correctamente o un error específico del evento que se habilita si no se realiza correctamente. La función siempre establece el IO_STATUS_BLOCK. Campo de información del PIRP. Elemento IoStatus dentro del IRP a cero. No establece el IO_STATUS_BLOCK. Campo de estado, ni completa el IRP.

Comentarios

Los minidrivers no llaman a KsEnableEvent. Solo un controlador KS puro o un controlador de clase deben llamar a esta rutina.

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado ks.h (incluya Ks.h)
Library Ks.lib

Consulte también

KsDisableEvent