Share via


Método IPortEvents::GenerateEventList (portcls.h)

O GenerateEventList método notifica os clientes por meio da lista de entradas de evento do driver de porta de que ocorreu um evento específico.

Sintaxe

void GenerateEventList(
  [in, optional] GUID  *Set,
  [in]           ULONG EventId,
  [in]           BOOL  PinEvent,
  [in]           ULONG PinId,
  [in]           BOOL  NodeEvent,
  [in]           ULONG NodeId
);

Parâmetros

[in, optional] Set

Identifica o conjunto de eventos ao qual o evento pertence. Esse parâmetro é um ponteiro para um GUID. Set é um parâmetro opcional. Um valor Set de NULL é uma cartão selvagem que corresponde a todos os GUIDs do conjunto de eventos na lista. Caso contrário, somente as entradas de evento com GUIDs correspondentes do conjunto de eventos serão sinalizadas.

[in] EventId

Especifica uma ID de evento. Esse parâmetro especifica o índice do evento no conjunto de eventos. Se um conjunto de eventos contiver n eventos, as IDs de evento válidas estarão no intervalo de 0 a n-1. Somente entradas de evento com IDs de evento correspondentes são sinalizadas.

[in] PinEvent

Especifica se PinId deve ser usado na qualificação de quais entradas de evento sinalizar. Se PinEvent for FALSE, PinId será tratado como um cartão selvagem que corresponde a todas as IDs de pino na lista.

[in] PinId

Especifica a ID do pino do evento a ser sinalizado. Se PinEvent for TRUE, somente as entradas de evento com IDs de pino correspondentes serão sinalizadas.

[in] NodeEvent

Indica se NodeId deve ser usado na qualificação de quais entradas de evento sinalizar. Se NodeEvent for FALSE, NodeId será tratado como uma cartão selvagem que corresponde a todas as IDs de nó na lista.

[in] NodeId

Especifica a ID do nó do evento a ser sinalizado. Se NodeEvent for TRUE, somente as entradas de evento com IDs de nó correspondentes serão sinalizadas.

Retornar valor

Nenhum

Comentários

Esse método é usado por drivers de miniporta para sinalizar entradas de evento na lista de eventos do driver de porta. Em resposta ao driver de miniporto que chama esse método, o driver de porta percorre sua lista de entradas de evento e sinaliza todas as entradas de evento registradas que atendem aos critérios expressos pelos parâmetros de chamada.

Embora os chamadores de GenerateEventList possam estar em execução em qualquer IRQL, eles estão sujeitos a algumas limitações ao chamar em IRQL > DISPATCH_LEVEL. Especificamente, se a implementação atual de GenerateEventList for chamada em IRQL > DISPATCH_LEVEL, o método enfileira um DPC para processar a lista de eventos. Esse DPC contém o contexto de parâmetro para uma única chamada. Como resultado, os eventos de sinalização podem ocasionalmente ser perdidos se várias chamadas forem feitas no IRQL > DISPATCH_LEVEL.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho portcls.h (inclua Portcls.h)
IRQL Qualquer nível. (Consulte a seção Observações.)

Confira também

EventHandler

IPortEvents

IPortEvents::AddEventToEventList