com接口有两种,Vtable要静态调用,调度则可以动态调用。对于vtable可以import将com接口导入生成相应的*.h和*.c。然后在调用处包话这两个文件就可以了。

解决方案 »

  1.   

    我的意思是在编译时客户怎样同接口的vtable绑定在一起的,换句话说也就是,为什么接口的方法改变(如顺序改变),客户就不能再使用此com了
      

  2.   

    书上有说的,一下忘记了书名。你查下ATL开发指南吧。
      

  3.   

    COM的接口的方法改变(如顺序改变)--不可以!
    因为通过接口指针访问COM的方法,等效于通过vtable[index]访问COM的方法,(*p->vptr[index])()而vtable中每个[index]中对应的接口方法是已经固定的. 除非你提供客户新的interface.h文件并要求客户重新编译调用程序.否则客户根据固定index访问的接口方法将不是用户希望的方法!!