iMiniportDMus::Init 方法 (dmusicks.h)

方法 Init 會初始化 DMus 迷你埠物件。

語法

NTSTATUS Init(
  [in, optional] PUNKNOWN      UnknownAdapter,
  [in]           PRESOURCELIST ResourceList,
  [in]           PPORTDMUS     Port,
  [out]          PSERVICEGROUP *ServiceGroup
);

參數

[in, optional] UnknownAdapter

要初始化迷你埠物件的配接器物件的 IUnknown 介面指標。 此參數是選擇性的,可以指定為 NULL。 如需詳細資訊,請參閱接下來的<備註>一節。

[in] ResourceList

包含配接器資源清單之 IResourceList 物件的指標。 將這個參考傳遞至迷你埠驅動程序之後,埠驅動程式即可自由檢查資源清單的內容,但不會修改此列表的內容。

[in] Port

IPortDMus 物件的指標,該物件會提供埠驅動程式的回呼介面。

[out] ServiceGroup

服務群組的輸出指標。 此參數指向呼叫端配置的指標變數,此方法會將指標寫入迷你埠驅動程式服務群組物件的 IServiceGroup 介面。 這是此迷你埠驅動程式想要用來呼叫 IPortDMus::Notify 的服務群組。

傳回值

Init 如果呼叫成功,會傳回S_OK。 否則,方法會傳回適當的錯誤碼。

備註

pUnknownAdapter 參數是選擇性的:

  • 如果 pUnknownAdapter 不是 NULL,此方法 Init 會查詢 pUnknownAdapter 物件的 IInterruptSync 介面。
  • 如果 pUnknownAdapterNULL,此方法會 Init 呼叫 PcNewInterruptSync 來建立新的 IInterruptSync 物件。 在此情況下, pResourceList 指向的資源清單會提供新 IInterruptSync 物件所使用的中斷資源。
不論是哪一種情況,Init方法都會在 IInterruptSync 物件上呼叫 RegisterServiceRoutine 方法,以便將迷你埠驅動程式的中斷服務例程新增至 ISR 清單 (ISR) 。 當配接器驅動程式稍後釋放埠物件時,埠驅動程序會釋放其 IInterruptSync 對象的參考。

pUnknownAdapterpResourceList 參數與適配卡驅動程式先前傳遞為參數的指標值相同, (請參閱 IPortInit::Init) 。

pUnknownAdapterpResourceListpPortppServiceGroup 參數會遵循 COM 對象的參考計數慣例

規格需求

需求
目標平台 桌面
標頭 dmusicks.h (包含 Dmusicks.h)
IRQL PASSIVE_LEVEL

另請參閱

IInterruptSync

IMiniportDMus

IPort::Init

IPortDMus

IPortDMus::Notify

IResourceList

IServiceGroup

PcNewInterruptSync