星驰编程网

免费编程资源分享平台_编程教程_代码示例_开发技术文章

QT5.9.9生成并调用自己的DLL(qt直接调用dll)

1.生成DLL

1.1新建Library项目

我所使用的版本为Qt5.9.9

全部都下一步即可,在Qt module这里我是默认的Core,可根据自己的需要进行选择

创建完毕后会自动生成一下几个文件

1.2将下图mydll_global.h中的代码复制去mydll.h文件中

1.3添加测试代码

mydll.h文件中添加#incldue <QDebug>void printDLL()两行代码,添加位置如下图所示

接着在mydll.cpp中写下函数的实现

1.4编译

对项目进行编译,注意是编译而不是运行


接着在存放mydll项目的相同目录下会生成一个build-mydll-Desktop_Qt_5_9_9_MinGW_32bit-Debug文件夹

在该文件夹中的debugwen文件夹中会生成对应dll文件,如果是在release模式下编译的,则出现在release文件夹下

2.调用DLL

2.1新建测试项目

创建一个简单的Console Application项目来演示如何调用DLL

创建过程不再赘述,同样的一直下一步即可,完成后将生成的mydll.hmydll_global.h文件拷贝至testmydll文件夹中

接着右键单击项目文件选择添加新文件

选中拷贝过来的文件

完成后如图所示

2.2复制DLL文件

运行程序

在testmydll同一目录下产生build-testmydll-Desktop_Qt_5_9_9_MinGW_32bit-Debug文件夹,进入其debug文件中看到

此时将先前生成的dll文件复制过来

2.3添加库文件路径

打开testmydll.pro文件,并添加如下代码LIBS+=D:\\QT\\Qttutorial\\build-testmydll-Desktop_Qt_5_9_9_MinGW_32bit-Debug\\debug\\mydll.dll这里的路径需要改成自己对应的路径


2.4测试

在main函数中编写测试代码

程序运行结果

至此,在Qt5.9.9中生成和调用自己的DLL完成。

3.备注

后面经过测试发现,如果未将mydll_global.h中的代码复制去mydll.h中也是可以正常使用的,如果复制了,则mydll.h中则不再需要#include "mydll_global.h"同时也不再需要mydll_global.h文件了,后面拷贝头文件时也只需拷贝mydll.h即可

更改后的mydll.h文件内容以及项目所包含的文件:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言