Поделиться через


Метод IWiaErrorHandler::ReportStatus (wia_lh.h)

Метод ReportStatus отображает сведения об ошибке или состоянии во время передачи. В некоторых случаях этот метод позволяет пользователю восстановиться после ошибки.

Синтаксис

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

Параметры

[in] lFlags

В настоящее время не используется. Значение должно быть равно нулю.

[in] hwndParent

Вызывающий объект предоставил дескриптор окна, который должен использоваться в качестве родительского окна для любых диалоговых окон. Если задано значение NULL, диалоговые окна отображаться не должны.

[in] pWiaItem2

Указатель на передаваемый элементIWiaItem2 .

[in] hrStatus

Переменная HRESULT, содержащая код состояния, полученный методом передачи WIA, например методом IWiaDataCallback::BandedDataCallback .

[in] lPercentComplete

На размер данных в байтах ссылается указатель pbData .

Возвращаемое значение

Возвращает стандартный код ошибки COM, если ошибка не может быть восстановлена или пользователь решает прервать передачу в ответ на отображаемое диалоговое окно. Дополнительные сведения о возвращаемых значениях см. в разделе примечаний. В противном случае этот метод возвращает одно из следующих значений:

Код возврата Описание
S_OK Для исправления ошибки было предприняно соответствующее действие, и передача может продолжаться.
S_FALSE Никаких действий по обработке ошибки или отчета о состоянии пользователю не предпринималось.

Комментарии

Объект обратного вызова прокси-сервера COM вызывает метод WiaErrorHandler::ReportStatus , когда драйвер отправляет IT_MSG_DEVICE_STATUS сообщение методу IWiaDataCallback::BandedDataCallback . Диалоговое окно, отображающееся в этом методе, предоставляет пользователю сведения об ошибке или состоянии и, возможно, дает возможность восстановиться после ошибки и продолжить передачу. Пользовательский интерфейс должен предоставлять только информационное диалоговое окно и возможность отменить передачу, если HRESULT SEVERITY_SUCCESS.

Драйвер, реализующий этот метод, должен отображать модальное диалоговое окно, принадлежащее hwndParent, в ответ на значение hrStatus , для которого FAILED(hrStatus) имеет значение TRUE. Если значение FAILED(hrStatus) имеет значение FALSE, значение в hrStatus представляет собой нефатальную задержку, и отображаемое диалоговое окно должно быть немодальным. Диалоговое окно должно быть удалено при изменении состояния передачи. Обработчик ошибок должен возвращать S_FALSE для неизвестных значений hrStatus.

Параметру hrStatus присвоено значение WIA_STATUS_TRANSFER_BEGIN, чтобы сообщить обработчику о начале передачи. После завершения передачи задано значение WIA_STATUS_TRANSFER_END.

Если параметр hrStatus S_OK, передача данных возобновилась, и в настоящее время задержка или ошибка не действуют.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть wia_lh.h (включая Wia_lh.h)

См. также раздел

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription