一、官网的介绍部分网址

http://doc.qt.io/qtinstallerframework/ifw-overview.html

二、安装界面介绍

2.1 安装界面流程

介绍>>选择路径>>选择组件>>接收协议>>选择窗口程序组(注册表名字)>>安装
 

2.2 组件增加流程

开始>>选择额外组件>>安装
 

2.3 组件删除流程

开始>>删除
 

2.4更新组件

开始>>选择要升级的组件>>安装
 

三、目录和文件结构介绍

3.1 config目录

以tutorial为例,在config子目录下,有config.xml文件,该文件用来自定义向导UI和行为。
    <?xml version="1.0" encoding="UTF-8"?>
<Installer>
<Name>你开发的软件的名字</Name>
<Version>1.2.3</Version>
<Title>安装向导的名字</Title>
<Publisher>版权所有方名字(比如你的公司)</Publisher>
<StartMenuDir>开始菜单的名字</StartMenuDir>
<TargetDir>缺省的指定安装目录</TargetDir>
</Installer>

官网的config介绍

<Title>指定了显示在内容上的标题的安装名字
<NAME>是标题下面的文本框中的文字
<Version>指定应用的版本号
<Publisher>在控制面板中显示的名字
<StartMenuDir>开始菜单中的名字
<TargetDir>默认的指定目录,当前用户的目录下安装

个人理解

3.2 package文件夹目录

package文件夹的目录形式为

-packages
- com.vendor.root
- data
- meta
- com.vendor.root.component1
- data
- meta
- com.vendor.root.component1.subcomponent1
- data
- meta
- com.vendor.root.component2
- data
- meta

root相当于根节点控件,增加文件夹就是增加组件了

package文件夹下有data和meta两个文件夹,data是需要打包的组件内容,metal是一些控制脚本文件。

<?xml version="1.0" encoding="UTF-8"?>
<Package>
<DisplayName>The root component</DisplayName>
<Description>Install this example.</Description>
<Version>0.1.0-1</Version>
<ReleaseDate>2010-09-21</ReleaseDate>
<Name>com.vendor.product</Name>
<Licenses>
<License name="Beer Public License Agreement" file="license.txt" />
</Licenses>
<Default>script</Default>
<Script>installscript.qs</Script>
</Package>
<DisplayName>组件列表名字
<Description>显示组件的书名内容
<Version>如果开启更新,就可以用
<Licenses>许可证
<Default>选的组件如何运行的方式?这里用了scrip
<Script>JavaScript script file脚本名字
DisplayName:能被人类读的组件名字,
Description:组件的描述
Version:版本号
ReleaseDate:组件发布的版本日期,必须
Name:组件的身份标识,必须
Dependencies:组件的依赖,用逗号分隔列表,用横杠区分版本号,用&lt代替"<"
AutoDependOn:
Virtual:设置为真隐藏安装组件,注意设置根组件上是无效的
SortingPriority:组件的优先级树,树的排序从高到底,高的在最顶上
Licenses:列出需要用户同意的license,用name和file指定license文件,支持ASCII和UTF8
Script:需要加载的脚本文件名
UserInterfaces:要加载的页列表,<UserInterface>子元素
Translations:国际化语言的列表文件
Updatetext:如何这个给组件更新的,那就把这个添加进描述中,可选。
Default:可以的值是true,false和script。设置true预选组件,这个只会影响没有子组件的组件。
false应该是关了,脚本在运行时解析。在<Script>增加脚本名字,
Essential:重启MaintenanceTool工具的必要条件,如果有一个可以更新的基本的组件,包管理器将保持禁用,直到该组件被更新。新引入的基本组件是在运行updater时自动安装的。
ForcedInstallation:确定必须安装的包,终端用户不能取消在安装过程中
Replaces:用逗号列出组件的替换,可选
DownloaddableArchives:在线安装需要下载的文件
RequiresAdminRights:如果设置为true,包安装需要在高权限下,可选
Checkable:如果你想要隐藏checkbox的item,选择false。当只要选择部分子组件时,会很有效

3.3 script文件

必须包含

function  Component()

{

   // constructor

}

此处为安装的程序,在开始菜单处设置连接;

    //"@TargetDir@/sunshine.exe"指定exe的路径,//"@StartMenuDir@/sunshine.lnk"指定链接
Component.prototype.createOperations = function()
{
// call default implementation to actually install README.txt!
component.createOperations(); if (installer.value("os") === "win") {
component.addOperation("CreateShortcut", "@TargetDir@/test.exe", "@StartMenuDir@/test.lnk");
}
}

四、构建安装包

<location-of-ifw>\binarycreator.exe -t <location-of-ifw>\installerbase.exe -p <package_directory> -c <config_directory>\<config_file> <installer_name>

我的使用方法:

C:\Qt\QtIFW2.0.3\bin>binarycreator.exe -p ./Mytutorial/packages -c ./Mytutorial/config/config.xml WeiHua_NetWork_Windows_2018.1.26.exe

五、配置依赖文件

从开始菜单-->Qt 5.7.0-->5.7-->MinGW 5.3.0 (32-bit)-->Qt 5.7 for Desktop (MinGW 5.3.0 32 bit),可以打开 Qt 命令行,从这里就可以执行 windeployqt 工具。

windeployqt myapp.exe

Qt installer framework学习的更多相关文章

  1. Qt Installer Framework的学习(三)

    Qt Installer Framework的学习(三) Qt Installer Framework的样例中.通常是这种:config目录一般放了一个config.xml文件,包括的是安装配置xml ...

  2. Qt Installer Framework的学习(二)

    Qt Installer Framework的学习(二) Qt Installer Framework的一些操作能够使用最常见的Qt项目来表示,也就是说,书写pro文件,使用qmake执行之,除了能够 ...

  3. Qt Installer Framework的学习

    Qt Installer Framework是Qt默认包的发布框架.它很方便,使用静态编译Qt制作而成.并且使用了压缩率很高的7z对组件进行压缩.之所以有这些好处,我才觉得值得花一点儿精力研究一下这个 ...

  4. 使用Qt installer framework制作安装包

    一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很 ...

  5. Qt Installer Framework 使用说明(三)

    目录 6.Qt Installer Framework 示例 7.参考 Reference 配置文件 Configuration File 配置文件元素的简要说明 Summary of Configu ...

  6. Qt Installer Framework 使用说明(二)

    目录 4.教程: 创建一个安装程序 创建软件包目录 创建配置文件 创建程序包信息文件 指定组件信息 指定安装程序版本 添加许可证 选择默认内容 创建安装程序内容 创建安装程序二进制文件 5.创建安装程 ...

  7. Qt Installer Framework 使用说明(一)

    目录 Qt Installer Framework 使用说明 1.Qt Installer Framework概述 选择安装包类型 促进更新 提供安装内容 2.入门指南 支持的平台 从源代码构建 支持 ...

  8. Qt Installer Framework实战

    Qt Installer Framework是Qt发布的安装程序支持框架,只需要简单的配置就可以生成安装文件,同时可以通过javascript脚本来定制安装过程. 目录结构 config packag ...

  9. 使用Qt Installer Framework制作软件安装包

    概述 Qt Installer Framework(缩写QIF)是Qt官方用于生成软件安装包的工具.包括Qt Creator和Qt Installer Framework自身的安装包都是由这个工具制作 ...

随机推荐

  1. git 配置(实用)

    将公钥添加进入即可  码云是添加私钥(注意!!!!) 这个时候Git就配置好了 git clone ssh协议的仓库 就可以直接拉代码了

  2. BZOJ 2281: [Sdoi2011]黑白棋(dp+博弈论)

    传送门 解题思路 首先发现可以把相邻的黑白棋子之间的距离看成一堆棋子,那么这个就可以抽象成\(Nim\)游戏每次可以取\(d\)堆这个游戏,而这个游戏的\(SG\)值为\(x\%(d+1)\),那么题 ...

  3. AcWing 248. 窗内的星星 (扫描线)打卡

    题目:https://www.acwing.com/problem/content/250/ 题意:给你n个点,现在问你能每个点都有个权值,问你能覆盖最多的权值是多少,边界不算 思路:这个其实和我之前 ...

  4. error MSB8008: 指定的平台工具集(v110)未安装或无效

    转自VC错误:http://www.vcerror.com/?p=318 问题描述: 平台工具集(v110)是vs2012下用的,你是用vs2010打开工程,它默认是用v100, 所以这个工程可能用v ...

  5. jQuery设置checkbox 为选中状态

    1设置第一个checkbox 为选中值$('input:checkbox:first').attr("checked",'checked');或者$('input:checkbox ...

  6. MySQL分表备份

    #!/bin/bash DUMP=/usr/bin/mysqldump MYSQL=/usr/bin/mysql IPADDR=127.0.0.1 PORT=3306 USER=abc PASSWD= ...

  7. java反射(三)--反射与操作类

    一.反射与操作类 在反射机制的处理过程之中不仅仅只是一个实例化对象的处理操作,更多的情况下还有类的组成的操作,任何一个类的基本组成结构:父类(父接口),包,属性,方法(构造方法,普通方法)--获取类的 ...

  8. 配置静态IP时候route没有设置的GATEWAY问题

    今天在想把虚拟机里RHEL6.5设置成静态IP来着 在 /etc/sysconfig/betwork-scripts/ifcfg-eth0 文件中将"GATEWAY"拼写成了&qu ...

  9. RabbitMQ 在 Win10 环境下的安装与配置

    1 RabbitMQ 环境配置 1.1 ErLang 下载安装     RabbitMQ 需要 ErLang 环境支持:首先下载 ErLang 并安装.     建议使用新版本,版本过低存在与 Rab ...

  10. JavaScript如何诞生

    JavaScript之父谈语言诞生记 发表于2011-06-27 10:30| 9749次阅读| 来源ruanyifeng.com| 0 条评论| 作者阮一峰 prototypeprimitiveja ...