VS2017+QT生成动态库(DLL)并完成调用

Posted DS小龙哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS2017+QT生成动态库(DLL)并完成调用相关的知识,希望对你有一定的参考价值。

一、环境介绍

QT版本:  5.12.6

VS版本: 2017

二、功能介绍

在VS2017环境下创建QT工程,并生成DLL库;然后再创建工程调用测试。

其他链接:

Win10+vs2017+QT5.12.6开发环境搭建: https://blog.csdn.net/xiaolong1126626497/article/details/112402861

Window系统下QT5创建DLL动态库并完成调用: https://blog.csdn.net/xiaolong1126626497/article/details/112158922

三、创建工程生成动态库

工程创建之后,VS会自动生成一个头文件并添加到工程,该头文件用于区分静态库与动态库。

写了两个简单的函数用于测试:

编译生成动态库:

编译成功之后,会在目录下生成一个xxx.dll和一个xxx.lib的文件。 xxx.dll是运行需要的库,xxx.lib是编译引用需要的库。

四、创建工程引用动态库

创建一个新的工程,将上一个创建库文件工程里的两个头文件拷贝到新工程目录下。

再将上一个创建库文件工程里的生成的lib文件拷贝到新工程目录下。 

 在新工程里引入头文件,实例化对象,调用方法,完成对库的调用:

运行的时候会提示找不到库,接下来需要将dll文件拷贝到当前工程的运行目录下。

调用库,运行成功:

 

 

 

 

 

以上是关于VS2017+QT生成动态库(DLL)并完成调用的主要内容,如果未能解决你的问题,请参考以下文章

VS2017下创建C++动态库导出符合并完成调用测试(DLL可供C#调用)

VS2017下创建C++动态库导出符合并完成调用测试(DLL可供C#调用)

QT 调用VS2015编写的Dll

VS2015环境下生成和调用DLL动态链接库

vs 2017 打包生成时 会自动把依赖dll移除是啥情况

Qt - Qt调用VS生成的C静态库