nstallShield制作打包程序详解(图)
InstallShield产品,是安装工具领域事实上的标准。InstallShield 软件是软件安装、配置软件包和升级解决方案领域内公认的标准。InstallShield已经成为安全安装软件的标准解决方案,涉及全球6.9万多个开发组织和5亿台电脑。公司提供广泛的产品和服务,为软件供应商、系统管理员以及最终用户提供成功的销售、管理和应用安装。本文将以InstallShield10.5 Premier Edition为例详述打包的过程。
使用工程助手(Project assistant)设计
Installscript Project可以通过Installscript技术进行灵活的支持用户定制的安装,默认新建的工程也是较常用的工程类型。
新建工程,在“新建工程”对话框中填入工程名(Project Name)和存储路径(Location)如图1

图1 新建工程
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
确定后出现工程助手(Project assistant)界面如图2,依照工程助手中的每一步来进行设置,就可以完成一个基本打包工程的设置,若想详细定制安装程序则在安装设计器(Installation Designer)详细设置。
图2 工程助手
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
点击Application Information进行设置应用程序的基本信息,填入公司名、应用程序名称以及版本号和公司网址,同时在选择是否提醒你的最终用户有的新的更新提供,如图3

图3 基本信息设置
点击下一步,设置Installation Architecture,可以进行设置安装结构(Installation Architecture),设置安装特征如图4

图4 安装结构设置
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
在Application Files中添加要分发的文件,如应用程序及类库等文件。在Application Target Folder中添加需要分到安装中选定的目的文件夹中的文件,在Script-defined Folders中设置在安装脚本中自定义的文件夹中需分发的文件,在support Folder中是一些支持应用程序的文件,windows目录中放置的为一些需分发到系统中的文件以及文件夹,如图5

图5 安装文件添加
在Application Redistributables中设置一些应用程序使用第三方技术,比如MDAC,DirectX等,如图6
图6 Application Redistributables**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
在Application shortcuts中,可以创建和删除、重命名快捷方式,并选择其是否创建至开始菜单和桌面上,如图7

图7 应用程序快捷方式
在Application Registry中,可以配置应用程序的注册数据,在安装过程中写入到注册表相应的键值中,可以新建编辑表项和键以及导入注册表文件等,如图8

图8 应用程序注册
在Installation Interview 中对安装中运行的一些用户需填写信息的对话框进行配置,如协议同意对话框等,可选择一个licens 文本文件中内容在 Lincense Agreement 对话框中显示,如图9

图9 Installation Interview
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
在Installation Localization中,可以设置在安装过程中的本地字符串,选择安装程序支持的语言以及相应的字符表编辑,如图10

图10 Installation Localization
如果通过以上的设置已经满足对安装程序的要求,就可以在Build Installation中生成安装包,可以选择Single Executable 、Internaet 还是CD-Rom三种存储媒介生成安装包如图11,但如果想更个性化地制作安装程序则需进入Installation Designer中进行详细设计如图12

图11 Build Installation
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
使用Installation Designer设计

图12 Installation Designer
在General Information中可对安装包工程的属性,诸如安装平台安装语言等详细设置,在Installation Information中的Update Service可以对安装程序的更新服务进行配置,在Trialware中可以选定的程序设置试用设置。

图13 General Information 设置
在Organization中可以对Setup Design、Features以及components和Setup Types进行配置。
图14 Organization
在Features中可以在安装中新建和编辑Feature,同时添加需要的Component,在Setup Types中可以对安全安装和定制安装类型进行配置,在Components中可以选择需要装配的类库以及组件和自注册的文件等,如图15

图15 Setup Design
在Files and Folders中,可在Application Files中添加要分发的文件,如应用程序及类库等文件。在Application Target Folder中添加需要分到安装中选定的目的文件夹中的文件,在Script-defined Folders中设置在安装脚本中自定义的文件夹中需分发的文件,在Support Folder中是一些支持应用程序的文件,windows目录中放置的为一些需分发到系统中的文件以及文件夹,如图16

图16 File and Folders
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
在Objects中可以添加应用程序要的Objects添加到选定的Feature上,如图17
图17 Objects配置
在System Configuration中可对快捷方式和注册表以及XML文件的配置,如图18
图18 System Configuration
在Server Configuration中配置应用程序运行环境中所需要的IIS和SQL连接和建库等脚本,如图19

图19 Server Configuration
在User Interface中可对对话框进行所见即所得设计以及修改,在生成好的安装程序中就是设计的对话框,如图20

图20User Interface
**** 本文出处:南山古桃(nsgtao)的百度空间:http://hi.baidu.com/nsgtao/ ****
在Behavior and Logic中可以编辑InstallScript,添加Support Files和Billboards以及Splash Screen等,如图21

图21 Support Files/Billboards配置
Behavior and Logic中的InstallScript编辑是个性化安装程序的最关键部分,它使得通过InstallScript语言来定制进行驱动安装过程。可以Files中显示安装程序工程的脚本,可以根据需要新建脚本文件,对安装脚本进行编辑。Functions中显示着自己编辑的函数,在Properties中列出脚本中自己定义的属性,可以定义属性用于脚本中使用。在脚本中可以选择是在初始化的时候,还是在复制文件前(Before Move Data)还是复制文件后(After Move Data)等过程中进行想要的操作,在其函数中写相应操作的代码,如图22
图22 InstallScript编辑
例如,需要在安装完成后运行另一个安装程序,则可,在After Move Data中的OnEnd()中使用LaunchAppAndWait函数,如下代码
function OnEnd()
begin
//运行批处理文件
LaunchAppAndWait(TARGETDIR ^ "bin\\cell\\reg.bat","",WAIT);
//运行另一可执行文件 TARGETDIR安装用户选定的目标文件夹
LaunchAppAndWait(TARGETDIR ^ "mdac_typ.exe","",WAIT);
end;
InstallScript使得用户可以编写脚本程序来进行安装程序的定制,提供较为丰富的内置函数,用户可使用这些函数编制自己所需要函数来达到预期的安装效果,在附表中列出其内置函数,各函数详细使用请参看InstallSheild Help 。Library。小结
nstallShield制作打包程序详解(图)的更多相关文章
- VS2013(InstallShield2015LimitedEdition)打包程序详解
VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具: InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...
- 用Advanced Installer制作DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版详解
关于 DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...
- vs2010打包winform程序详解
vs2010打包winform程序详解 最近一直在做winform程序,做完后程序打包很头疼,第三方打包工具,好用的花钱,不花钱的不好用,最后只能用vs自带的打包工具了! 打包过程vs2010(包 ...
- 技巧:Linux 动态库与静态库制作及使用详解
技巧:Linux 动态库与静态库制作及使用详解 标准库的三种连接方式及静态库制作与使用方法 Linux 应用开发通常要考虑三个问题,即:1)在 Linux 应用程序开发过程中遇到过标准库链接在不同 L ...
- 转 vagrant package[打包命令]详解
转 vagrant package[打包命令]详解 vagrant的一个非常重要的功能就是在你的同事之间分享你的box从而使大家的开发环境保持同步,打包[package]正是实现这一功能的关键所在 ...
- Linux开机启动程序详解
Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...
- Linux开机启动程序详解[转]
Linux开机启动程序详解 我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤 ...
- linux系统设置服务开机启动3种方法,Linux开机启动程序详解
linux系统设置服务开机启动 方法1:.利用ntsysv伪图形进行设置,利用root登陆 终端命令下输入ntsysv 回车:如下图 方法2:利用命令行chkconfig命令进行设置 简要说明 ...
- Linux如何实现开机启动程序详解(转)
Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...
随机推荐
- 杂项之rabbitmq
杂项之rabbitmq 本节内容 rabbitmq简介 AMQP协议 rabbitmq使用 应用举例 rabbitmq简介 介绍rabbitmq之前,先介绍一下AMQP协议,因为rabbitmq就是基 ...
- webpack 单页面应用实战
这篇文章将介绍如何利用 webpack 进行单页面应用的开发,算是我在实际开发中的一些心得和体会,在这里给大家做一个分享.webpack 的介绍这里就不多说了,可以直接去官网查看. 关于这个单页面应用 ...
- AfxExtractSubString 函数的相关问题
AfxExtractSubString函数的用法 注:本文系rainy8758原创,转载请注明出处:http://blog.hjenglish.com/rainy8758/articles/10109 ...
- RabbitMQ 基本概念和使用
当前各种应用大量使用异步消息模型,并随之产生众多消息中间件产品及协议,标准的不一致使应用与中间件之间的耦合限制产品的选择,并增加维护成本.AMQP是一个提供统一消息服务的应用层标准协议,基于此协议的客 ...
- java代码流类
总结:读取到的是字节型转换成字符串. package com.c2; import java.io.*; public class tkrp { public static void main(Str ...
- JDBC---bai
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...
- 无人零售的黑科技:RFID技术
无人零售的黑科技:RFID技术说起最近的热门话题,“无人零售商店”当属其一.自去年底,亚马逊推出第一家无人实体超市Amazon Go,到阿里.京东.大润发等各大企业纷纷加入,无人商店被推上了风口浪尖. ...
- oracle 远程tns配置
BYRUIY = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = rui-oracle11g)(PORT = )) (CONNECT_DATA = ...
- python 函数和方法的区别
一.函数和方法的区别 1.函数要手动传self,方法不用传 2.如果是一个函数,用类名去调用,如果是一个额方法,用对象去调用 举例说明: class Foo(object): def __init__ ...
- DAY16-Django之MTV
MTV模型 Django的MTV分别代表: Model(模型):负责业务对象与数据库的对象(ORM) Template(模版):负责如何把页面展示给用户 View(视图):负责业务逻辑,并在适当的时候 ...