使用COM组件的时候,包含.h和_i.c有顺序问题么...
为什么我把.H的#include放在_i.c的#include之前 就发生编译错误是什么原因那~~
各位帮忙分析下哈

解决方案 »

  1.   

    你包含 .C 干什么? 那是给 C 编译器准备的,在 VC 下你根本不需要它,直接把 .H 包含进目标 .CPP 就行了.
      

  2.   

    error:   _CLSID_Operate already defined in CertToUSB_i.obj
    表明已经被定义了在.OBJ 是重复定义了..
    那这样的话 是不是说我就不用使用 _i.c文件了..
    但是网上别的言论说明这个文件还是得要的啊..是以C的风格导出函数~~
      

  3.   

    还有一个问题 一起问了... 
    得到自定接口的类指针的方法有两种
    1.通过IUnknown的QueryInterface来获得自定义类的指针
    2直接获得自定义类的指针不同IUnknown
    这两种做法有什么区别么小弟不明白啊~~~
    为甚么那~~大佬们帮看看 .
      

  4.   

    COM组件正常对于客户不会公开你的自定义接口,这样用户需要通过QueryInterface来查询
      

  5.   

    但是,我把.H 和_i.c的先后顺序一调换他就没任何问题了.. 
    那还不是包含的么 怎么不报错~