Share via


PCPFNEVENT_HANDLER función de devolución de llamada (portcls.h)

Una EventHandler rutina procesa las solicitudes de eventos.

Sintaxis

PCPFNEVENT_HANDLER PcpfneventHandler;

NTSTATUS PcpfneventHandler(
  [in] PPCEVENT_REQUEST EventRequest
)
{...}

Parámetros

[in] EventRequest

Puntero a una estructura de PCEVENT_REQUEST inicializada

Valor devuelto

El controlador de eventos devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado.

Comentarios

Cada evento que expone un controlador de minipuerto está asociado a un controlador de eventos. El propósito del controlador de eventos es procesar solicitudes de eventos desde el controlador de puerto y sus clientes. EventRequest es un parámetro de entrada para el controlador que contiene la siguiente información sobre el evento:

  • Guid del conjunto de eventos e identificador de evento.
  • Cómo se desencadena el evento.
  • Punteros al objeto de minipuerto de destino y (para un pin).
Esto es similar al tipo de información que se proporciona con solicitudes de propiedad.

El controlador de minipuerto expone sus controladores de eventos a través de su método IMiniport::GetDescription . Este método genera una estructura de descriptor (vea PCFILTER_DESCRIPTOR) que define el filtro que el controlador de miniporte y su controlador de puerto asociado implementan juntos. Esta estructura contiene un puntero a la tabla de automatización del controlador de minipuerto (vea PCAUTOMATION_TABLE), que a su vez contiene un puntero a una matriz de los eventos del controlador de minipuerto. Cada elemento de matriz es una estructura PCEVENT_ITEM y contiene un puntero de función PCPFNEVENT_HANDLER al controlador del evento.

La EventHandler rutina debe residir en memoria no paginada.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado portcls.h (incluya Portcls.h)

Consulte también

IMiniport::GetDescription

IPortEvents::AddEventToEventList

IPortEvents::GenerateEventList

PCAUTOMATION_TABLE

PCEVENT_ITEM

PCEVENT_REQUEST

PCFILTER_DESCRIPTOR