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