使用 OBJID_NATIVEOM 公开窗口的本机接口

此方法允许客户端获取窗口的自定义对象。 服务器可以使用它来公开指向窗口的自定义文档对象的指针。

为窗口公开本机对象模型接口 (服务器)

  1. 处理 窗口过程中WM_GETOBJECT 消息。 OBJID_NATIVEOM lParam时,使用LresultFromObject 返回指向自定义对象的接口指针。
  2. 调用 LresultFromObject 后释放接口指针(如果适用)。 有关详细信息,请参阅 LresultFromObject

客户端可以获取指向此自定义对象的指针。

若要获取窗口的自定义对象的指针, (客户端)

请注意此方法的以下问题:

  • 此方法类似于返回 IAccessible 接口指针,但所使用的对象 ID 和 LresultFromObject 返回自定义对象而不是 IAccessible 的事实除外。
  • 服务器开发人员可能需要发布允许客户端唯一标识 HWND 的信息,以便在其窗口句柄上调用 AccessibleObjectFromWindow 之前能够找到它。
  • 不要在返回的自定义对象上实现 IAccessible 接口。 如果这样做,OLEACC 会将它视为标准 IAccessible ,并可能阻止使用自定义接口。
  • 为了跨进程使用,返回的对象上的接口可能需要注册到组件对象模型 (COM) 。

多个 Microsoft Office 组件支持此方法。 有关详细信息,请参阅 AccessibleObjectFromWindow