IPortEvents::GenerateEventList-Methode (portcls.h)
Die GenerateEventList
-Methode benachrichtigt Clients über die Liste der Ereigniseinträge des Porttreibers, dass ein bestimmtes Ereignis aufgetreten ist.
Syntax
void GenerateEventList(
[in, optional] GUID *Set,
[in] ULONG EventId,
[in] BOOL PinEvent,
[in] ULONG PinId,
[in] BOOL NodeEvent,
[in] ULONG NodeId
);
Parameter
[in, optional] Set
Gibt den Ereignissatz an, zu dem das Ereignis gehört. Dieser Parameter ist ein Zeiger auf eine GUID. Set ist ein optionaler Parameter. Ein Festlegen Werts von NULL- ist eine Wildcard, die allen Ereignissatz-GUIDs in der Liste entspricht. Andernfalls werden nur Ereigniseinträge mit übereinstimmenden Ereignissatz-GUIDs signalisiert.
[in] EventId
Gibt eine Ereignis-ID an. Dieser Parameter gibt den Index des Ereignisses im Ereignissatz an. Wenn ein Ereignissatz n Ereignisse enthält, befinden sich gültige Ereignis-IDs im Bereich 0 bis n-1. Es werden nur Ereigniseinträge mit übereinstimmenden Ereignis-IDs signalisiert.
[in] PinEvent
Gibt an, ob PinId- verwendet werden soll, um zu qualifizieren, welche Ereigniseinträge signalisiert werden sollen. Wenn PinEvent-FALSE-ist, wird PinId- als Platzhalter behandelt, der allen Pin-IDs in der Liste entspricht.
[in] PinId
Gibt die Pin-ID des zu signalisierenden Ereignisses an. Wenn PinEvent-TRUEist, werden nur Ereigniseinträge mit übereinstimmenden Pin-IDs signalisiert.
[in] NodeEvent
Gibt an, ob NodeId- verwendet werden soll, um zu qualifizieren, welche Ereigniseinträge signalisiert werden sollen. Wenn NodeEvent-FALSE-ist, wird NodeId- als Platzhalter behandelt, der allen Knoten-IDs in der Liste entspricht.
[in] NodeId
Gibt die Knoten-ID des zu signalisierenden Ereignisses an. Wenn NodeEvent-TRUE-ist, werden nur Ereigniseinträge mit übereinstimmenden Knoten-IDs signalisiert.
Rückgabewert
Nichts
Bemerkungen
Diese Methode wird von Miniporttreibern verwendet, um Ereigniseinträge in der Ereignisliste des Porttreibers zu signalisieren. Als Reaktion auf den miniport-Treiber, der diese Methode aufruft, führt der Porttreiber seine Liste der Ereigniseinträge durch und signalisiert alle registrierten Ereigniseinträge, die den kriterien entsprechen, die durch die Aufrufparameter ausgedrückt werden.
Obwohl Aufrufer von GenerateEventList
bei jedem IRQL ausgeführt werden können, unterliegen sie einigen Einschränkungen beim Aufrufen von IRQL-> DISPATCH_LEVEL. Wenn die aktuelle Implementierung von GenerateEventList
bei IRQL-> DISPATCH_LEVEL aufgerufen wird, wird durch die Methode ein DPC in die Warteschlange gestellt, um die Ereignisliste zu verarbeiten. Dieser DPC enthält den Parameterkontext für einen einzelnen Aufruf. Daher können Signalereignisse gelegentlich verpasst werden, wenn mehrere Aufrufe an IRQL-> DISPATCH_LEVEL erfolgen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | portcls.h (include Portcls.h) |
IRQL- | Jede Ebene. (Siehe Abschnitt "Hinweise".) |