因为特殊原因需要用gcc编译com组件还不是vc
首先代码得写纯C++的,不用借用ATL和MFC,这个网上蛮多的
我们用到的是需要idl文件的,借用VC的MIDL得到XX_i.c XX_p.c XX.h文件还有tlb文件
主要是tlb文件,没有tlb文件编译出来的com找到COM方法
把tlb加到XX.rc资源文件里,用MinGW下的windres把资源编入XX.o文件
windres resource.rc res.o
编主程序的时候需要把它加入进去,还有.def文件
g++ -Wall -static -shared XX.cpp Exports.def res.o -o XX.dll -lOle32 -lstdc++ -lntdll -lkernel32 -luuid -lodbc32 -lodbccp32 -loleaut32 -ladvapi32 -mwindows
然后注册下就可以用了