Compartir a través de


Método IWiaDataTransfer::idtGetData (wia_xp.h)

El método IWiaDataTransfer::idtGetData recupera archivos completos de un dispositivo windows Image Acquisition (WIA).

Sintaxis

HRESULT idtGetData(
  [in, out] LPSTGMEDIUM      pMedium,
  [in]      IWiaDataCallback *pIWiaDataCallback
);

Parámetros

[in, out] pMedium

Tipo: LPSTGMEDIUM

Puntero a la estructura STGMEDIUM .

[in] pIWiaDataCallback

Tipo: IWiaDataCallback*

Puntero a la interfaz IWiaDataCallback .

Valor devuelto

Tipo: HRESULT

Este método puede devolver cualquiera de los siguientes valores:

Valor devuelto Significado
E_INVALIDARG Uno o varios parámetros de este método contienen datos no válidos.
E_OUTOFMEMORY Este método no puede asignar memoria suficiente para completar su operación.
E_UNEXPECTED Se produjo un error desconocido.
S_FALSE La aplicación canceló la operación.
S_OK La imagen se adquirió correctamente.
STG_E_MEDIUMFULL El medio de almacenamiento que usa la aplicación para adquirir la imagen está llena.
WIA_S_NO_DEVICE_AVAILABLE No hay dispositivos de hardware WIA conectados al equipo del usuario.
 

Este método devolverá 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 en la tabla anterior.

Comentarios

En la mayoría de los aspectos, este método funciona de forma idéntica al método IDataObject::GetData . La principal diferencia es que IWiaDataTransfer::idtGetData proporciona un parámetro adicional para un puntero a la interfaz IWiaDataCallback . Las aplicaciones usan este parámetro opcional para obtener notificaciones de estado durante la transferencia de datos. Si no se necesitan notificaciones de estado, debe establecerse en cero.

El formato de la transferencia de datos viene determinado por los valores de las propiedades WIA_IPA_FORMAT y WIA_IPA_TYMED del elemento. La aplicación establece estas propiedades con llamadas al método IWiaPropertyStorage::WriteMultiple .

A diferencia del método IWiaDataTransfer::idtGetBandedData , IWiaDataTransfer::idtGetData transfiere un archivo completo de un dispositivo WIA a una aplicación en lugar de una sola banda de datos. El parámetro pMedium es un puntero a la estructura STGMEDIUM que contiene información sobre el medio de almacenamiento que se va a usar para la transferencia de datos. Los programas usan el parámetro pIWiaDataCallback para pasar este método un puntero a la interfaz IWiaDataCallback . Periódicamente, este método usará el puntero de interfaz para invocar el método BandedDataCallback y proporcionar a la aplicación información de estado sobre la transferencia de datos en curso.

Pase NULL como valor del miembro lpszFileName de la estructura pMedium para permitir que WIA determine el nombre de archivo y la ubicación del nuevo archivo. Tras la devolución, el miembro lpszFileName de la estructura pMedium contiene la ubicación y el nombre del nuevo archivo.

Si el valor devuelto por este método es un valor COM SUCCESS o la transferencia es una transferencia de archivos de varias páginas, y el código de error devuelto se WIA_ERROR_PAPER_JAM, WIA_ERROR_PAPER_EMPTY o WIA_ERROR_PAPER_PROBLEM, WIA no elimina el archivo.

Requisitos

   
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 (incluye Wia.h)
Library Wiaguid.lib
Archivo DLL Wiaservc.dll