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
指定事件識別碼。 此參數會指定事件集中事件的索引。 如果事件集包含 n 事件,則有效的事件標識碼範圍介於 0 到 n-1。 只有具有相符事件標識碼的事件專案才會發出訊號。
[in] PinEvent
指定是否應該使用 PinId 來限定要發出訊號的事件專案。 如果 PinEventFALSE,PinId 會被視為符合清單中所有針腳標識碼的通配符。
[in] PinId
指定要發出訊號的事件針腳標識碼。 如果 pinEventTRUE,則只會發出具有相符針腳標識符的事件專案訊號。
[in] NodeEvent
指出 NodeId 是否應該用於限定要發出訊號的事件專案。 如果 NodeEventFALSE,NodeId 會被視為符合清單中所有節點標識碼的通配符。
[in] NodeId
指定要發出訊號之事件的節點標識碼。 如果 NodeEventTRUE,則只會發出具有相符節點標識碼的事件專案訊號。
傳回值
沒有
言論
迷你埠驅動程式會使用這個方法來發出埠驅動程式事件清單中的事件專案訊號。 為了回應呼叫此方法的迷你埠驅動程式,埠驅動程式會逐步解說其事件專案清單,併發出符合呼叫參數所表示準則的所有已註冊事件專案訊號。
雖然 GenerateEventList
的呼叫者可以在任何 IRQL 上執行,但在 IRQL > DISPATCH_LEVEL 呼叫時,它們受限於某些限制。 具體來說,如果在 IRQL > DISPATCH_LEVEL 呼叫 GenerateEventList
的目前實作,方法會將 DPC 排入佇列來處理事件清單。 該 DPC 包含單一呼叫的參數內容。 因此,如果在 IRQL > DISPATCH_LEVEL 進行多個呼叫,則偶爾會遺漏訊號事件。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | portcls.h (包括 Portcls.h) |
IRQL | 任何層級。 (請參閱一節。 |