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


Метод 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 (include Wia_lh.h)

См. также

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription