DEMO:Test ;工程与dll皆为qmake编译;

所需文件:A.dll、A.lib、A.h、A_global.h;B.dll。其中A.dll 依赖 B.dll

1. 环境配置

(1)确认制作dll的Qt版本和当前工程版本是否一致(Qt6中的一些函数Qt5不支持)

tQt如何在工程中使用dll库-LMLPHP

2. 配置项目

(1) .dll和 .lib 以及头文件位置

Demo中有两个dll文件,其中的一个依赖另一个,所以需要在合适目录下放置两个dll文件。

.dll文件和与之关联的.lib文件以及头文件放置在项目的合适位置。

<1>A.lib 放在.pro所在目录或子目录(如新建一个lib文件夹,对应的需要修改.pro配置,以便编译时能找到);

<2> A.dll以及其依赖的B.dll 放在本地工程 构建目录中。

<3> 头文件放在.pro 目录层级 或 其子目录里面(同理需要在.pro中配置)。

(2) 配置.pro文件

打开Qt项目的.pro文件;

  指定库的路径,添加以下行:

   LIBS += -L/$$PWD/lib -lA  (注意没有.lib后缀)

       ---$$PWD 是.pro所在目录

       ---lib是.lib 所在文件夹

       ----IA 是 小写L+ lib名

  指定头文件的路径:

   INCLUDEPATH += /$$PWD/include

       ---include是与Dll配套的头文件(A.h + A_global.h)所在目录

3. 在代码中使用DLL

一般A.h 中会有导出类或者 C 风格接口,这个就不举例了。

08-01 21:25