1. 程式人生 > >已有的專案檔案編譯DLL

已有的專案檔案編譯DLL

編譯的時候,庫名稱一定要和cpp以及H標頭檔案名一致,方便且不容易找不到


檔案→新建→從現有程式碼,選擇c++


然後選擇程式碼的目錄


選擇dll工程


 

1、用def定義函式,此方法函式名稱在編譯後不會改變。


工程建立好,我們選擇使用模組定義(.def)檔案建立dll。為工程建立一個字尾名為.def的檔案,並新增進工程,編輯其內容為:

LIBRARY後為dll名稱,DESCRIPTION後為描述(非必須),EXPORTS後為函式或類的名稱

將該模組定義檔案連結到工程中,方法為工程屬性頁面

>連結器>輸入>模組定義檔案中寫入


2、用__declspec(dllexport)定義函式,此方法編譯後函式名稱會改變

如上圖所示。

再生成即可生成dll

生成dll之後一定要寫一個文件註明介面或者給標頭檔案標上註釋,將dll檔案,lib檔案,h檔案(或文件)打包發來。並告知是用的def方式還是直接__declspec(dllexport)

PS:引用了外部庫可能或者一些特殊設定導致出錯,具體情況還得具體檢視。例如陳辰使用了vc140的環境編譯了vc120opencv。如果使用了opencv,請自己先除錯通過然後將相應版本的opencvdll

檔案一併打包發來。



驗證是否成功


對於vs2013突然沒有x64編譯器