用QT打包程序出现0xc000007b错误提示的解决办法

用QT打包程序出现0xc000007b错误提示的解决办法

之前在公司项目过程中,出现一个棘手的问题,找资料问高手,都没解决,偶然在某个群里,有小伙伴也遇到同样的问题,有群友分享了方法,最终如愿解决,在这里做一记录。

问题描述

我在电脑A上使用QT打包命令windeployqt打包生成exe程序,在电脑B上运行正常,后期增加功能对代码进行了修改,是在电脑C上使用QT打包命令windeployqt打包生成exe程序,并将此exe程序替换电脑B上的exe程序。但程序运行过程中出现如图的错误:
在这里插入图片描述

原因分析

刚开始查阅资料,使用Depends.exe工具查看缺少的依赖,都一一加了进去,但运行时还是报同样的问题,后来自己猜想是编译器的问题。最后面才发现是windeployqt.exe版本的问题,QT windeployqt.exe版本号与 QT 版本一致,与MinGW版本号不一样。电脑A的windeployqt.exe版本是5.9,电脑C上的windeployqt.exe版本是5.3,导致打包生成的dll版本不一样,使得程序在运行过程中加载dll时找不到相应的入口,从而报错。

解决方案

保持windeployqt.exe版本版本一致即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值