VS2017动态链接库(.dll)的生成与使用

这里以VS2017为例子,讲解一下动态链接库(.dll)的生成与使用。

一、动态链接库(.dll)的生成

1、打开:“文件”-“新建”-“项目”

 

 

2、打开:“已安装”-“模板”-“Visual C++”-“Win32”-“Win32 控制台应用程序”

     把文件“名称”加上,为自己的工程名称;把“位置”加上,为自己的工程所在位置;

 

 

3、点击:“下一步”

 

 

4、选择“DLL”和“空项目”

     然后点击“完成”

 

 

5、右击“panny_dll”项目,点击“添加”,点击“新建项”

 

 

6、点击“c++文件(.cpp)”,写上文件的“名称”为“panny_dll.cpp”

 

 

7、同样添加“panny_dll.h”

 

 

8、在“panny_dll.cpp”中添加程序如下

#include "panny_dll.h"
int panny(int i, int(*call_back)(int a, int b))
{
int aa;
aa = i*i;
call_back(i, aa);
return 0;
}

 

 

9、在头文件“panny_dll.h”中添加如下代码

#pragma once
__declspec(dllexport) int panny(int i, int(*call_back)(int a, int b));

 

 

10、点击“生成”-“重新生成解决方案”

 

 

11、如图,成功。

 

 

12、生成了.dll和.lib的文件

 

 

二、使用.dll文件

1、新建项目

 

2、如图,添加项目名称为“panny_dll_test”

3、点击“下一步”

4、选择“控制台应用程序”和“空项目”,然后点击“完成”

 

5、把“.dll”和“.lib”放到如图的文件夹里面

6、把“panny_dll.h”放到如图的文件夹里面

7、添加一个新建项“panny_dll_test.cpp”,方法参考“一”中的“5和6”

8、在panny_dll_test.cpp文件夹里面添加如下代码

#include <stdio.h>
#include "panny_dll.h"
int panny_call_back(int a, int b)
{
int c;
c = a + b;
printf("输出:%d\n", c);
return 11;
}
void main()
{
int p = 10;
int panny1;
panny1 = panny(p, panny_call_back);
printf("输出2:%d\n", panny1);
}

9、添加头文件“panny_dll.h”

10、添加"panny_dll.lib"到资源文件

11、点击“重新生成解决方案”

12、成功

13、执行如下

 

posted @ 2018-04-08 10:41  xingyezhihun  阅读(446)  评论(0编辑  收藏  举报