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 를 사용할지 여부를 지정합니다. PinEvent가 FALSE이면 PinId는 목록의 모든 핀 ID와 일치하는 야생 카드 처리됩니다.
[in] PinId
신호를 받을 이벤트의 핀 ID를 지정합니다. PinEvent가 TRUE이면 일치하는 핀 ID가 있는 이벤트 항목만 신호를 보냅니다.
[in] NodeEvent
신호를 받을 이벤트 항목을 한정하는 데 NodeId 를 사용해야 하는지 여부를 나타냅니다. NodeEvent가 FALSE이면 NodeId는 목록의 모든 노드 ID와 일치하는 와일드 카드 처리됩니다.
[in] NodeId
신호를 받을 이벤트의 노드 ID를 지정합니다. NodeEvent가 TRUE이면 노드 ID가 일치하는 이벤트 항목만 신호를 보냅니다.
반환 값
없음
설명
이 메서드는 미니포트 드라이버에서 포트 드라이버의 이벤트 목록에 있는 이벤트 항목을 신호로 알리는 데 사용됩니다. 이 메서드를 호출하는 미니포트 드라이버에 대한 응답으로 포트 드라이버는 이벤트 항목 목록을 안내하고 호출 매개 변수로 표현된 조건을 충족하는 등록된 모든 이벤트 항목에 신호를 보냅니다.
의 GenerateEventList
호출자는 모든 IRQL에서 실행할 수 있지만 IRQL > DISPATCH_LEVEL 호출할 때 몇 가지 제한 사항이 적용됩니다. 특히 의 현재 구현 GenerateEventList
이 IRQL > DISPATCH_LEVEL 호출되는 경우 메서드는 DPC를 큐에 대기하여 이벤트 목록을 처리합니다. 해당 DPC는 단일 호출에 대한 매개 변수 컨텍스트를 포함합니다. 따라서 IRQL > DISPATCH_LEVEL 여러 번의 호출이 발생하는 경우 신호 이벤트가 누락될 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | portcls.h(Portcls.h 포함) |
IRQL | 모든 수준. 설명 부분을 참조하십시오. |