KSEVENT_ITEM estructura (ks.h)

La estructura KSEVENT_ITEM describe la compatibilidad de un minidriver con un evento específico dentro de un conjunto de eventos.

Sintaxis

typedef struct {
  ULONG            EventId;
  ULONG            DataInput;
  ULONG            ExtraEntryData;
  PFNKSADDEVENT    AddHandler;
  PFNKSREMOVEEVENT RemoveHandler;
  PFNKSHANDLER     SupportHandler;
} KSEVENT_ITEM, *PKSEVENT_ITEM;

Miembros

EventId

Especifica el identificador único del evento dentro del conjunto de eventos.

DataInput

Especifica el tamaño en bytes de los datos de eventos. Los datos del evento comienzan con una estructura KSEVENTDATA que describe cómo se debe notificar al cliente cuando se produce el evento, seguido opcionalmente de los parámetros adicionales que especifican cuándo se produce el evento. Debe ser al menos sizeof(KSEVENTDATA).

ExtraEntryData

Especifica el tamaño en bytes de cualquier memoria adicional que el sistema debe asignar para cada solicitud de habilitación para este evento. El controlador usa esta memoria para almacenar los datos que necesita para realizar un seguimiento de la solicitud de evento. La memoria se asigna directamente después de la estructura de KSEVENT_ENTRY de la solicitud de habilitación del evento.

AddHandler

Puntero a una rutina de devolución de llamada avStrMiniAddEvent proporcionada por minidriver. No lo usa el controlador de clase de flujo. Solo para minidrivers avStream.

RemoveHandler

Puntero a una rutina de devolución de llamada AVStrMiniRemoveEvent proporcionada por minidriver. No lo usa el controlador de clase de flujo. Solo para minidrivers avStream.

SupportHandler

No lo usa el controlador de clase de flujo.

Comentarios

Un minidriver que especifica los miembros AddHandler y RemoveHandler y no limpia correctamente los eventos puede provocar una fuga de recursos (memoria/identificador).

Requisitos

Requisito Valor
Header ks.h (incluye Ks.h)

Consulte también

IOCTL_KS_DISABLE_EVENT

KSEVENTDATA

KSEVENT_ENTRY

KsDefaultAddEventHandler