Installshield 总结系列之Installshield Script Project
2012-10-04 16:00
351 查看
我在前面一篇,已经谈过Basic MSI project。那让人不禁要问它们的区别是:
从功能上来说,Installshield Script Project弹性更强,可以定制的东西更多,对话框可以方便的定制,已经控制他们的显示序列。
从机制上来说,Installshield Script基于Installshield Installe Engine完全不需要Windows Installer Engine。它可以支持更多的Installshield自己的函数,对话框。
下面从如下几个常见的技术点来了解Installshield Script Project
1.维护模式
OnInstallaing()
它对应于-unistall 命令,在Installshield 2009及之前的版本,在控制面板中选择"Uninstall”会触发这个命令。但在Installshield 2011之后,卸载会调用
-removeonly,首先响应这个消息的函数是OnMaintainUIBefore(),默认的代码会协作对应的产品。
REMOVEONLY & REMOVEALLMODE & REMOVEALL
REMOVEONLY 与 REMOVEALLMODE 都是一个flag,其值是true or false。
通过调用-removeonly 会将REMOVEONLY 置为true,即告诉开发者,这是通过命令行调用的卸载模式。
通过在Maintaince Dialog选择REMOVEALL(一个Installshield预定义的一个值),会将REMOVEALLMODE置为true。
静默安装
需要先录制安装脚本,即.iss文件。需要注意的是,它的安装过程,必须严格按照.iss中描述的那样,否则会安装失败。如果安装过程有很多条件选择,需要录制多个.iss文件。
2.升级安装
对应Installshield script,升级的时候,需要注意merge module可能不会被更新。暂时还没有找到原因,目前采用的是walk around的方式,即修改merge modulecomponent的id,来完成升级安装。
从功能上来说,Installshield Script Project弹性更强,可以定制的东西更多,对话框可以方便的定制,已经控制他们的显示序列。
从机制上来说,Installshield Script基于Installshield Installe Engine完全不需要Windows Installer Engine。它可以支持更多的Installshield自己的函数,对话框。
下面从如下几个常见的技术点来了解Installshield Script Project
1.维护模式
OnInstallaing()
它对应于-unistall 命令,在Installshield 2009及之前的版本,在控制面板中选择"Uninstall”会触发这个命令。但在Installshield 2011之后,卸载会调用
-removeonly,首先响应这个消息的函数是OnMaintainUIBefore(),默认的代码会协作对应的产品。
REMOVEONLY & REMOVEALLMODE & REMOVEALL
REMOVEONLY 与 REMOVEALLMODE 都是一个flag,其值是true or false。
通过调用-removeonly 会将REMOVEONLY 置为true,即告诉开发者,这是通过命令行调用的卸载模式。
通过在Maintaince Dialog选择REMOVEALL(一个Installshield预定义的一个值),会将REMOVEALLMODE置为true。
静默安装
需要先录制安装脚本,即.iss文件。需要注意的是,它的安装过程,必须严格按照.iss中描述的那样,否则会安装失败。如果安装过程有很多条件选择,需要录制多个.iss文件。
2.升级安装
对应Installshield script,升级的时候,需要注意merge module可能不会被更新。暂时还没有找到原因,目前采用的是walk around的方式,即修改merge modulecomponent的id,来完成升级安装。
相关文章推荐
- 关于InstallShield Projects[转]
- InstallShield使用介绍之二:InstallShield的系统变量
- InstallShield 2011新功能试用(7)- 新增加的InstallShield Prerequisites
- Installshield Script刷新桌面
- npp-installer - A script to install the popular Win32 editor Notepad ++ in Linux - Google Project Hosting
- 1.【cocos2d翻译系列】Beginner's Guide-Lesson1:Install + Start empty project
- 使用Installshield Limited Edition Project 将文件打包成 "exe" 格式的安装包
- vs 2012 InstallShield Limited Edition Project 打包windows服务解析
- Installshield 总结系列之Basic MSI
- InstallShield 2011新功能试用(7)- 新增加的InstallShield Prerequisites
- InstallMySql (InstallShield script)
- VS2013使用自带的InstallShield Limited Edition Project 打包项目应用程序
- 软件project经验总结系列之三 - 计划阶段控制
- INSTALLSHIELD11.5中打包水晶报表的问题,ScriptProject与ScriiptMSIProject差异引起的错误!
- Hadoop常见问题及解决方案总结系列(五)
- ODbgScript 入门系列(二) ODbgScript的命令
- Spring系列之Spring常用注解总结(转载)
- 系列总结博客(1)——SQL
- java io系列06之 序列化总结(Serializable 和 Externalizable)
- 排序总结系列八:桶排序Bucket sort(基数排序)