一、打包生成exe可执行文件
1、将编译出来的exe文件放到新建的文件夹下,此时可执行文件非常小,如:
2.1、查看exe依赖的dll
打开vs自带的命令行工具,如
输入命令:dumpbin /dependents [文件路径],比如要查看c盘根目录下的a.exe就输入dumpbin /dependents “C:\a.exe”
2.2、提取依赖的dll
2.3、把依赖的文件移动到新建文件夹,注意可执行文件引用依赖文件的相对路径,如
3.1、打开单文件制作工具Enigma Virtual Box,操作步骤如图
Enigma Virtual Box官方免费地址:https://enigmaprotector.com/en/downloads.html
详细的使用教程:https://blog.csdn.net/qq_38880380/article/details/79104563
3.2、打开BoxedApp Packer(可将原始应用程序“打包”到一个完整的可执行二进制文件中,ActiveX控件,动态库以及原始应用程序所依赖的所有类型的文件 - 都可以在该文件中“挤压”。打包器为应用程序创建一个单独的工作环境 - 使用注册表,交换文件等。因此,当应用程序运行时,它不需要任何外部资源或特殊权限)
官网地址:https://www.boxedapp.com
破解版地址:https://www.jb51.net/softs/656361.html
4、生成的exe文件就可以直接运行,不再需要与dll打包发布
二、Qt快捷导入dll动态连接库
1、将Qt,或VS程序使用Release编译
2、将Release编译生成的exe文件复制到新建文件夹中
3、打开Qt自带的命令行工具windeployqt进行打包
4、使用命令cd /d D:\FactoryTestPC 进入新建的文件夹中
5、执行windeployqt.exe FactoryTestPC.exe --qmldir C:\Qt\Qt5.7.1\5.7\msvc2015_64\qml --no-patchqt命令
6、按照第一大步骤,把其他依赖的dll,或其他文件一次复制到新建文件夹下,使用Enigma Virtual Box进行打包