Win32 API 中的 IComInstanceEvents 接口通常用于与 COM+ 服务相关的编程。该接口定义了用于处理 COM+ 实例事件的方法。以下是 IComInstanceEvents 接口的简要信息:
interface IComInstanceEvents : public IUnknown
{
    HRESULT OnObjectConstruct(IUnknown *pObject);
    HRESULT OnObjectConstructCleanup(IUnknown *pObject);
    HRESULT OnObjectDeactivate(IUnknown *pObject);
    HRESULT OnObjectActivate(IUnknown *pObject);
    HRESULT OnDisableCommit(IUnknown *pObject);
    HRESULT OnEnableCommit(IUnknown *pObject);
    HRESULT OnSetComplete(IUnknown *pObject);
    HRESULT OnSetAbort(IUnknown *pObject);
    HRESULT OnObjectDeactivateByContext(IUnknown *pObject);
};

这个接口继承自 IUnknown 接口,因此包含了其基本的 COM 方法。

主要的方法包括:

  •  OnObjectConstruct: 在对象构造时调用。

  •  OnObjectConstructCleanup: 在对象构造清理时调用。

  •  OnObjectDeactivate: 在对象停用时调用。

  •  OnObjectActivate: 在对象激活时调用。

  •  OnDisableCommit: 在事务禁用提交时调用。

  •  OnEnableCommit: 在事务启用提交时调用。

  •  OnSetComplete: 在事务设置完成时调用。

  •  OnSetAbort: 在事务设置中止时调用。

  •  OnObjectDeactivateByContext: 在对象由上下文停用时调用。


这些方法允许程序员在 COM+ 服务中的实例生命周期的不同阶段执行自定义的操作。


转载请注明出处:http://www.zyzy.cn/article/detail/25055/Win32 API/Comsvcs.h/IComInstanceEvents