logo资料库

VS2019c++装换为动态链接库DLL.doc

第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
资料共12页,剩余部分请下载后查看
步骤<1>:创建新项目
步骤<2>:配置新项目
步骤<3>:初始化界面
步骤<4>:新建文件
步骤<5>:代码编写
步骤<6>:编译
步骤<3>:编写调用代码
VS2019c++装换为动态链接库 DLL 一、实验环境 VS2019、Win10 二、创建动态链接库(DLL) 首先,我们需要知道动态链接库(以下简称 DLL)的作用,我在这里总结为,可 以重复使用功能相同的代码,而不必对已经实现了的功能重新编写代码。链接库 有动态和静态两种,本文旨在记录如何实现 DLL 的创建与调用,故不对这两种链 接库做探讨。接下来让我们开始实验吧 原文链接: https://blog.csdn.net/qq_30139555/article/details/103621955 步骤<1>:创建新项目 创建新项目–>动态链接库(DLL) 步骤<2>:配置新项目 输入“项目名称”,然后选择工程“位置”,“解决方案名称”与“项目名称”相同,是自动生成的,如果没有特殊需 求建议不要修改,不要勾选“将解决方案和项目放在同一目录中”,最后点击“创建”按钮。
步骤<3>:初始化界面 这是创建工程之后的初始化界面,其中的代码是自动生成的,我们不需要去修改! 步骤<4>:新建文件 接下来创建我们自己的 DLL: (1)首先新创建头文件“TestDLL.h”,它的作用是用来声明需要导出的函数接口。
(2)然后新创建源文件“TestDLL.cpp”,它的作用是用来实现被声明的函数。 此时工程目录结构如下图:
至此,所有的准备工作已完毕,接下来我们开始编写代码吧! 步骤<5>:代码编写 (1)首先我们要在‘TestDLL.h’中编写如下代码: #pragma once #pragma comment(lib,"TestDLL.lib") #include using namespace std; extern "C" __declspec(dllimport) int* face_detect(string input_pic_load, double input_h); (2)然后我们需要在‘TestDLL.cpp’中实现在‘TestDLL.h’中被声明的 int* face_detect(string input_pic_load, double input_h)函数,代码如下(部分代码):
至此,DLL 的代码编写完成。 步骤<6>:编译 最后一步是编译 DLL: 单击 不必担心,这是正常的现象,因为 DLL 不是可执行文件.exe,所以无法被启动,单击‘确定’即可。 如果出现的是其他错误,还需根据“错误列表”自行改正错误! 至此,DLL 的创建全部完成! 此时在 TestDLL 的工程目录下的 Debug 文件夹中会出现如下图所示的 5 个文件:
其中“TestDLL.dll”和“TestDLL.lib”是我们等会儿会用到的文件。 三、调用动态链接库(DLL) 通过上面的步骤,我们现在已经创建好了可被调用的 DLL 了,接下来需要创建一个调用 TestDLL 的 C++工程项目 步骤<1>:新建一个 C++工程项目 此处创建 C++工程项目的目的是为了测试刚刚写好的 TestDLL 库,所以和创建普通的 C++工 程项目一样没有什么区别,所以此处不再给出详细的创建过程。 下图显示的是我已经创建好了的名为“TestDLLCreated”的 C++工程项目:
步骤<2>:为编写调用代码做准备 这一步需要做以下几件事: 1. 将 TestDLL 的工程目录下的 Debug 文件夹中的“TestDLL.dll”和“TestDLL.lib”文件复制到 “TestDLLCreated”工程目录下的 TestDLLCreated 文件夹中。 注意:每个人的工程目录的路径可能不太一样,请大家因地制宜(此处用词不太准确,哈哈)! 复制到
2.将 TestDLL 的工程目录下的 TestDLL 文件夹中的“TestDLL.h”头文件复制到“TestDLLCreated”工程目录下的 TestDLLCreated 文件夹中 注意:每个人的工程目录的路径可能不太一样,请大家因地制宜(此处用词依然不太准确,哈哈)! 从 复制到 3. 将刚刚添加到“TestDLLCreated”工程目录下的 TestDLLCreated 文件夹中的“TestDLL.h”头文件导入到 VS 中的解决方案资源管理器中。 在箭头所指处右键
分享到:
收藏