IWiaErrorHandler::ReportStatus-Methode (wia_lh.h)

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

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 ein Handle des Fensters bereitgestellt, 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 übertragen wird.

[in] hrStatus

HRESULT-Variable, die den Statuscode enthält, der von der WIA-Übertragungsmethode empfangen wird, z. B. die IWiaDataCallback::BandedDataCallback Methode.

[in] lPercentComplete

Die Größe der Daten bezieht sich in Byte auf den pbData- Zeiger.

Rückgabewert

Gibt einen standardmäßigen COM-Fehlercode zurück, wenn der Fehler nicht wiederhergestellt werden kann, oder wenn der Benutzer die Übertragung als Reaktion auf das angezeigte Dialogfeld abbricht. 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 entsprechende Aktion ausgeführt, um den Fehler zu beheben, und die Übertragung kann fortgesetzt werden.
S_FALSE Es wurde keine Aktion ausgeführt, um den Fehler- oder Berichtsstatus für den Benutzer zu behandeln.

Bemerkungen

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 bietet dem Benutzer Fehler- oder Statusinformationen und bietet möglicherweise die Möglichkeit, den Fehler wiederherzustellen und die Übertragung fortzusetzen. Die Benutzeroberfläche sollte nur ein Informationsdialogfeld und eine Möglichkeit zum Abbrechen der Übertragung bereitstellen, wenn das HRESULT SEVERITY_SUCCESS ist.

Ein Treiber, der diese Methode implementiert, sollte ein modales Dialogfeld anzeigen, das hwndParentist, als Reaktion auf einen Wert von hrStatus-, für das FAILED(hrStatus) als TRUEausgewertet wird. Wenn FAILED(hrStatus-) als FALSE-ausgewertet wird, stellt der Wert in hrStatus eine unfatale Verzögerung dar, und das angezeigte Dialogfeld sollte moduslos sein. Das Dialogfeld sollte entfernt werden, wenn sich der Status der Übertragung ändert. Ein Fehlerhandler sollte S_FALSE für unbekannte Werte von hrStatus-zurückgeben.

Der hrStatus--Parameter ist 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, wird die Datenübertragung fortgesetzt, und es ist derzeit keine Verzögerung oder ein Fehler wirksam.

Anforderungen

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

Siehe auch

IWiaErrorHandler-

IWiaErrorHandler::GetStatusDescription