IPort::Init 方法 (portcls.h)
Init 方法會初始化埠驅動程式。
語法
NTSTATUS Init(
PVOID DeviceObject,
PVOID Irp,
PUNKNOWN UnknownMiniport,
PUNKNOWN UnknownAdapter,
PRESOURCELIST ResourceList
);
參數
DeviceObject
傳遞為配接器驅動程式裝置啟動例程之自變數之裝置物件的指標。 裝置對像是類型為 DEVICE_OBJECT 的系統結構。
Irp
傳遞為配接器驅動程式裝置啟動例程之自變數之 IRP 的指標。
UnknownMiniport
未初始化迷你埠物件的IUnknown 介面指標。 此介面會查詢埠驅動程式所支援的特定迷你埠介面介面,並呼叫該介面上的初始化函式。
UnknownAdapter
用於初始化埠驅動程式之配接器物件的 IUnknown 介面指標。 這個指標是選擇性的,可以指定為 NULL。 如需詳細資訊,請參閱下列一節。
ResourceList
作為自變數傳遞至配接器驅動程式的裝置啟動例程之 IResourceList 物件的指標。 將此參考傳遞至迷你埠驅動程序之後,埠驅動程式可以自由檢查資源清單的內容,但不會修改此列表的內容。
傳回值
此方法會傳回NTSTATUS,如果呼叫成功,則包含STATUS_SUCCESS。 否則,方法會傳回適當的錯誤碼。
言論
UnknownMiniport 所指定的迷你埠對象必須支援埠驅動程式所需的迷你埠介面介面,否則 Init 呼叫將會失敗。
在 IPort::Init 呼叫期間,埠驅動程式會呼叫迷你埠驅動程式的初始化方法(例如,請參閱 IMiniportWavePci::Init)。
參數 UnknownAdapter 會指向配接器物件的 COM 介面。 配接器驅動程式通常會在其裝置啟動例程內建立此物件,這是作系統呼叫啟動裝置的例程(請參閱啟動順序)。 如需配接器物件的介面範例,請參閱 sysvad 音訊驅動程式範例中的 CMiniportWaveRT::Init
定義和實作。
UnknownMiniport、UnknownAdapter 和 ResourceList 參數遵循 COM 物件的標準參考計數慣例。
要求
要求 | 價值 |
---|---|
標頭 | portcls.h |
IRQL | PASSIVE_LEVEL |