Compartir a través de


Método IWiaDevMgr::GetImageDlg (wia_xp.h)

El método IWiaDevMgr::GetImageDlg muestra uno o varios cuadros de diálogo que permiten a un usuario adquirir una imagen de un dispositivo windows Image Acquisition (WIA) y escribir la imagen en un archivo especificado. Este método combina la funcionalidad de IWiaDevMgr::SelectDeviceDlg para encapsular completamente la adquisición de imágenes en una sola llamada API.

Sintaxis

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

Parámetros

[in] hwndParent

Tipo: HWND

Identificador de la ventana que posee el cuadro de diálogo Obtener imagen .

[in] lDeviceType

Tipo: LONG

Especifica el tipo de dispositivo WIA que se va a usar. Se establece en StiDeviceTypeDefault, StiDeviceTypeScanner o StiDeviceTypeDigitalCamera.

[in] lFlags

Tipo: LONG

Especifica el comportamiento del cuadro de diálogo. Se puede establecer en los valores siguientes:

Marca Significado
0 Comportamiento predeterminado.
WIA_SELECT_DEVICE_NODEFAULT Forzar este método para mostrar el cuadro de diálogo Seleccionar dispositivo . Para obtener más información, vea la sección Comentarios de esta página de referencia.
WIA_DEVICE_DIALOG_SINGLE_IMAGE Restrinja la selección de imágenes a una sola imagen en el cuadro de diálogo de adquisición de imágenes de dispositivo.
WIA_DEVICE_DIALOG_USE_COMMON_UI Use la interfaz de usuario del sistema, si está disponible, en lugar de la interfaz de usuario proporcionada por el proveedor. Si la interfaz de usuario del sistema no está disponible, se usa la interfaz de usuario del proveedor. Si ninguna interfaz de usuario está disponible, la función devuelve E_NOTIMPL.

[in] lIntent

Tipo: LONG

Especifica qué tipo de datos se va a representar la imagen. Para obtener una lista de valores de intención de imagen, consulte Constantes de intención de imagen.

[in] pItemRoot

Tipo: IWiaItem*

Puntero a la interfaz del árbol jerárquico de objetos IWiaItem devueltos por IWiaDevMgr::CreateDevice.

[in] bstrFilename

Tipo: BSTR

Especifica el nombre del archivo en el que se escriben los datos de imagen.

[in, out] pguidFormat

Tipo: GUID*

En la entrada, contiene un puntero a un GUID que especifica el formato que se va a usar. En la salida, contiene el formato usado. Pase IID_NULL para usar el formato predeterminado.

Valor devuelto

Tipo: HRESULT

IWiaDevMgr::GetImageDlg devuelve S_FALSE si el usuario cancela los cuadros de diálogo de selección de dispositivos o de adquisición de imágenes, WIA_S_NO_DEVICE_AVAILABLE si no hay ningún dispositivo WIA disponible actualmente, E_NOTIMPL si no hay ninguna interfaz de usuario disponible y S_OK si los datos se transfieren correctamente.

IWiaDevMgr::GetImageDlg devuelve un valor especificado en Códigos de error, o un error COM estándar si se produce un error por cualquier motivo distinto de los especificados.

Comentarios

Al invocar este método se muestra un cuadro de diálogo que permite a los usuarios adquirir imágenes. También puede mostrar el cuadro de diálogo Seleccionar dispositivo creado por el método IWiaDevMgr::SelectDeviceDlg .

Si la aplicación pasa NULL para el valor del parámetro pItemRoot , IWiaDevMgr::GetImageDlg muestra el cuadro de diálogo Seleccionar dispositivo que permite al usuario seleccionar el dispositivo de entrada WIA. Si la aplicación especifica un dispositivo de entrada WIA pasando un puntero al árbol de elementos del dispositivo a través del parámetro pItemRoot , IWiaDevMgr::GetImageDlg no muestra el cuadro de diálogo Seleccionar dispositivo . En su lugar, usará el dispositivo de entrada especificado para adquirir la imagen.

Al usar el cuadro de diálogo Seleccionar dispositivo , las aplicaciones pueden especificar tipos de dispositivos de entrada WIA. Para ello, deben establecer el parámetro pItemRoot en NULL y pasar las constantes adecuadas a través del parámetro lDeviceType . Si hay más de un dispositivo del tipo especificado, IWiaDevMgr::GetImageDlg muestra el cuadro de diálogo Seleccionar dispositivo para permitir al usuario seleccionar qué dispositivo se usará.

Si IWiaDevMgr::GetImageDlg encuentra solo un dispositivo coincidente, no mostrará el cuadro de diálogo Seleccionar dispositivo . En su lugar, seleccionará el dispositivo coincidente. Puede invalidar este comportamiento y forzar que IWiaDevMgr::GetImageDlg muestre el cuadro de diálogo Seleccionar dispositivo pasando WIA_SELECT_DEVICE_NODEFAULT como valor para el parámetro lFlags .

Se recomienda que las aplicaciones hagan que la selección de dispositivos e imágenes esté disponible a través de un elemento de menú denominado Desde escáner o cámara en el menú Archivo .

El cuadro de diálogo debe tener suficientes derechos en la carpeta para bstrFilename que puede guardar el archivo con un nombre de archivo único. La carpeta también debe protegerse con una lista de control de acceso (ACL) porque contiene datos de usuario.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wia_xp.h (incluya Wia.h)
Library Wiaguid.lib
Archivo DLL Wiaservc.dll