共用方式為


IWiaDevMgr::GetImageDlg 方法 (wia_xp.h)

IWiaDevMgr::GetImageDlg 方法會顯示一或多個對話框,讓用戶能夠從 Windows Image Acquire (WIA) 裝置取得影像,並將映像寫入指定的檔案。 此方法結合了 IWiaDevMgr::SelectDeviceDlg 的功能,以在單一 API 呼叫中完全封裝映射擷取。

語法

HRESULT GetImageDlg(
  [in]      HWND     hwndParent,
  [in]      LONG     lDeviceType,
  [in]      LONG     lFlags,
  [in]      LONG     lIntent,
  [in]      IWiaItem *pItemRoot,
  [in]      BSTR     bstrFilename,
  [in, out] GUID     *pguidFormat
);

參數

[in] hwndParent

類型: HWND

擁有 [ 取得影像 ] 對話框之視窗的句柄。

[in] lDeviceType

類型: LONG

指定要使用的 WIA 裝置類型。 設定為 StiDeviceTypeDefaultStiDeviceTypeScannerStiDeviceTypeDigitalCamera

[in] lFlags

類型: LONG

指定對話框行為。 可以設定為下列值:

旗標 意義
0 預設行為。
WIA_SELECT_DEVICE_NODEFAULT 強制這個方法顯示 [ 選取裝置] 對話框。 如需詳細資訊,請參閱此參考頁面的一節。
WIA_DEVICE_DIALOG_SINGLE_IMAGE 在 [裝置影像擷取] 對話框中,將影像選取範圍限製為單一影像。
WIA_DEVICE_DIALOG_USE_COMMON_UI 如果有的話,請使用系統 UI,而不是廠商提供的 UI。 如果系統 UI 無法使用,則會使用廠商 UI。 如果兩個UI都無法使用,函式會傳回E_NOTIMPL。

[in] lIntent

類型: LONG

指定影像要代表的數據類型。 如需影像意圖值的清單,請參閱 影像意圖常數

[in] pItemRoot

類型: IWiaItem*

IWiaDevMgr::CreateDevice 所傳回之 IWiaItem 物件的階層式樹狀結構的介面指標。

[in] bstrFilename

類型: BSTR

指定寫入影像資料的檔名。

[in, out] pguidFormat

類型: GUID*

在輸入時,包含 GUID 的指標,指定要使用的格式。 在輸出上,保留所使用的格式。 傳遞IID_NULL以使用預設格式。

傳回值

類型: HRESULT

如果使用者取消裝置選取範圍或影像擷取對話框,則IWiaDevMgr::GetImageDlg 會傳回S_FALSE,WIA_S_NO_DEVICE_AVAILABLE如果目前沒有 WIA 裝置可用,E_NOTIMPL如果沒有 UI 可用,則S_OK是否成功傳輸數據。

IWiaDevMgr::GetImageDlg 會傳回 錯誤碼中指定的值,如果錯誤碼以外的任何原因失敗,則傳回標準 COM 錯誤。

備註

叫用這個方法會顯示一個對話框,讓用戶能夠取得影像。 它也可以顯示 IWiaDevMgr::SelectDeviceDlg 方法所建立的 [選取裝置] 對話框。

如果應用程式針對 pItemRoot 參數的值傳遞 NULL,IWiaDevMgr::GetImageDlg 會顯示 [選取裝置] 對話框,讓用戶選取 WIA 輸入設備。 如果應用程式透過 pItemRoot 參數傳遞裝置的專案樹狀目錄指標來指定 WIA 輸入設備, 則 IWiaDevMgr::GetImageDlg 不會顯示 [ 選取裝置 ] 對話方塊。 相反地,它會使用指定的輸入設備來取得映像。

使用 [ 選取裝置] 對話框時,應用程式可以指定 WIA 輸入設備的類型。 若要這樣做,必須將 pItemRoot 參數設定為 NULL ,並透過 lDeviceType 參數傳遞適當的常數。 如果指定的類型有多個裝置存在, IWiaDevMgr::GetImageDlg 會顯示 [ 選取裝置 ] 對話框,讓用戶選取要使用的裝置。

如果 IWiaDevMgr::GetImageDlg 只找到一個相符的裝置,它就不會顯示 [ 選取裝置 ] 對話框。 相反地,它會選取相符的裝置。 您可以覆寫此行為,並強制 IWiaDevMgr::GetImageDlg 顯示 [ 選取裝置 ] 對話框,方法是傳遞 WIA_SELECT_DEVICE_NODEFAULT 作為 lFlags 參數的值。

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

對話框必須具有 bstrFilename 資料夾的足夠許可權,才能以唯一的檔名儲存盤案。 資料夾也應該受到訪問控制清單的保護, (ACL) ,因為它包含用戶數據。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional、Windows XP [僅限桌面應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 wia_xp.h (包含 Wia.h)
程式庫 Wiaguid.lib
Dll Wiaservc.dll