Compartilhar via


Método IWiaErrorHandler::ReportStatus (wia_lh.h)

O método ReportStatus exibe informações sobre um erro ou status durante uma transferência. Em alguns casos, esse método permite que o usuário se recupere de um erro.

Sintaxe

HRESULT ReportStatus(
  [in] LONG      lFlags,
  [in] HWND      hwndParent,
  [in] IWiaItem2 *pWiaItem2,
  [in] HRESULT   hrStatus,
  [in] LONG      lPercentComplete
);

Parâmetros

[in] lFlags

Atualmente não utilizado. Deve ser definido como zero.

[in] hwndParent

O chamador forneceu o identificador da janela que deve ser usada como a janela pai para qualquer caixa de diálogo. Se isso estiver definido como NULL, nenhuma caixa de diálogo deverá ser exibida.

[in] pWiaItem2

Ponteiro para o itemIWiaItem2 que está sendo transferido.

[in] hrStatus

Variável HRESULT que contém o código status recebido pelo método de transferência WIA, por exemplo, o método IWiaDataCallback::BandedDataCallback.

[in] lPercentComplete

Tamanho dos dados, em bytes, ao qual o ponteiro pbData se refere.

Retornar valor

Retorna um código de erro COM padrão se o erro não puder ser recuperado ou se o usuário optar por anular a transferência em resposta à caixa de diálogo exibida. Há informações adicionais sobre os valores retornados na seção comentários. Caso contrário, esse método retornará um dos seguintes valores:

Código de retorno Descrição
S_OK A ação apropriada foi tomada para corrigir o erro e a transferência pode continuar.
S_FALSE Nenhuma ação foi tomada para lidar com o erro ou relatar status ao usuário.

Comentários

O objeto de retorno de chamada de proxy COM chama o método WiaErrorHandler::ReportStatus quando o driver envia uma mensagem IT_MSG_DEVICE_STATUS para o método IWiaDataCallback::BandedDataCallback . A caixa de diálogo exibida por esse método fornece ao usuário informações de erro ou status e, possivelmente, dá a oportunidade de se recuperar do erro e continuar a transferência. A interface do usuário deve fornecer apenas uma caixa de diálogo informativa e uma chance de cancelar a transferência se o HRESULT for SEVERITY_SUCCESS.

Um driver que implementa esse método deve exibir uma caixa de diálogo modal, de propriedade de hwndParent, em resposta a um valor de hrStatus para o qual FAILED(hrStatus) é avaliado como TRUE. Se FAILED(hrStatus) for avaliado como FALSE, o valor em hrStatus representará um atraso não fatal e a caixa de diálogo exibida deverá ser modelagem. A caixa de diálogo deve ser removida quando o status da transferência for alterado. Um manipulador de erros deve retornar S_FALSE para valores desconhecidos de hrStatus.

O parâmetro hrStatus é definido como WIA_STATUS_TRANSFER_BEGIN para informar ao manipulador que uma transferência foi iniciada. Ele é definido como WIA_STATUS_TRANSFER_END quando a transferência é concluída.

Se hrStatus for S_OK, a transferência de dados será retomada e nenhum atraso ou erro estará em vigor no momento.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho wia_lh.h (inclua Wia_lh.h)

Confira também

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription