IWiaMiniDrv::d rvInitializeWia 方法 (wiamindr_lh.h)
IWiaMiniDrv::d rvInitializeWia 方法會初始化 minidriver,並建置代表裝置的驅動程序專案樹狀結構。
語法
HRESULT drvInitializeWia(
BYTE *__MIDL__IWiaMiniDrv0000,
LONG __MIDL__IWiaMiniDrv0001,
BSTR __MIDL__IWiaMiniDrv0002,
BSTR __MIDL__IWiaMiniDrv0003,
IUnknown *__MIDL__IWiaMiniDrv0004,
IUnknown *__MIDL__IWiaMiniDrv0005,
IWiaDrvItem **__MIDL__IWiaMiniDrv0006,
IUnknown **__MIDL__IWiaMiniDrv0007,
LONG *__MIDL__IWiaMiniDrv0008
);
參數
__MIDL__IWiaMiniDrv0000
bstrDeviceID [in]
指定包含裝置唯一識別子的字串。
__MIDL__IWiaMiniDrv0001
bstrRootFullItemName [in]
指定包含根專案完整名稱的字串。
__MIDL__IWiaMiniDrv0002
lFlags [in]
保留的。 設定為零。
__MIDL__IWiaMiniDrv0003
pIUnknownOuter [in, optional]
(選擇性) 指向可接收 IUnknown 介面地址的記憶體位置。
__MIDL__IWiaMiniDrv0004
pStiDevice [in, optional]
__MIDL__IWiaMiniDrv0005
pWiasContext [in]
WIA 專案內容的指標。
__MIDL__IWiaMiniDrv0006
plDevErrVal [out]
指向將接收此方法狀態代碼的記憶體位置。 如果這個方法傳回 S_OK,則儲存的值會是零。 否則,minidriver 特定的錯誤碼會儲存在此參數所指向的位置。
__MIDL__IWiaMiniDrv0007
ppIDrvItemRoot [out, optional]
指向將接收 IWiaDrvItem 介面地址的記憶體位置,也就是根專案的介面。
__MIDL__IWiaMiniDrv0008
ppIUnknownInner [out, optional]
(選擇性) 指向可接收 IUnknown 介面地址的記憶體位置。 如果 minidriver 具有無法透過 IWiaMiniDrv 介面存取的功能,廠商可以在minidriver上建立個別的介面。 此參數提供該功能的存取權。
傳回值
成功時,方法應該會傳回 S_OK ,並清除 plDevErrVal 所指向的裝置錯誤值。 如果方法失敗,它應該會傳回標準 COM 錯誤碼,並將minidriver特定的錯誤碼值放在 plDevErrVal 所指向的記憶體中。
plDevErrVal 所指向的值可以藉由呼叫 IWiaMiniDrv::d rvGetDeviceErrorStr 來轉換成字符串。
備註
此方法應該初始化任何私人結構,並建立驅動程序專案樹狀結構。 如需迷你驅動程式通常會在此方法中執行之步驟的詳細資訊,請參閱 初始化 WIA Minidriver 和 建立 WIA 驅動程式專案樹狀結構。
WIA 服務會呼叫 IWiaMiniDrv::d rvInitializeWia 方法,以回應用戶端對 CreateDevice 函式的呼叫,這表示針對每個新的用戶端連線呼叫此方法一次。
例如,如果使用者以滑鼠右鍵按兩下 [我的計算機] 中的 WIA 掃描儀圖示,殼層會呼叫 CreateDevice,這會產生迷你驅動程式的 IWiaMiniDrv::d rvInitializeWia 方法的呼叫。 如果使用者接著執行 WIA 擷取精靈,它也會呼叫 CreateDevice。 每次呼叫 CreateDevice 時,minidriver 上的 IWiaMiniDrv::d rvInitializeWia 方法都會有對應的呼叫。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | wiamindr_lh.h (包括 Wiamindr.h) |
另請參閱
IWiaMiniDrv::d rvGetDeviceErrorStr