[英]Old c code to ATL/COM dll
我有一個舊的c dll,我想轉換為COM服務器。
它只暴露一個功能。
這就是我所做的:我在VS 2010中創建了一個ATL項目,添加了一個帶有包裝函數的簡單ATL對象。 我添加了c源代碼和頭文件在包裝函數中我調用了c函數,我添加了完整的函數原型,如http://www.parashift.com/c++-faq-lite/mixing-c-and-cpp中所述。 html#faq-32.5 。
出現以下錯誤:
函數中引用的未解析的外部符號
我嘗試了一切。
任何想法?
包含c-source時需要使用extern“C”:
extern "C" {
#include "header.h"
}
您可以嘗試將c dll編譯為常規win32 dll,然后通過包裝器從COM DLL調用它。 您需要2個dll,但如果原始DLL編譯正常,您應該能夠從COM使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.