共用方式為


PCEVENT_REQUEST結構 (portcls.h)

PCEVENT_REQUEST 結構會指定事件要求。

語法

typedef struct _PCEVENT_REQUEST {
  PUNKNOWN           MajorTarget;
  PUNKNOWN           MinorTarget;
  ULONG              Node;
  const PCEVENT_ITEM *EventItem;
  PKSEVENT_ENTRY     EventEntry;
  ULONG              Verb;
  PIRP               Irp;
} PCEVENT_REQUEST, *PPCEVENT_REQUEST;

成員

MajorTarget

IUnknown 主要迷你埠物件的指標。 此成員包含先前傳遞至 IPort::Init 方法之配接器驅動程式的 UnknownMiniport 指標。

MinorTarget

IUnknownMajorTarget miniport 對象相關聯的數據流物件指標。 這個成員包含埠驅動程式先前從 IMiniportXxx 擷取的數據流物件指標::NewStream 方法(例如,IMiniportWaveCyclic::NewStream 方法的 Stream 參數)。

Node

指定節點識別碼。 這個成員會識別要求的目標節點。 如果目標不是節點,此成員會設定為ULONG(-1)。

EventItem

此要求之 PCEVENT_ITEM 結構的指標

EventEntry

此要求之 KSEVENT_ENTRY 結構的指標

Verb

指定事件要求的類型。 此成員應設定為下表中的其中一個值。

價值 意義
PCEVENT_VERB_ADD 表示用戶端想要啟用指定的事件。 驗證事件和目標資訊之後,EventHandler 例程會藉由呼叫 IPortEvents::AddEventToEventList 方法來新增事件。
PCEVENT_VERB_REMOVE 通知 EventHandler 事件正在停用並從清單中移除。
PCEVENT_VERB_SUPPORT 此要求是支持查詢。 如果迷你埠驅動程序支援要求中所識別目標的事件,它應該會成功此查詢。 否則,它應該會失敗查詢。
PCEVENT_VERB_NONE 不需要採取任何動作。

Irp

包含事件要求的 IRP 指標

言論

這是埠驅動程序傳遞至迷你埠驅動程式 EventHandler 例程的結構。 PCEVENT_ITEM 結構包含事件處理程式的函式指標,此事件處理程式會採用 PCEVENT_REQUEST 指標作為其唯一的呼叫參數。 埠驅動程式會配置 PCEVENT_REQUEST 結構、從原始事件要求擷取相關信息(Irp 成員指向該要求),並在呼叫處理程式之前,將資訊載入至這個結構。

在 WDM 音訊中,事件要求的目標可以是針腳實例,但不能是篩選實例。 目標也可以包含節點識別碼。

MajorTargetMinorTarget 成員分別 IUnknown 主要迷你埠物件的指標和相關聯的數據流物件。 事件處理程式可以查詢這些物件是否有其迷你埠和數據流介面。

例如,如果事件要求的目標是 WaveCyclic 篩選上的針腳實例:

要求

要求 價值
標頭 portcls.h (包括 Portcls.h)

另請參閱

EventHandler

IPortEvents::AddEventToEventList

KSEVENT_ENTRY

PCEVENT_ITEM

PCFILTER_NODE