1. 程式人生 > >用MinGW的gcc編譯com元件

用MinGW的gcc編譯com元件

因為特殊原因需要用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

然後註冊下就可以用了