Compartilhar via


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

O método GenerateEventList notifica os clientes por meio da lista de entradas de evento do driver de porta 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. Definir é um parâmetro opcional. Um Definir valor de NULL é um curinga que corresponde a todos os GUIDs definidos por eventos na lista. Caso contrário, somente entradas de evento com GUIDs correspondentes do conjunto de eventos sã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 curinga que corresponde a todas as IDs de pin na lista.

[in] PinId

Especifica a ID do pino do evento a ser sinalizado. Se PinEvent for VERDADEIRO, 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 um curinga 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.

Valor de retorno

Nenhum

Observações

Esse método é usado por drivers de miniporto 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 orienta 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 o IRQL > DISPATCH_LEVEL. Especificamente, se a implementação atual de GenerateEventList for chamada no 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, eventos de sinalização podem ocasionalmente ser perdidos se várias chamadas forem feitas no IRQL > DISPATCH_LEVEL.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho portcls.h (inclua Portcls.h)
IRQL Qualquer nível. (Consulte a seção Comentários.)

Consulte também

eventHandler

IPortEvents

IPortEvents::AddEventToEventList