共用方式為


IWiaDevMgr2::SelectDeviceDlg 方法

顯示一個對話方塊,讓使用者選取硬體裝置以進行影像擷取。

語法

HRESULT SelectDeviceDlg(
  [in]          HWND      hwndParent,
  [in]          LONG      lDeviceType,
  [in]          LONG      lFlags,
  [in, out]     BSTR      *pbstrDeviceID,
  [out, retval] IWiaItem2 **ppItemRoot
);

參數

hwndParent [in]

類型: HWND

指定 [ 選取裝置 ] 對話方塊的父視窗。

lDeviceType [in]

類型: LONG

指定要使用的 WIA 2.0 裝置類型。 如需可能值的清單,請參閱 WIA 裝置類型規範

lFlags [in]

類型: LONG

指定對話方塊的行為。 此值可以是下列其中一項。

0

使用預設行為。

WIA_SELECT_DEVICE_NODEFAULT

即使只有一個相符的裝置,仍會顯示對話方塊。

pbstrDeviceID [in, out]

類型: BSTR*

在輸出中,接收包含裝置識別碼字串的字串。 在輸入時,如果需要此資訊,則傳遞指標的位址,如果不需要則為 Null

ppItemRoot [out, retval]

類型: IWiaItem2**

接收階層式樹狀結構根專案之 IWiaItem2 介面指標的位址,此根專案代表選取的 WIA 2.0 裝置。 如果找不到任何裝置,則會收到 Null

傳回值

類型: HRESULT

這個方法可以傳回其中一個值。

傳回碼 描述
S_OK
已成功選取裝置。
S_FALSE
使用者已取消對話方塊。
WIA_S_NO_DEVICE_AVAILABLE
沒有 WIA 2.0 硬體裝置符合 lDeviceType 參數中指定的規格。

 

備註

此方法會建立並顯示 [ 選取裝置 ] 對話方塊,讓使用者可以選取 WIA 2.0 裝置進行影像擷取。 如果已成功選取裝置, IWiaDevMgr2::SelectDeviceDlg 方法會為裝置建立 IWiaItem2 物件的階層式樹狀結構。 它會將根專案的 IWiaItem2 介面指標儲存在 ppItemRoot參數中。

應用程式可以透過 lDeviceType 參數指定裝置類型,將向使用者顯示的裝置限制為特定類型。 如果只有一部裝置符合規格, IWiaDevMgr2::SelectDeviceDlg 不會顯示 [ 選取裝置 ] 對話方塊。 相反地,它會建立裝置的 IWiaItem2 樹狀結構,並將根專案的 IWiaItem2 介面指標儲存在 ppItemRoot參數中。 您可以覆寫此行為,並強制 IWiaDevMgr2::SelectDeviceDlg 顯示對話方塊,方法是將 WIA_SELECT_DEVICE_NODEFAULT 指定為 lFlags 參數的值。 如果多個 WIA 2.0 裝置符合規格,所有相符的裝置都會顯示在 [ 選取裝置 ] 對話方塊中,讓使用者可以選擇一個。

應用程式必須在透過ppItemRoot參數收到的介面指標上呼叫IUnknown::Release方法。

注意

建議應用程式透過 [檔案] 功能表上名為[從掃描器] 的功能表項目,來選取裝置和影像。

 

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2008 [僅限傳統型應用程式]
標頭
Wia.h
Idl
Wia.idl