Share via


Metodo IWiaDevMgr2::GetImageDlg

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

Sintassi

HRESULT GetImageDlg(
  [in]      LONG      lFlags,
  [in]      BSTR      bstrDeviceID,
  [in]      HWND      hwndParent,
  [in]      BSTR      bstrFolderName,
  [in]      BSTR      bstrFilename,
  [in]      LONG      *plNumFiles,
  [in]      BSTR      **ppbstrFilePaths,
  [in, out] IWiaItem2 **ppItem
);

Parametri

lFlags [in]

Tipo: LONG

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

Flag Significato
0 Comportamento predefinito.
WIA_DEVICE_DIALOG_USE_COMMON_UI Usare l'interfaccia utente di sistema anziché l'interfaccia utente fornita dal fornitore. Se l'interfaccia utente del sistema non è disponibile, viene usata l'interfaccia utente del fornitore. Se nessuna dell'interfaccia utente è disponibile, la funzione restituisce E_NOTIMPL.

 

bstrDeviceID [in]

Tipo: BSTR

Specifica lo scanner da usare.

hwndParent [in]

Tipo: HWND

Handle della finestra proprietaria della finestra di dialogo Recupera immagine .

bstrFolderName [in]

Tipo: BSTR

Specifica il nome della cartella in cui vengono archiviati i file analizzati.

bstrFilename [in]

Tipo: BSTR

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

plNumFiles [in]

Tipo: LONG*

Puntatore al numero di file da analizzare.

ppbstrFilePaths [in]

Tipo: BSTR**

Indirizzo di un puntatore a una matrice di percorsi per i file analizzati. Inizializzare il puntatore per puntare a una matrice di dimensioni zero (0) prima che venga chiamato IWiaDevMgr2::GetImageDlg . Vedere Osservazioni.

ppItem [in, out]

Tipo: IWiaItem2**

Indirizzo di un puntatore a IWiaItem2 da cui sono state analizzate le immagini.

Valore restituito

Tipo: HRESULT

IWiaDevMgr2::GetImageDlg restituisce S_OK se i dati vengono trasferiti correttamente, restituisce S_FALSE se l'utente annulla la finestra di dialogo o restituisce un errore COM standard.

Nota

Il parametro ppbstrFilePaths non è necessariamente vuoto, se la funzione restituisce S_FALSE. Se l'utente annulla, le pagine che hanno completato l'analisi vengono elaborate e restituite in ppbstrFilePaths. Anche se non vengono usati, è necessario liberare la matrice. Vedere Osservazioni.

 

Commenti

Se l'applicazione passa NULL per il valore del parametro bstrDeviceID , IWiaDevMgr2::GetImageDlg visualizza la finestra di dialogo Seleziona dispositivo in modo che l'utente possa selezionare il dispositivo di input WIA 2.0.

Usare una voce di menu denominata Dallo scanner nel menu File in modo che le selezioni di dispositivi e immagini siano disponibili nell'applicazione.

Chiamare SysFreeString in ogni BSTR nella matrice a cui ppbstrFilePaths[i] punta e chiamare CoTaskMemFree nella matrice stessa per liberare memoria associata. Se S_FALSE viene restituito, verificare se il valore che plNumFiles punta a non è zero. Se il valore non è zero, liberare le risorse ppbstrFilePaths[i] nell'applicazione, perché l'utente potrebbe annullare dopo l'analisi di una o più pagine. Inizializzare plNumFiles su zero prima di chiamare IWiaDevMgr2::GetImageDlg. Se plNumFiles non viene inizializzato su zero e un errore nell'infrastruttura COM causa la restituzione della funzione S_FALSE prima che IWiaDevMgr2::GetImageDlg venga chiamato, plNumFiles avrà un valore di garbage fuorviante.

La finestra di dialogo deve avere diritti sufficienti per bstrFolderName in modo che possa salvare i file con nomi di file univoci. Proteggere la cartella con un elenco di controllo di accesso (ACL) perché contiene i dati utente.

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista [solo app desktop]
Server minimo supportato
Windows Server 2008 [solo app desktop]
Intestazione
Wia.h