Condividi tramite


Metodo IWiaDevMgr::SelectDeviceDlg (wia_xp.h)

IWiaDevMgr::SelectDeviceDlg visualizza una finestra di dialogo che consente all'utente di selezionare un dispositivo hardware per l'acquisizione di immagini.

Sintassi

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

Parametri

[in] hwndParent

Tipo: HWND

Handle della finestra proprietaria della finestra di dialogo Seleziona dispositivo .

[in] lDeviceType

Tipo: LONG

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

[in] lFlags

Tipo: LONG

Specifica il comportamento della finestra di dialogo. Può essere impostato su uno dei valori seguenti:

Costante Significato
0 Usare il comportamento predefinito
WIA_SELECT_DEVICE_NODEFAULT Visualizzare la finestra di dialogo anche se è presente un solo dispositivo corrispondente. Per altre informazioni, vedere la sezione Osservazioni di questa pagina di riferimento.

[in, out] pbstrDeviceID

Tipo: BSTR*

Nell'output riceve una stringa che contiene la stringa di identificatore del dispositivo. In input, passare l'indirizzo di un puntatore se queste informazioni sono necessarie o NULL se non è necessario.

[out, retval] ppItemRoot

Tipo: IWiaItem**

Riceve l'indirizzo di un puntatore all'interfaccia IWiaItem dell'elemento radice dell'albero che rappresenta il dispositivo WIA selezionato. Se non vengono trovati dispositivi, contiene il valore NULL.

Valore restituito

Tipo: HRESULT

Questo metodo restituisce i valori seguenti:

Valore restituito Significato
S_OK Un dispositivo è stato selezionato correttamente.
S_FALSE L'utente ha annullato la finestra di dialogo.
WIA_S_NO_DEVICE_AVAILABLE Non sono presenti dispositivi hardware WIA che corrispondono alle specifiche fornite nel parametro lDeviceType .

Commenti

Questo metodo crea e visualizza la finestra di dialogo Seleziona dispositivo in modo che l'utente possa selezionare un dispositivo WIA per l'acquisizione di immagini. Se un dispositivo è selezionato correttamente, il metodo IWiaDevMgr::SelectDeviceDlg crea un albero gerarchico di oggetti IWiaItem per il dispositivo. Archivia un puntatore all'interfaccia IWiaItem dell'elemento radice nel parametro ppItemRoot.

È possibile visualizzare determinati tipi di dispositivi all'utente specificando i tipi di dispositivo tramite il parametro lDeviceType . Se solo un dispositivo soddisfa la specifica, IWiaDevMgr::SelectDeviceDlg non visualizza la finestra di dialogo Seleziona dispositivo . Crea invece l'albero IWiaItem per il dispositivo e archivia un puntatore all'interfaccia IWiaItem dell'elemento radice nel parametro ppItemRoot. È possibile eseguire l'override di questo comportamento e forzare IWiaDevMgr::SelectDeviceDlg per visualizzare la finestra di dialogo Seleziona dispositivo passando WIA_SELECT_DEVICE_NODEFAULT come valore per il parametro lFlags .

Se più dispositivi WIA corrispondono alla specifica, tutti i dispositivi corrispondenti vengono visualizzati nella finestra di dialogo Seleziona dispositivo in modo che l'utente possa sceglierne uno.

Le applicazioni devono chiamare il metodo IUnknown::Release sui puntatori di interfaccia ricevuti tramite il parametro ppItemRoot .

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

Requisiti

   
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