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

현재 사용되지 않습니다. 0으로 설정해야 합니다.

[in] hwndParent

모든 대화 상자의 부모 창으로 사용해야 하는 창의 호출자가 제공한 핸들입니다. NULL로 설정된 경우 대화 상자가 표시되지 않아야 합니다.

[in] pWiaItem2

전송 중인IWiaItem2 항목에 대한 포인터입니다.

[in] hrStatus

WIA 전송 메서드에서 받은 상태 코드를 포함하는 HRESULT 변수(예: IWiaDataCallback::BandedDataCallback 메서드).

[in] lPercentComplete

pbData 포인터가 참조하는 데이터의 크기(바이트)입니다.

반환 값

오류를 복구할 수 없거나 표시된 대화 상자에 대한 응답으로 전송을 중단하도록 선택한 경우 표준 COM 오류 코드를 반환합니다. 설명 섹션에 반환 값에 대한 추가 정보가 있습니다. 그렇지 않으면 이 메서드는 다음 값 중 하나를 반환합니다.

반환 코드 Description
S_OK 오류를 수정하기 위해 적절한 조치를 취했으며 전송을 계속할 수 있습니다.
S_FALSE 오류를 처리하거나 사용자에게 상태 보고하는 작업이 수행되지 않았습니다.

설명

COM 프록시 콜백 개체는 드라이버가 IWiaDataCallback::BandedDataCallback 메서드에 IT_MSG_DEVICE_STATUS 메시지를 보낼 때 WiaErrorHandler::ReportStatus 메서드를 호출합니다. 이 메서드가 표시하는 대화 상자는 사용자에게 오류 또는 상태 정보를 제공하고 오류에서 복구하고 전송을 계속할 수 있는 기회를 제공합니다. HRESULT가 SEVERITY_SUCCESS 경우 UI는 정보 대화 상자와 전송을 취소할 수 있는 기회만 제공해야 합니다.

이 메서드를 구현하는 드라이버는 FAILED(hrStatus)가 TRUE로 평가되는 hrStatus 값에 대한 응답으로 hwndParent가 소유한 모달 대화 상자를 표시해야 합니다. FAILED(hrStatus)가 FALSE로 평가되면 hrStatus의 값은 심각하지 않은 지연을 나타내며 표시되는 대화 상자는 모덜리스여야 합니다. 전송 상태 변경되면 대화 상자를 제거해야 합니다. 오류 처리기는 hrStatus의 알 수 없는 값에 대한 S_FALSE 반환해야 합니다.

hrStatus 매개 변수는 전송이 시작되었음을 처리기에 알리기 위해 WIA_STATUS_TRANSFER_BEGIN 설정됩니다. 전송이 완료되면 WIA_STATUS_TRANSFER_END 설정됩니다.

hrStatus가 S_OK 경우 데이터 전송이 다시 시작되고 지연 또는 오류가 현재 적용되지 않습니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 wia_lh.h(Wia_lh.h 포함)

추가 정보

IWiaErrorHandler

IWiaErrorHandler::GetStatusDescription