C語言創(chuàng)建動(dòng)態(tài)dll和調(diào)用dll(visual studio 2013環(huán)境下)
第一部分:創(chuàng)建動(dòng)態(tài)dll庫。
1、打開visual studio 創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序。

2、選擇DLL,空項(xiàng)目。

3、點(diǎn)擊源文件,創(chuàng)建一個(gè)main.c文件

4、在main.c中寫入一個(gè)簡單的函數(shù),內(nèi)容如下:
__declspec(dllexport)
int mymax(int a,int b){
return a + b;
}

5、編譯生成。

6、在項(xiàng)目的目錄有dll和lib兩個(gè)生成好的文件。

第二部分:在新建項(xiàng)目中使用dll。
7、新建一個(gè)c的控制臺(tái)應(yīng)用程序UseDll,把Dll.dll放入Debug目錄下。

8、把Dll.lib放入U(xiǎn)serDll目錄下。

9、在UseDll項(xiàng)目中新建一個(gè)源文件use.c,代碼如下:
#include<stdio.h>
#pragma comment(lib,"Dll.lib")
int mymax(int a,int b);
int main(){
printf("調(diào)用動(dòng)態(tài)dll函數(shù)的結(jié)果:%d",mymax(5,6));
getchar();
return 0;
}

10、運(yùn)行結(jié)果如下

PS:vs2013調(diào)試程序時(shí)出現(xiàn)“計(jì)算機(jī)丟失.dll文件”
在VS環(huán)境下能夠編譯成功,但是在運(yùn)行.exe文件時(shí),出現(xiàn)“計(jì)算機(jī)丟失xxx.dll文件”的提示的解決方式。
發(fā)生這種問題的根本原因在于環(huán)境變量的設(shè)置上,計(jì)算機(jī)只會(huì)在path下包含的目錄里去尋找程序所要運(yùn)行的.dll文件,若我們所要使用到的.dll文件沒有包含在環(huán)境變量path中,則會(huì)發(fā)生錯(cuò)誤:計(jì)算機(jī)丟失xxx.dll文件。
工具/原料
- VS2013或者其他版本
- VTK庫或者其他庫
方法/步驟
這里以丟失vtkIOPLY-7.0-gd.dll文件為例(主要是關(guān)于PCL1.8.0),找到VTK的安裝目錄下的bin文件夾(包含vtkIOPLY-7.0-gd.dll),我的bin文件夾是在C:\Program Files (x86)\PCL 1.8.0\3rdParty\VTK\bin
將上述目錄添加到環(huán)境變量Path中,如下圖所示

重新開啟項(xiàng)目,重新生成解決方案,則問題就會(huì)解決
注意事項(xiàng)
這里不僅僅是針對(duì)vtkIOPLY-7.0-gd.dll文件,任何丟失.dll文件都可以使用此方式解決
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C++模板基礎(chǔ)之函數(shù)模板與類模板實(shí)例詳解
C++ 除了支持函數(shù)模板,還支持類模板(Class Template),所以下面這篇文章主要給大家介紹了關(guān)于C++模板基礎(chǔ)之函數(shù)模板與類模板的相關(guān)資料,需要的朋友可以參考下2021-06-06
wxWidgets實(shí)現(xiàn)無標(biāo)題欄窗口拖動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了wxWidgets實(shí)現(xiàn)無標(biāo)題欄窗口拖動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02
C語言創(chuàng)建動(dòng)態(tài)dll和調(diào)用dll(visual studio 2013環(huán)境下)
本篇文章主要介紹了C語言創(chuàng)建動(dòng)態(tài)dll和調(diào)用dll(visual studio 2013環(huán)境下),非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-11-11

