IWiaErrorHandler::ReportStatus-Methode (wia_lh.h)

Die ReportStatus-Methode zeigt Während einer Übertragung Informationen zu einem Fehler oder status an. In einigen Fällen ermöglicht diese Methode dem Benutzer die Wiederherstellung nach einem Fehler.

Syntax

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

Parameter

[in] lFlags

Derzeit nicht verwendet. Sollte auf Null festgelegt werden.

[in] hwndParent

Der Aufrufer hat das Handle des Fensters angegeben, das als übergeordnetes Fenster für alle Dialogfelder verwendet werden soll. Wenn dies auf NULL festgelegt ist, sollten keine Dialogfelder angezeigt werden.

[in] pWiaItem2

Zeiger auf dasIWiaItem2-Element , das übertragen wird.

[in] hrStatus

HRESULT-Variable, die den von der WIA-Übertragungsmethode empfangenen status Code enthält, z. B. die IWiaDataCallback::BandedDataCallback-Methode.

[in] lPercentComplete

Größe der Daten in Bytes, auf die sich der pbData-Zeiger bezieht.

Rückgabewert

Gibt einen COM-Standardfehlercode zurück, wenn der Fehler nicht wiederhergestellt werden kann oder wenn der Benutzer die Übertragung als Reaktion auf das angezeigte Dialogfeld abbrechen möchte. Im Abschnitt "Hinweise" finden Sie weitere Informationen zu den Rückgabewerten. Andernfalls gibt diese Methode einen der folgenden Werte zurück:

Rückgabecode BESCHREIBUNG
S_OK Es wurde eine geeignete Aktion ergriffen, um den Fehler zu beheben, und die Übertragung kann fortgesetzt werden.
S_FALSE Es wurde keine Aktion ausgeführt, um den Fehler zu behandeln oder dem Benutzer status zu melden.

Hinweise

Das COM-Proxyrückrufobjekt ruft die WiaErrorHandler::ReportStatus-Methode auf, wenn der Treiber eine IT_MSG_DEVICE_STATUS Nachricht an die IWiaDataCallback::BandedDataCallback-Methode sendet. Das von dieser Methode angezeigte Dialogfeld stellt dem Benutzer Fehler- oder status Informationen bereit und bietet möglicherweise die Möglichkeit, den Fehler wiederherzustellen und die Übertragung fortzusetzen. Die Benutzeroberfläche sollte nur ein Informationsdialogfeld und die Möglichkeit bieten, die Übertragung abzubrechen, wenn das HRESULT SEVERITY_SUCCESS ist.

Ein Treiber, der diese Methode implementiert, sollte ein modales Dialogfeld im Besitz von hwndParent als Reaktion auf den Wert hrStatus anzeigen, für den FAILED(hrStatus) als TRUE ausgewertet wird. Wenn FAILED(hrStatus) zu FALSE ausgewertet wird, stellt der Wert in hrStatus eine nicht schwerwiegende Verzögerung dar, und das angezeigte Dialogfeld sollte moduslos sein. Das Dialogfeld sollte entfernt werden, wenn sich die status der Übertragung ändert. Ein Fehlerhandler sollte S_FALSE für unbekannte Werte von hrStatus zurückgeben.

Der hrStatus-Parameter wird auf WIA_STATUS_TRANSFER_BEGIN festgelegt, um den Handler darüber zu informieren, dass eine Übertragung gestartet wurde. Sie ist auf WIA_STATUS_TRANSFER_END festgelegt, wenn die Übertragung abgeschlossen ist.

Wenn hrStatus S_OK ist, wurde die Datenübertragung fortgesetzt, und es ist derzeit keine Verzögerung oder ein Fehler wirksam.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile wia_lh.h (Wia_lh.h einschließen)

Weitere Informationen

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription