LresultFromObject 函数 (oleacc.h)

返回对指定 对象的引用,类似于句柄。 服务器在处理 WM_GETOBJECT时返回此引用。

语法

LRESULT LresultFromObject(
  [in] REFIID    riid,
  [in] WPARAM    wParam,
  [in] LPUNKNOWN punk
);

参数

[in] riid

类型: REFIID

提供给客户端的接口的引用标识符。 此参数IID_IAccessible。

[in] wParam

类型: WPARAM

关联的 WM_GETOBJECT 消息在其 wParam 参数中发送的值。

[in] punk

类型: LPUNKNOWN

WM_GETOBJECT消息对应的对象的 IAccessible 接口的地址。

返回值

类型: LRESULT

如果成功,则返回一个正值,该值是对 对象的引用。

如果未成功,则返回下表中的值之一或其他标准 COM 错误代码

返回代码 说明
E_INVALIDARG
一个或多个参数无效。
E_NOINTERFACE
pAcc 参数中指定的对象不支持 riid 参数中指定的接口。
E_OUTOFMEMORY
内存不足,无法存储对象引用。
E_UNEXPECTED
发生了意外错误。

注解

服务器仅在处理 WM_GETOBJECT 消息时调用此函数。 有关 LresultFromObject 如何与 WM_GETOBJECT相关的概述,请参阅 WM_GETOBJECT 的工作原理

LresultFromObject 递增对象的引用计数。 如果不存储传递给函数的接口指针 (,则每次收到 WM_GETOBJECT) 时,都会为对象创建新的接口指针,调用对象的 Release 方法将引用计数减为 1。 然后,客户端调用 Release 并销毁对象。 有关详细信息,请参阅 如何处理WM_GETOBJECT

每当服务器处理特定对象的 WM_GETOBJECT 时,它都会调用 LresultFromObject 来获取对对象的新引用。 在处理同一对象的后续WM_GETOBJECT消息时,服务器不会保存从一个处理WM_GETOBJECT实例中从 LresultFromObject 返回的引用作为消息的返回值。 这会导致客户端收到错误。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 oleacc.h
Library Oleacc.lib
DLL Oleacc.dll
可再发行组件 具有 SP6 及更高版本和 Windows 95 的 Windows NT 4.0 上的 Active Accessibility 1.3 RDK

另请参阅

创建代理对象

WM_GETOBJECT的工作原理

如何处理WM_GETOBJECT

WM_GETOBJECT