IPortEvents::GenerateEventList 메서드(portcls.h)

메서드는 GenerateEventList 포트 드라이버의 이벤트 항목 목록을 통해 클라이언트에 특정 이벤트가 발생했음을 알 수 있습니다.

구문

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

매개 변수

[in, optional] Set

이벤트가 속한 이벤트 집합을 식별합니다. 이 매개 변수는 GUID에 대한 포인터입니다. Set 는 선택적 매개 변수입니다. NULL집합 값은 목록의 모든 이벤트 집합 GUID와 일치하는 야생 카드. 그렇지 않으면 일치하는 이벤트 집합 GUID가 있는 이벤트 항목만 신호를 보냅니다.

[in] EventId

이벤트 ID를 지정합니다. 이 매개 변수는 이벤트 집합에 있는 이벤트의 인덱스를 지정합니다. 이벤트 집합에 n 이벤트가 포함된 경우 유효한 이벤트 ID는 0~ n-1 범위에 있습니다. 일치하는 이벤트 ID가 있는 이벤트 항목만 신호를 보냅니다.

[in] PinEvent

신호할 이벤트 항목을 한정하는 데 PinId 를 사용할지 여부를 지정합니다. PinEventFALSE이면 PinId는 목록의 모든 핀 ID와 일치하는 야생 카드 처리됩니다.

[in] PinId

신호를 받을 이벤트의 핀 ID를 지정합니다. PinEventTRUE이면 일치하는 핀 ID가 있는 이벤트 항목만 신호를 보냅니다.

[in] NodeEvent

신호를 받을 이벤트 항목을 한정하는 데 NodeId 를 사용해야 하는지 여부를 나타냅니다. NodeEventFALSE이면 NodeId는 목록의 모든 노드 ID와 일치하는 와일드 카드 처리됩니다.

[in] NodeId

신호를 받을 이벤트의 노드 ID를 지정합니다. NodeEventTRUE이면 노드 ID가 일치하는 이벤트 항목만 신호를 보냅니다.

반환 값

없음

설명

이 메서드는 미니포트 드라이버에서 포트 드라이버의 이벤트 목록에 있는 이벤트 항목을 신호로 알리는 데 사용됩니다. 이 메서드를 호출하는 미니포트 드라이버에 대한 응답으로 포트 드라이버는 이벤트 항목 목록을 안내하고 호출 매개 변수로 표현된 조건을 충족하는 등록된 모든 이벤트 항목에 신호를 보냅니다.

GenerateEventList 호출자는 모든 IRQL에서 실행할 수 있지만 IRQL > DISPATCH_LEVEL 호출할 때 몇 가지 제한 사항이 적용됩니다. 특히 의 현재 구현 GenerateEventList 이 IRQL > DISPATCH_LEVEL 호출되는 경우 메서드는 DPC를 큐에 대기하여 이벤트 목록을 처리합니다. 해당 DPC는 단일 호출에 대한 매개 변수 컨텍스트를 포함합니다. 따라서 IRQL > DISPATCH_LEVEL 여러 번의 호출이 발생하는 경우 신호 이벤트가 누락될 수 있습니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 portcls.h(Portcls.h 포함)
IRQL 모든 수준. 설명 부분을 참조하십시오.

추가 정보

Eventhandler

IPortEvents

IPortEvents::AddEventToEventList