为何需要代理对象

使用可访问对象时,当客户端设置 上下文中挂钩函数时,实现客户端挂钩函数的 DLL 将加载到服务器的地址空间中。 在这种情况下,当客户端从挂钩函数内部调用 AccessibleObjectFromEvent 时,返回的接口指针直接指向服务器地址空间中的代码。 当客户端使用此指针调用接口属性时,组件对象模型 (COM) 库不涉及封送或取消封送,并且无法检测对象是否被销毁。 因此,服务器必须检测到这种情况,并将错误代码返回给客户端。