Qt程序打包(使用Enigma Virtual Box和BoxedApp Packer封包)
一.使用单文件封包工具
单文件封包工具,顾名思义就是将可执行文件及其相关依赖打包成单个可执行文件的工具。
这里推荐两个单文件封包工具:Enigma Virtual Box和BoxedApp Packer,都是免费的,度娘有下载。
这两个工具操作方法类似,这里以Enigma Virtual Box为例,打包一个我写的一个Qt程序。
Qt程序的目录如下图所示,包括可执行文件及其依赖库。
打开Enigma Virtual Box,浏览封包的主程序,也就是上图中的DXManager.exe,如下图所示。
然后点击“打开”按钮,此时封包程序另存中会自动显示一个默认的路径,如下图中红框所示。这个路径就是封包完成后的单文件存储的路径。当然也可以不使用默认的路径,自己选择其他的路径,我这里使用默认路径。
点击右下角的“文件选项”按钮,打开“文件选项”窗口,并勾选其中的“压缩文件”,如下图中红框所示。压缩后的单文件会小得多,所以建议勾选。
点击左下角的“增加”按钮,开始增加文件,如下图所示。
需要注意的是这里只能增加文件,不能增加文件夹,如下图所示。
选中要增加的文件,点击“打开”按钮,会弹出“选择文件夹”串口,这里默认即可,如下图所示。
此时的效果如下图所示。
但是Qt程序目录中platforms文件夹里的dll还未添加,还是点击左下角的“增加”按钮,开始增加文件夹,如下图所示。
将文件夹命名为platforms,如下图所示。
还是点击左下角的“增加”按钮,往文件夹中添加文件,如下图所示。
这样所有文件都添加完了,如下图所示。
然后点击右下角的“执行封包”按钮,开始封包,如下图所示。
封包完成后,Qt程序目录多了一个DXManager_boxed.exe,它就是我们需要的单文件。如下图所示。
二.安装包的制作
使用单文件封包工具具有一定的局限性,当应用程序依赖第三方的.exe时,这种方法就不适用了。所以,当应用程序依赖第三方的.exe时,还是要将应用程序制作成安装包,在安装的过程中安装第三方的.exe。
安装包制作工具推荐火凤安装包制作工具(HofoSetup),后面不全了,被博客园吃掉了一部分。。。
http://blog.csdn.net/caoshangpa/article/details/53808627
Qt程序打包(使用Enigma Virtual Box和BoxedApp Packer封包)的更多相关文章
- Qt 程序打包发布
Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,Qt 官方开发环境里自带了一个工具:windeployqt.exe.在Qt安装目录如:C:\Qt\Qt5.7. ...
- 【win】【qt5打包】【qt程序打包成一个可执行文件(带图标任何win都可以运行哦)】
[前言] 业务需求将qt程序打包成win可执行文件.咱是做linux的,奈何用的麒麟系统,程序运行在win,好嘛,重新在win qtcreator编译后打包呗. [目标] 1.给qt程序添加一个图标. ...
- win环境下,用虚拟化工具打包Qt动态编译exe的过程(使用Enigma Virtual Box)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://goldlion.blog.51cto.com/4127613/834075 引子 ...
- QT程序打包发布
本来感觉这是一个简单的操作,今天看见群里有人在问这个问题,他说网上查了很多都不成功,突然就想把自己初学的时候记录一下! 题目谢了QT程序的打包发布,那就是两步骤:打包+发布! 注释:这篇博文用的是Qt ...
- Qt 程序打包发布总结
1. 概述 当我们用QT写好了一个软件,要把你的程序分享出去的时候,不可能把编译的目录拷贝给别人去运行.编译好的程序应该是一个主程序,加一些资源文件,再加一些动态链接库,高大上一些的还可以做一个安装 ...
- Enigma Virtual Box:生成可执行文件。
Enigma Virtual Box Enigma Virtual Box[1] 是软件虚拟化工具,它可以将多个文件封装到应用程序主文件,从而制作成为单执行文件的绿色软件.它支持所有类型的文件格式, ...
- ubuntu 环境下的QT程序打包
很多的时候 需要将自己写的QT 程序发布一下 所以今天教一下 怎么在ubuntu 环境下将自己的写的Qt 程序打包打包是为了不依赖 开发环境 和开发的库. 1. QtCreate使用Release版 ...
- Qt程序打包,自动拷贝依赖文件
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt程序打包,自动拷贝依赖文件 本文地址:http://techieliang.com ...
- Qt开发北斗定位系统融合百度地图API及Qt程序打包发布
Qt开发北斗定位系统融合百度地图API及Qt程序打包发布 1.上位机介绍 最近有个接了一个小型项目,内容很简单,就是解析北斗GPS的串口数据然后输出经纬度,但接过来觉得太简单,就发挥了主观能动性,增加 ...
随机推荐
- Excel 点滴积累
1.Excel中截取邮件@之后的字符 MID(text, start_num, num_chars) FIND(find_text,within_text,start_num) Right(strin ...
- 去掉UITableView多余的空白行分割线
一.问题描述 在学习和开发中经常会遇到下面的问题,UITableView的UITableViewCell很少或者没有时,但UITableView有很多的空白行分割线.如下图: 如何去掉UITableV ...
- 转:Autodesk 2017软件下载+注册机+破解方法(持续更新)
转载自http://blog.sina.com.cn/s/blog_710225790102w03e.html Autodesk 2017安装步骤: 安装Autodesk 2017相关软件 使用序列号 ...
- Java如何保存含有时间的日期到Oracle数据库
原文:http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-faq-090281.html#08_01 从Oracle ...
- Pyqt show和exec的区别
Pyqt中 QDialog show和exec的区别 QDialog的显示有两个函数show()和exec().他们的区别在参考文档上的解释如下: show():显示一个非模式对话框.控制权即刻返回 ...
- oracle 12c中的隐含列
Invisible Columns 使用select * from ,desc 等看不到该列, DROP TABLE tab1 PURGE; CREATE TABLE tab1 ( id NUMB ...
- ENode 1.0 - Saga的思想与实现
开源地址:https://github.com/tangxuehua/enode 因为enode框架的思想是,一次修改只能新建或修改一个聚合根:那么,如果一个用户请求要涉及多个聚合根的新建或修改该怎么 ...
- zoj 3820(2014牡丹江现场赛B题)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5374 思路:题目的意思是求树上的两点,使得树上其余的点到其中一个点的 ...
- RUDP之三 —— Virtual Connection over UDP
原文链接 原文:http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/ Introd ...
- nginx中配置pathinfo模式示例
要想让nginx支持PATH_INFO,首先需要知道什么是pathinfo,为什么要用pathinfo? pathinfo不是nginx的功能,pathinfo是php的功能. php中有两个path ...