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

O método IWiaDataTransfer::idtGetData recupera arquivos completos de um dispositivo WIA (Aquisição de Imagens do Windows).

Sintaxe

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

Parâmetros

[in, out] pMedium

Tipo: LPSTGMEDIUM

Ponteiro para a estrutura STGMEDIUM .

[in] pIWiaDataCallback

Tipo: IWiaDataCallback*

Ponteiro para a interface IWiaDataCallback .

Valor retornado

Tipo: HRESULT

Esse método pode retornar qualquer um dos seguintes valores:

Valor Retornado Significado
E_INVALIDARG Um ou mais parâmetros para esse método contêm dados inválidos.
E_OUTOFMEMORY Esse método não pode alocar memória suficiente para concluir sua operação.
E_UNEXPECTED Ocorreu um erro desconhecido.
S_FALSE O aplicativo cancelou a operação.
S_OK A imagem foi adquirida com êxito.
STG_E_MEDIUMFULL O meio de armazenamento que o aplicativo está usando para adquirir a imagem está cheio.
WIA_S_NO_DEVICE_AVAILABLE Não há dispositivos de hardware WIA anexados ao computador do usuário.
 

Esse método retornará um valor especificado em Códigos de Erro ou um erro COM padrão se falhar por qualquer motivo diferente daqueles especificados na tabela anterior.

Comentários

Na maioria dos aspectos, esse método opera de forma idêntica ao método IDataObject::GetData . A principal diferença é que IWiaDataTransfer::idtGetData fornece um parâmetro adicional para um ponteiro para a interface IWiaDataCallback . Os aplicativos usam esse parâmetro opcional para obter notificações status durante a transferência de dados. Se nenhuma status notificações for necessária, ela deverá ser definida como zero.

O formato da transferência de dados é determinado pelos valores das propriedades WIA_IPA_FORMAT e WIA_IPA_TYMED do item. O aplicativo define essas propriedades com chamadas para o método IWiaPropertyStorage::WriteMultiple .

Ao contrário do método IWiaDataTransfer::idtGetBandedData , IWiaDataTransfer::idtGetData transfere um arquivo completo de um dispositivo WIA para um aplicativo em vez de apenas uma única faixa de dados. O parâmetro pMedium é um ponteiro para a estrutura STGMEDIUM que contém informações sobre o meio de armazenamento a ser usado para a transferência de dados. Os programas usam o parâmetro pIWiaDataCallback para passar esse método um ponteiro para a interface IWiaDataCallback . Periodicamente, esse método usará o ponteiro de interface para invocar o método BandedDataCallback e fornecer ao aplicativo informações status sobre a transferência de dados em andamento.

Passe NULL como o valor do membro lpszFileName da estrutura pMedium para permitir que o WIA determine o nome do arquivo e o local do novo arquivo. Após o retorno, o membro lpszFileName da estrutura pMedium contém o local e o nome do novo arquivo.

Se o valor retornado por esse método for um valor COM SUCCESS ou a transferência for uma transferência de arquivo de várias páginas e o código de erro retornado for WIA_ERROR_PAPER_JAM, WIA_ERROR_PAPER_EMPTY ou WIA_ERROR_PAPER_PROBLEM, o WIA não excluirá o arquivo.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wia_xp.h (inclua Wia.h)
Biblioteca Wiaguid.lib
DLL Wiaservc.dll