IWiaErrorHandler::GetStatusDescription 方法 (wia_lh.h)

如果用户请求此信息,系统 UI 会调用 GetStatusDescription 方法,向用户提供有关错误的额外信息。 此方法由驱动程序的 UI 扩展实现。

语法

HRESULT GetStatusDescription(
  [in]  LONG      lFlags,
  [in]  IWiaItem2 *pWiaItem2,
  [in]  HRESULT   hrStatus,
  [out] BSTR      *pbstrDescription
);

参数

[in] lFlags

当前未使用。 应设置为零。

[in] pWiaItem2

指向要传输的 IWiaItem2 项的指针。

[in] hrStatus

包含 WIA 传输方法接收的状态代码的 HRESULT 变量,例如 IWiaDataCallback::BandedDataCallback

[out] pbstrDescription

指向 BSTR 的指针,该 BSTR 接收传输过程中遇到的状态或错误的说明。 此参数不能为 NULL。 驱动程序必须使用 SysAllocString 函数分配字符串,调用方必须使用 SysFreeString] (/windows/win32/api/oleauto/nf-oleauto-sysfreestring) 函数释放字符串。

返回值

如果发生错误或以下任一错误,则返回标准 COM 错误代码:

返回代码 说明
S_OK pbstrDescription 参数包含有效的 BSTR 指针。
WIA_STATUS_NOT_HANDLED hrStatus 参数中的值对扩展未知,并且没有可用的说明。

注解

为了使应用程序调用 IWiaErrorHandler::GetStatusDescription,应用程序必须首先调用 IWiaItem2::GetExtension 来接收指向错误处理扩展的接口指针。 应用程序必须将“ErrorHandler”作为 bstrName 传递,IID_IWiaErrorHandler作为 riidExtensionInterface 传递。 应用程序应将 0 作为 lFlag 传递,以确保向上兼容性。

IWiaErrorHandler::GetStatusDescription 的实现应返回 iWiaErrorHandler::ReportStat) us 实现所处理的所有设备状态代码 (hrStatus 的S_OK,而 iWiaErrorHandler::ReportStatus 无法处理的设备状态代码WIA_STATUS_NOT_HANDLED。

要求

要求
目标平台 桌面
标头 wia_lh.h (包括 Wia_lh.h)

另请参阅

IWiaErrorHandler

IWiaErrorHandler::ReportStatus