补充:解决QT工程软件打包发布在其他电脑上不能运行

本文是对文章:https://mp.csdn.net/mp_blog/creation/editor/116641563的补充。
最近用qt连接mysql数据库,又遇到了不能运行的问题,以及数据库连接不上问题。在开发机正常使用,但打包拿到其他机子就不行了,能运行起来了数据库又连接不上了,后面发现实际还是少了组件,两个问题都是用相同的方法解决的。在此记录一下,顺便对上一篇内容做一下补充。
一般我们开发电脑上运行上没问题的,但发布装到其他电脑就很容易出现问题。缺少组件时软件会提示缺少什么文件,把对应的组件加到运行目录下即可,但有些组件软件运行并不会提示,比如我已经把能想到的.dll文件都复制进去了,还是提示错误。
在这里插入图片描述

​ 这种时候就需要借助工具来分析一下,是不是我们还是有一些.dll文件没放进去。首先将工程文件以release模式编译,然后打开编译路径下的.exe,让它运行起来,然后使用Process Explorer软件来看对着我发布生成的文件对比是不是少了哪个组件,少了就从相应的路径找到它复制到我们的目标文件或电脑上就可以。
​ 需要对软件做以下简单配置,才能看到.dll列表。
在这里插入图片描述
接下来就找到你的软件双击就可以在底部看到软件运行链接的库有哪些了,系统组件我们不用管,把其他的一些组件在这个列表中有,但我们目标文件下没有的组件复制过去就可以。
在这里插入图片描述
​ 对比复制完,再运行软件就可以运行起来了。包括数据库驱动不能加载等问题也可以用类似这种方式来查找和解决。如果操作完这些还有问题,那就需要看看是不是用的编译器和系统位数对不上,或者组件位数和目标PC系统位数对不上,比如用了32位编译器或组件,在64位系统上运行,大概率会出错。当然也有可能那台PC上少了哪个运行软件的系统组件,这种就需要慢慢找了。可以使用DependencyWalker查看软件的dll情况。
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值