如何在一个新建的com组件中使用在另一个组件中声明的接口?比如说
IPlugIn继承于IDispatch,声明在组件A中
然后IPlugIn2想继承于IPlugIn,但是要在组件B中实现

解决方案 »

  1.   

    我也初学,不是有多继承吗?一样来一个class A :public B,IDispatch
    大虾莫笑:)
      

  2.   

    实际上你直接使用就行了
    例如:
    ComponentB 使用了ComponentA部分功能!
    你直接将ComponentB看成ComponentA的client 不就行了?
      

  3.   

    你的想法不符合接口不变性的原则!
    ----------------------
    如果不怕麻烦的话,可以重写IPlugIn2的idl文件!
      

  4.   

    各位,问题解决了:我正在整理文档,谢谢大家。
    其实是这样的,我的想法是做一个服务插件的接口,这样在一个固定的
    应用框架中可以动态加载所有实现此插件接口的com 对象,不用编译框架,就像IE的ExplorerBar的实现一样。但是,此服务接口是非常简单的,而每一个实现组件既要实现此服务接口,又要实现其本身的功能,则势必扩展接口,就像
    IWebBrowser2继承于IWebBrowserApp,而IWebBrowserApp又继承于IWebBrowser, IWebBrowser继承于IDispatch一样。
    注意,我要实现的服务插件是多个,而服务插件接口应该是重用的,不应该每次都写一遍。所以,才有了如上的想法和问题。
    这应该并不违背接口不变性的原则!
    欢迎与我交流。交流使人进步。
    [email protected]