摘要

在Qt Creator中写完程序,在Qt Creator中的debug或者release状态下运行程序都是没有问题的,并且会在工程目录下生成对应的debug或者release文件夹,里面存放着生成的exe文件。一般情况下,我们可以直接双击exe文件运行程序,但是,由Qt Creator生成的exe却无法运行,报错缺少dll文件,如缺少QtCore4.dll文件等。

在Qt Creator中写完程序,在Qt Creator中的debug或者release状态下运行程序都是没有问题的,并且会在工程目录下生成对应的debug或者release文件夹,里面存放着生成的exe文件。一般情况下,我们可以直接双击exe文件运行程序,但是,由Qt Creator生成的exe却无法运行,报错缺少dll文件,如缺少QtCore4.dll文件等。

这是因为Qt默认情况下是动态编译的,需要dll文件才能正常运行。当我们使用Qt Creator去运行程序的时候,Qt会通过Qt Creator中的设置自动找到dll位置,如果直接打开exe,那么程序会自动去环境变量或者exe所在目录下寻找dll文件。因此,也就产生了以下几种种解决办法。

情况一:qt程序写给自己用

方法1:把缺少的dll文件拷贝到和exe文件所在目录下,这种方式不推荐,因为每次都要拷贝大量dll文件,不方便。

方法2(推荐):设置环境变量,右击“我的电脑”->”属性”->”高级系统设置”->”环境变量”

找到“系统变量”中的“Path”变量,点击“编辑”,“新建”一条路径,将Qt安装路径下的bin文件夹路径放进去。OK,可以运行了。

情况二:发布qt程序给别人用

如果你的程序要发送给别人使用,那么肯定需要将dll文件和exe打包到一起,环境变量的办法肯定不再适用。这时,采用windeployqt+Enigma Virtual Box的方法进行打包。

windeployqt是qt自带的,各个版本的qt都会带有这个工具,安装完qt后会自带该工具,当然,该工具在各个版本中的路径是不一样的,实在不行就用windows全局搜一下吧,该工具主要是将exe中涉及到的有关qt的dll提取到exe所在路径下。Enigma Virtual Box也是一个免费工具,可以去官网下载安装,这个工具主要是将exe、dll等文件打包生成一个单独的exe文件,方便程序的发布和使用。具体使用方法参照https://blog.csdn.net/windsnow1/article/details/78004265

注意事项

1、windeployqt自动提取与qt相关的dll,如果你代码中引入其他第三方库,需要自己手动添加

2、设置好vs的环境变量,否则会报错Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set.。如果你不想设置环境变量,可以采用vs自带的命令行工具”VS2013 开发人员命令提示“执行windeployqt命令。如果执行成功,会将vcredist_x86.exe拷贝到当前目录下

3、可能还是会漏掉一些包,要多在其他电脑上进行测试,运行时会提示缺少某个dll,想办法找到该dll,这个dll你自己的电脑上一般都会有,全局搜下,复制粘贴到exe所在目录下

执行exe报计算机中丢失qtdll,Qt入门教程(2) 直接运行Qt生成的exe报错缺少dll文件 | 阿拉灯...相关推荐

  1. 无法启动此程序因为计算机中丢失msvcr110,无法启动此程序因为计算机中丢失msvcr110,教您无法运行程序提示计算机中丢失...

    用户在一次运行某程序时,运到"无法启动此程序,因为计算机中丢失msvcr.dll.尝试重新安装该程序以解决此问题."的提示,当时很无语,因为系统是刚刚安装好的,怎么处理呢?下面,小 ...

  2. 无法启动此程序因为计算机中丢失msvcr110,无法启动此程序因为计算机中丢失msvcr110,详细教您无法运行程序提示计算机中丢失msvcr110怎么解决...

    在计算机的使用过程中我们经常会遇见各种.dll丢失.缺少.找不到等问题出错问题.遇见这种情况不要着急,将丢失的dll文件记录下来,然后寻找解决方法即可.那么遇到无法运行程序提示计算机中丢失msvcr1 ...

  3. 无法启动python 因为计算机中丢失,win7 64位 python启动报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-process-l1-1-0.dll...

    安装python3.7,安装成功后,在cmd窗口输入python检查是否安装成功,报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-process-l1-1-0.dll 在网上查询了 ...

  4. 电脑安装python为什么显示的是程序丢失-python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  5. python无法启动该程序因为计算机中丢失_python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  6. python无法启动此程序因为计算机中丢失_python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  7. 计算机安装msvcr110.dll,安装WampServer报错 计算机中丢失MSVCR110.dll 的解决方法 | 睿客网...

    有网友在安装wampServer的时候可能会遇到 "无法启动此程序,因为计算机中丢失 MSVCR110.dll.尝试重新安装该程序以解决此问题"这样的系统报错. 解决方案如下: 然 ...

  8. 安装MySQL报错:计算机中丢失vcruntime140_1.dll

    MySQL用 zip 安装包,安装时报错:无法启动此程序,因为计算机中丢失VCRUNTIME140_1.dll,尝试重新安装此程序以解决此问题 zip方式安装的具体过程可以参考:MySQL 关于 zi ...

  9. python无法启动此程序、因为文件损坏_python报错:无法启动此程序,因为计算机中丢失...

    python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win-crt-runtime-|1-1-0.dll丢失的解决方法 ...

最新文章

  1. Realm 使用的简单教程
  2. 天天都会写接口,但它的用途和好处有多少人能说得清楚?
  3. ISO9000管理体系认证申请书
  4. 深入 AngularUI Router
  5. 【Linux系统编程】进程介绍
  6. Scala入门到精通——第三十节 Scala脚本编程与结束语
  7. DbHelper重用性方案 优化工具类 jdbc
  8. 美国组建半导体工作组或与中国推进海外并购冲突
  9. mysql5.7 no password_MySQL5.7.20报错Access denied for user 'root'@'localhost' (using password: NO)
  10. bootstrap-table教程演示
  11. 双色球机器学习线性回归蓝球预测案例
  12. 全网最详细的VMware虚拟机下载安装教程
  13. ghost版32位win10系统,win10系统下载地址
  14. 学校计算机考试系统故障,解决在线考试系统设计的常见问题
  15. 医院信息化建设少不了CRM呼叫中心
  16. ISP PIPLINE 概述
  17. 程序员 不经历风雨,怎么见彩虹
  18. 西门子1200与台达MS300变频器通讯程序
  19. datagrip 查询结果不能修改
  20. ROC曲线绘制(详细)以及模型选择

热门文章

  1. Visio View:打开VSd时,IE弹出已停止工作。
  2. “SISTERS姐妹”双个展在南京W艺术空间举办
  3. 零知识证明:一个略微严肃的科普
  4. オフショア開発を成功させる工夫10点
  5. Linux内核代码宏定义,Linux Kernel源代码中与段有关的重要宏定义
  6. 俞敏洪:像水一样积蓄自己的力量
  7. 手推logistic
  8. 【C语言进阶】很诡异的编译报错expected declaration or statement at end of input
  9. 小蒟蒻的小生活(持续更新)
  10. moment.js的实用方法记录