qt生成的exe到指定路径加载DLL文件

        qt编译生成的exe程序在打包依赖文件后,如果同时又有其他dll文件时,目录会看起来非常杂乱。我们可以通过将依赖文件放到某个路径下,让exe程序在指定路径下加载,此时需要用到qt 的qt.conf文件来处理。
       qt.conf是一个配置文件,使用它可以让程序重新指定加载路径。在程序中使用QLibraryInfo类调用qt.conf文件,包含三种方式(具体参考qt 手册),我们这里使用资源文件的调用方式,资源文件的路径必须在":/qt/etc/qt.conf"下。

1. 新建qt.conf文件

       新建一个qt.conf文件跟代码路径放置在同一个目录下,下面是qt.conf文件的内容:

[Paths]
Prefix = ./libs
ArchData = .
Data = .
Libraries = .
LibraryExecutables = .
Binaries = .
Plugins = .
Imports = .
Qml2Imports = .
Translations = translations

       “Prefix = ”后面的内容为exe需要加载库的路径,我这个示例是在exe路径新建一个“libs”路径。

2. 在工程文件中新建资源文件,将qt.conf包含进去。

(1)右键点击工程文件,选择"Add New…",选择Qt->Qt Resource File,添加新的资源文件
在这里插入图片描述

(2)给资源文件命名,我这里叫"config",生成资源文件。
在这里插入图片描述

(3)给config.rec添加前缀。注意这里前缀要使用"/qt/etc"这个名称。
在这里插入图片描述
(4) 将qt.conf文件添加至资源文件中,如需要修改qt.conf配置,点击该文件进行修改。
在这里插入图片描述
在这里插入图片描述

3. 执行qmake后,编译生成exe文件。

4. 使用qt套件中的打包工具,复制依赖文件到运行目录下。

(1)打开打包工具 qt 5.12.1(MSVC 2017 64-bit)。
在这里插入图片描述
(2)输入"windeployqt XXX.exe"命令,复制依赖文件。
在这里插入图片描述
(3)移动刚刚复制依赖文件到"libs’'文件夹下。
在这里插入图片描述

5. 测试exe调用DLL

       双击exe程序测试执行效果
在这里插入图片描述
       成功则不会再有提示找不到依赖文件
在这里插入图片描述

  • 1
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值