😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀
🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C++、数据结构、音视频🍭
🤣本文内容🤣:🍭介绍 🍭
😎金句分享😎:🍭你不能选择最好的,但最好的会来选择你——泰戈尔🍭
⏰发布时间⏰:
本文未经允许,不得转发!!!
目录

![]()
🎄一、概述
本文开发环境介绍:
系统:Windows 10
Qt开发环境:Qt 5.12.12
打包工具:Enigma Virtual Box 11.30 Build 20250428
上篇文章Windows下使用Inno Setup打包Qt程序成安装包,介绍了使用 Inno Setup 5 打包安装包,现在介绍另一种打包程序的方法。
当我们完成Qt程序开发并成功发布后,如何将程序及其所有依赖文件打包成一个独立的、可直接运行的单个EXE文件,是许多开发者追求的目标。这种 “单文件免安装版” 程序部署极为方便,用户无需安装过程,双击即可运行。
如果说,我们自己手动将Qt程序、所有DLL文件、资源文件夹等压缩或打包成一个文件,还要保证运行时能正确访问所有资源,那将是一个复杂且易出错的工作。Enigma Virtual Box 这款专业工具,通过虚拟文件系统和注册表技术,完美解决了这一问题。本文将详细介绍如何使用 Enigma Virtual Box 将Qt程序打包成真正的单文件应用程序。
![]()
🎄二、Enigma Virtual Box简介
✨2.1 什么是Enigma Virtual Box?
Enigma Virtual Box 是一款功能强大的Windows应用程序虚拟化工具,它可以将一个应用程序及其所有相关文件(如DLL、资源、配置文件等)打包到一个单独的可执行文件中,而无需实际安装或修改目标计算机的注册表。
核心特点:
-
真正的单文件:生成独立的EXE文件,不需要安装程序
-
虚拟文件系统:运行时自动虚拟化所需的文件和目录结构
-
注册表虚拟化:支持虚拟注册表操作,不污染系统
-
资源保护:内置压缩和可选的加密功能
-
完全免费:用于非商业用途免费
✨2.2 为什么选择Enigma Virtual Box打包Qt程序?
与传统的安装包相比,Enigma Virtual Box方案具有独特优势:
-
部署简单:用户只需一个EXE文件,无需安装过程
-
绿色环保:不向系统写入文件或注册表(除非程序本身需要)
-
兼容性好:解决了Qt程序依赖复杂DLL的问题
-
便于分发:文件数量少,适合网络传输
✨2.3 Enigma Virtual Box 下载、安装
Enigma Virtual Box 官网下载地址:https://enigmaprotector.com/en/downloads.html

安装过程:
-
双击下载的安装程序enigmavb.exe
-
选择安装语言(支持中文)
-
接受许可协议
-
选择安装目录(建议使用默认路径)
-
点击"安装"完成
![]()
🎄三、Qt程序发布准备
在开始使用Enigma Virtual Box打包之前,必须确保你已经有一个完整的、可独立运行的Qt程序包。
这部分内容在上篇文章 Windows下使用Inno Setup打包Qt程序成安装包 图文介绍得很详细,下面旧简单带过。
✨3.1 第一步:编译Release版本
确保你的Qt程序是Release版本编译的:
-
在Qt Creator中选择Release构建配置
-
清理并重新编译项目
-
验证生成的EXE文件位置:build-项目名-Release\release\
✨3.2 第二步:使用windeployqt收集依赖
这是最关键的一步,必须完整收集所有运行时依赖:
# 打开Qt命令行工具如:Qt 5.12.12 (MinGW 7.3.0 32-bit)
# 切换到你的程序所在目录
cd /d F:\QTableWidgetTest
# 执行windeployqt收集依赖
windeployqt QTableWidgetTest.exe
✨3.3 第三步:验证收集的文件
可以将整个文件夹复制到另一台没有安装Qt和VC++的电脑上,运行exe文件测试是否正常工作。运行程序确认:
-
1、程序能正常启动
-
2、所有功能正常工作
-
3、没有缺失DLL的错误提示
如果测试失败,需要回到第二步重新检查依赖收集。
![]()
🎄四、使用Enigma Virtual Box打包Qt程序

启动 Enigma Virtual Box 后,可以按照下面步骤打包:
- 1、选择要打包的主程序 exe;
- 2、指定打包后的 exe 保存位置;
- 3、点击【文件】;
- 4、点击【增加】,添加需要打包的所有依赖文件,如果添加整个文件夹,可以【增加文件夹[递归]】;

- 5、选择压缩文件,压缩文件的启用可以减少最终文件体积,

- 6、执行封包,等待打包过程完成,查看输出窗口的日志,确认没有错误。
![]()
🎄五、总结
👉本文介绍使用Enigma Virtual Box制作"单文件免安装版"Qt程序。通过本文的详细指南,你应该能够:
-
理解原理:了解虚拟文件系统的工作原理
-
掌握流程:从程序发布到最终打包的完整流程
-
解决问题:识别并解决打包过程中的常见问题
-
优化结果:生成高效、可靠的单文件程序
关键成功因素:
-
✅ 完整的依赖收集(使用windeployqt)
-
✅ 正确的文件包含(特别是platforms目录)
-
✅ 适当的虚拟化配置
-
✅ 充分的测试验证
最后建议:
-
对于简单的Qt程序,Enigma Virtual Box是最佳选择
-
对于复杂的企业应用,可考虑结合安装包和便携版
-
始终保持测试驱动的打包流程
通过使用Enigma Virtual Box,你可以为用户提供极致的部署体验,真正实现"双击即用"的Qt应用程序。记得在实际分发前,务必进行全面的跨平台测试,确保程序在各种环境下的稳定运行。

如果文章有帮助的话,点赞👍、收藏⭐,支持一波,谢谢 😁😁😁
参考:
https://blog.csdn.net/weixin_44369955/article/details/115517190
1686

被折叠的 条评论
为什么被折叠?



