Share via


Metodo IWiaDevMgr::GetImageDlg (wia_xp.h)

Il metodo IWiaDevMgr::GetImageDlg visualizza una o più finestre di dialogo che consentono a un utente di acquisire un'immagine da un dispositivo Windows Image Acquisition (WIA) e scrivere l'immagine in un file specificato. Questo metodo combina la funzionalità di IWiaDevMgr::SelectDeviceDlg per incapsulare completamente l'acquisizione di immagini all'interno di una singola chiamata API.

Sintassi

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

Parametri

[in] hwndParent

Tipo: HWND

Handle della finestra proprietaria della finestra di dialogo Recupera immagine .

[in] lDeviceType

Tipo: LONG

Specifica il tipo di dispositivo WIA da usare. È impostato su StiDeviceTypeDefault, StiDeviceTypeScanner o StiDeviceTypeDigitalCamera.

[in] lFlags

Tipo: LONG

Specifica il comportamento della finestra di dialogo. Può essere impostato sui valori seguenti:

Contrassegno Significato
0 Comportamento predefinito.
WIA_SELECT_DEVICE_NODEFAULT Forzare questo metodo per visualizzare la finestra di dialogo Seleziona dispositivo . Per altre informazioni, vedere la sezione Osservazioni di questa pagina di riferimento.
WIA_DEVICE_DIALOG_SINGLE_IMAGE Limitare la selezione dell'immagine a una singola immagine nella finestra di dialogo di acquisizione dell'immagine del dispositivo.
WIA_DEVICE_DIALOG_USE_COMMON_UI Usare l'interfaccia utente di sistema, se disponibile, anziché l'interfaccia utente fornita dal fornitore. Se l'interfaccia utente di sistema non è disponibile, viene usata l'interfaccia utente del fornitore. Se nessuna delle due interfacce utente è disponibile, la funzione restituisce E_NOTIMPL.

[in] lIntent

Tipo: LONG

Specifica il tipo di dati che l'immagine deve rappresentare. Per un elenco dei valori delle finalità dell'immagine, vedere Costanti finalità immagine.

[in] pItemRoot

Tipo: IWiaItem*

Puntatore all'interfaccia dell'albero gerarchico degli oggetti IWiaItem restituiti da IWiaDevMgr::CreateDevice.

[in] bstrFilename

Tipo: BSTR

Specifica il nome del file in cui vengono scritti i dati dell'immagine.

[in, out] pguidFormat

Tipo: GUID*

In input, contiene un puntatore a un GUID che specifica il formato da usare. Nell'output contiene il formato usato. Passare IID_NULL per usare il formato predefinito.

Valore restituito

Tipo: HRESULT

IWiaDevMgr::GetImageDlg restituisce S_FALSE se l'utente annulla le finestre di dialogo di selezione del dispositivo o acquisizione di immagini, WIA_S_NO_DEVICE_AVAILABLE se non è attualmente disponibile alcun dispositivo WIA, E_NOTIMPL se non è disponibile alcuna interfaccia utente e S_OK se i dati vengono trasferiti correttamente.

IWiaDevMgr::GetImageDlg restituisce un valore specificato in Codici di errore o un errore COM standard se ha esito negativo per qualsiasi motivo diverso da quelli specificati.

Commenti

Richiamando questo metodo viene visualizzata una finestra di dialogo che consente agli utenti di acquisire immagini. Può anche visualizzare la finestra di dialogo Seleziona dispositivo creata dal metodo IWiaDevMgr::SelectDeviceDlg .

Se l'applicazione passa NULL per il valore del parametro pItemRoot , IWiaDevMgr::GetImageDlg visualizza la finestra di dialogo Seleziona dispositivo che consente all'utente di selezionare il dispositivo di input WIA. Se l'applicazione specifica un dispositivo di input WIA passando un puntatore all'albero degli elementi del dispositivo tramite il parametro pItemRoot , IWiaDevMgr::GetImageDlg non visualizza la finestra di dialogo Seleziona dispositivo . Userà invece il dispositivo di input specificato per acquisire l'immagine.

Quando si usa la finestra di dialogo Seleziona dispositivo , le applicazioni possono specificare i tipi di dispositivi di input WIA. A tale scopo, è necessario impostare il parametro pItemRoot su NULL e passare le costanti appropriate tramite il parametro lDeviceType . Se sono presenti più dispositivi del tipo specificato, IWiaDevMgr::GetImageDlg visualizza la finestra di dialogo Seleziona dispositivo per consentire all'utente di selezionare il dispositivo che verrà usato.

Se IWiaDevMgr::GetImageDlg trova un solo dispositivo corrispondente, non verrà visualizzata la finestra di dialogo Seleziona dispositivo . Selezionerà invece il dispositivo corrispondente. È possibile eseguire l'override di questo comportamento e forzare IWiaDevMgr::GetImageDlg per visualizzare la finestra di dialogo Seleziona dispositivo passando WIA_SELECT_DEVICE_NODEFAULT come valore per il parametro lFlags .

È consigliabile che le applicazioni rendano disponibile la selezione di dispositivi e immagini tramite una voce di menu denominata Da scanner o fotocamera dal menu File .

La finestra di dialogo deve disporre di diritti sufficienti per la cartella per bstrFilename che può salvare il file con un nome file univoco. La cartella deve essere protetta anche con un elenco di controllo di accesso (ACL) perché contiene i dati utente.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional, Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wia_xp.h (include Wia.h)
Libreria Wiaguid.lib
DLL Wiaservc.dll