共用方式為


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]

指向 IStiDevice COM 介面

__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)

另請參閱

IWiaDrvItem::AddItemToFolder

IWiaMiniDrv

IWiaMiniDrv::d rvGetDeviceErrorStr

IWiaMiniDrv::d rvUnInitializeWia

wiasCreateDrvItem