DLL的創(chuàng)建

如果想導(dǎo)出一個全局函數(shù),就用關(guān)鍵字來聲明__declspec(dllexport),如__declspec(dllexport) int Add(int a, int b) { return a + b; }

項(xiàng)目需要設(shè)置:

  1. 取消“預(yù)編譯頭文件”
  2. 修改為/MTd編譯
  3. 修改輸出的DLL的名字

編譯可得xx.dll和xx.lib,其中
xx.dll包含所有的代碼編譯成的指令
xx.lib包含一個列表,表明xx.dll中含有哪些符號及每個符號對應(yīng)在dll中的位置。

在項(xiàng)目中使用DLL

使用庫#pragma comment(lib, "xx.lib")
聲明需要導(dǎo)入的項(xiàng)目__declspec(dllimport) int Add(int a, int b);

DLL的部署位置

程序運(yùn)行時(shí),xx.dll會被操作系統(tǒng)自動加載,以下是DLL能被OS找到的位置:

  1. 可執(zhí)行文件所在目錄
  2. 進(jìn)程當(dāng)前目錄
  3. 系統(tǒng)目錄(C:\Windows\System32等)
  4. Windows目錄(C:\Windows)
  5. 環(huán)境變量PATH中的目錄
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容