如何处理WM_GETOBJECT

当收到包含 OBJID_CLIENTWM_GETOBJECT消息时,服务器必须返回指向实现 IAccessible 的对象的指针。 此指针是通过调用 LresultFromObject 获取的 LRESULT。 Microsoft Active Accessibility 与组件对象模型 (COM) 库结合使用,执行适当的封送处理,并将 IAccessible 接口指针从服务器传递到客户端。

服务器必须正确处理可访问对象上的引用计数。 请记住,创建 COM 对象时,引用计数为 1。 然后,LresultFromObject 会进一步递增引用计数多次。 不再需要对象时, LresultFromObject 创建的所有引用都会自动释放,但服务器负责释放初始引用,除非这样做,否则永远不会销毁对象。 以下部分中的示例演示如何释放对可访问对象的引用。

服务器通常通过以下方式之一处理 WM_GETOBJECT

注意

在本部分中,如文档中的其余部分所述,讨论指向 IAccessible 接口的指针时,此指针实际上可能是指向包装 IAccessible 接口的代理对象的指针。 有关代理对象的详细信息,请参阅 创建代理对象

 

有关 WM_GETOBJECT的概述,请参阅 WM_GETOBJECT工作原理