IFunctionDiscoveryNotification::OnError 方法 (functiondiscoveryapi.h)

[函数发现可用于“要求”部分中指定的操作系统。 它在后续版本中可能已更改或不可用。]

接收异步查询处理期间发生的错误。

语法

HRESULT OnError(
  [in] HRESULT        hr,
  [in] FDQUERYCONTEXT fdqcQueryContext,
  [in] const WCHAR    *pszProvider
);

参数

[in] hr

正在报告的查询错误。

[in] fdqcQueryContext

为更改通知注册的上下文。 类型 FDQUERYCONTEXT 定义为 DWORDLONG。

[in] pszProvider

提供程序的名称。

返回值

客户端程序的 OnError 方法实现应将以下 HRESULT 值之一返回给调用方。

返回代码 说明
S_OK
该方法已成功完成。
E_INVALIDARG
其中一个输入参数的值无效。

注解

通常,客户端预期任何异步错误都是致命错误,并且查询将停止返回结果,但自定义提供程序文档可能会针对特定错误代码指示其他错误。

不要从此方法对查询对象调用 Release 。 这样做可能会导致死锁。 如果在回调处理过程中从另一个线程对查询对象调用 Release ,则在回调完成之前不会释放该对象。

提供程序传递给函数发现的所有通知都会排队,并逐个返回给客户端。 回调是同步的,以便客户端一次只收到一个通知。

由于其他 IFunctionDiscoveryNotification 方法调用可能在其他线程中进行,因此在退出方法之前,必须在调用期间还原对线程状态所做的任何更改。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 functiondiscoveryapi.h

另请参阅

IFunctionDiscoveryNotification