Condividi tramite


Metodo IWiaErrorHandler::ReportStatus (wia_lh.h)

Il metodo ReportStatus visualizza informazioni su un errore o sullo stato durante un trasferimento. In alcuni casi questo metodo consente all'utente di ripristinare da un errore.

Sintassi

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

Parametri

[in] lFlags

Attualmente inutilizzato. Deve essere impostato su zero.

[in] hwndParent

Il chiamante ha fornito l'handle della finestra che deve essere usata come finestra padre per qualsiasi finestra di dialogo. Se questa opzione è impostata su NULL, non devono essere visualizzate finestre di dialogo.

[in] pWiaItem2

Puntatore all'elementoIWiaItem2 da trasferire.

[in] hrStatus

Variabile HRESULT contenente il codice di stato ricevuto dal metodo di trasferimento WIA, ad esempio il metodo IWiaDataCallback::BandedDataCallback .

[in] lPercentComplete

Le dimensioni dei dati, in byte, fanno riferimento al puntatore pbData .

Valore restituito

Restituisce un codice di errore COM standard se l'errore non può essere recuperato o se l'utente sceglie di interrompere il trasferimento in risposta alla finestra di dialogo visualizzata. Nella sezione osservazioni sono disponibili informazioni aggiuntive sui valori restituiti. In caso contrario, questo metodo restituisce uno dei valori seguenti:

Codice restituito Descrizione
S_OK È stata eseguita un'azione appropriata per correggere l'errore e il trasferimento può continuare.
S_FALSE Non è stata eseguita alcuna azione per gestire l'errore o segnalare lo stato dell'utente.

Commenti

L'oggetto callback proxy COM chiama il metodo WiaErrorHandler::ReportStatus quando il driver invia un messaggio di IT_MSG_DEVICE_STATUS al metodo IWiaDataCallback::BandedDataCallback . La finestra di dialogo visualizzata da questo metodo fornisce all'utente informazioni sull'errore o sullo stato e può dare la possibilità di recuperare dall'errore e continuare il trasferimento. L'interfaccia utente deve fornire solo una finestra di dialogo informativo e una possibilità di annullare il trasferimento se HRESULT è SEVERITY_SUCCESS.

Un driver che implementa questo metodo, deve visualizzare una finestra di dialogo modale, di proprietà di hwndParent, in risposta a un valore di hrStatusper cui FAIL(hrStatus) restituisce TRUE. Se FAIL(hrStatus) restituisce FALSE, il valore in hrStatus rappresenta un ritardo non irreversibile e la finestra di dialogo visualizzata deve essere senza modalità. La finestra di dialogo deve essere rimossa quando lo stato del trasferimento cambia. Un gestore errori deve restituire S_FALSE per valori sconosciuti di hrStatus.

Il parametro hrStatus è impostato su WIA_STATUS_TRANSFER_BEGIN per informare il gestore che è stato avviato un trasferimento. È impostato su WIA_STATUS_TRANSFER_END al termine del trasferimento.

Se hrStatus è S_OK, il trasferimento dei dati è stato ripreso e non è attualmente attivo alcun ritardo o errore.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione wia_lh.h (includere Wia_lh.h)

Vedi anche

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription