在 Win32 API 的 Callobj.h 头文件中,ICallInterceptor 接口通常与 COM (Component Object Model) 相关的调用拦截器有关。这个接口可能用于在 COM 调用期间实现自定义拦截逻辑。以下是 ICallInterceptor 接口的一般定义:
DECLARE_INTERFACE_(ICallInterceptor, IUnknown) {
    STDMETHOD(QueryInterface)(
        THIS_ REFIID riid,
        PVOID *ppvObject) PURE;

    STDMETHOD_(ULONG, AddRef)(
        THIS) PURE;

    STDMETHOD_(ULONG, Release)(
        THIS) PURE;

    STDMETHOD(GetInterceptor)(
        THIS_
        REFIID riid,
        PVOID *ppv) PURE;

    STDMETHOD(GetFrame)(
        THIS_
        ICallFrame **ppFrame) PURE;

    STDMETHOD(EnterEx)(
        THIS_
        ICallFrameWalker *pWalker) PURE;

    STDMETHOD(Leave)(
        THIS) PURE;
};

这个接口提供了一组方法,允许在调用过程中获取拦截器、获取调用帧,以及进入和离开拦截逻辑。请注意,这只是接口的一般定义,具体的实现可能会有所不同。




转载请注明出处:http://www.zyzy.cn/article/detail/24113/Win32 API/Callobj.h/ICallInterceptor