InstallShield多语言安装包中如何获取用户选择的安装语言

初次安装:Not Installed

修改,修复或删除:Installed

删除(卸载):REMOVE

维护或修复:Installed AND Not REMOVE

小版本升级:IS_MINOR_UPGRADE

大版本升级:IS_MAJOR_UPGRADE

上述适用于InstallShield的Basic MSI工程和InstallScript MSI工程。

InstallShield工程中如何识别初次安装,维护模式和卸载

Basic MSI工程,通过Condition确定安装模式:

  • 第一次安装:Not Installed
  • 修复维护:Installed
  • 卸载:REMOVE=“ALL”

注意:InstallScript MSI工程里的Condition也同Basic MSI工程

InstallScript工程:

通过系统变量MAINTENANCE来判断,在第一次安装,该变量值为FALSE;如果是修复维护或卸载,则该变量值为TRUE。

比如代码可以这样写:

if (!MAINTENANCE) then 
// 这次运行第一次安装的执行代码 
endif; 

InstallScript工程中如何在用户协议界面中默认为接受协议

用户协议界面有六个对话框可用,它们分别是:SdLicense,SdLicense2,SdLicenseEx,SdLicense2Ex,SdLicenseRtf和SdLicense2Rtf。

我们修改的方法是利用上述对话框中的一个布尔类型的参数,具体位置各函数不一致(其中SdLicense和SdLicenseRtf没有此参数)。

在InstallShield 2010中,修改方法如下:

- SdLicense其实调用的是SdLicenseEx,可指定SdLicenseEx的最后一个参数为TRUE。
- SdLicense2调用的是SdLicense2Ex,可指定第五个参数为TRUE。
- SdLicenseEx直接指定第四个参数为TRUE。
- SdLicense2Ex直接指定第五个参数为TRUE。
- SdLicenseRtf调用的是SdLicenseEx,可指定SdLicenseEx的第五个参数为TRUE。
- SdLicense2Rtf调用的是SdLicense2Ex,可指定SdLicense2Ex的第五个参数为TRUE。

InstallShield中Basic MSI工程类型如何调用InstallScript脚本

A. 首先在Installation Designer/Behavior and Logic/InstallScript视图中,选中Files点击鼠标右键选择“New Script File”,默认会生成一个setup.rul的文件,并有一个MyFunction的函数声明和。

B. 之后我们在MyFunction函数内添加一行代码:MessageBox("MyFunction", INFORMATION);

当然,你也可以修改函数名,用更有实际意义字符串代替。

C. 在Installation Designer/Behavior and Logic/Custom Actions and Sequences视图中,选中顶端的Custom Actions点击鼠标右键选择“Custom Action Wizard”(这里的Custom Action我们经常也简称为CA),下面按着向导逐步说明。

  1. 第一个界面是Custom Action Wizard欢迎界面。
  2. 在第二个Basic Information界面中,选择CA的Name,而Comment可忽略。
  3. 在第三个Action Type界面中,在Type的下拉菜单中选择Run InstallScript Code。(这里你会发现你可以通过CA调用托管代码,其他可执行程序,以及JScript,VBScript等)
  4. 在第四个Action Parameters界面中,在Source的下拉菜单选择的MyFunction。(如果脚本Setup.rul中你有多个函数声明,你会发现都会显示到下拉菜单中)
  5. 之后的界面都按照默认设置,直到点击Finish结束。

D. 在同一树状结构中,Sequences/Installation/Execute,选中Execute点击鼠标右键选择Insert,你会看到在C中你添加的CA,选中你的CA,然后设置Condition。(注意如果是想在安装时执行:Not Installed;如果是卸载执行:Installed)

E. 有关我们的CA在Sequence中的位置, 可根据情况调整位置。

CA可以在Sequence中被调用,也可以在各个Dialog中被调用执行。

InstallShield学习网站推荐

InstallShield工具的学习也是一个渐进的过程,求人不如求己,所以给大家推荐几个好去处。

http://community.flexerasoftware.com/ 这是原厂的技术论坛,自然也是最好的,只是有些朋友可能会觉得英文网站不方便。

http://kb.flexerasoftware.com/ 原厂的知识库,如果深入研究,你会爱上她的。

http://www.appinstall.cn/,新的中文安装打包网站,还不错,只是目前注册用户不多,之前的Jarson中文论坛不知什么原因已经关闭。

另外推荐几个朋友的Blog

Stefan Krueger http://msmvps.com/blogs/installsite/default.aspx

Rod Maupin http://www.installationdeveloper.com/

海洋女神 http://www.cnblogs.com/Cindy_weiwei

奕婷  http://www.cnblogs.com/sabrinahuang/

转载:http://www.cnblogs.com/installshield/

InstallShield 教程相关推荐

  1. InstallShield 购买价格、教程培训、销售服务——中国独家总代Xlsoft China

    2019独角兽企业重金招聘Python工程师标准>>> [标签]: InstallShield购买报价.InstallShield教程培训.InstallShield销售价格.Ins ...

  2. 大量教程+工具+源码下载地址汇总

    应广大网友要求,最近小弟精心整理了一批免豆下载的C++优质资料并做了分类,包括98个学习资料.9个相关工具和21套源码.将此下载目录分享给大家,大家可以选择性下载.需要的就拿去,希望希望~ 0 l8 ...

  3. 【C++资料免豆下载】大量教程+工具+源码下载地址汇总

    应广大网友要求,最近小弟精心整理了一批免豆下载的C++优质资料并做了分类,包括98个学习资料.9个相关工具和21套源码.将此下载目录分享给大家,大家可以选择性下载.需要的就拿去,希望希望~ 完整附件下 ...

  4. 【C++资料免豆下载】大量教程+工具+源码下载地址汇总(转载)

    C++学习资料包括98个学习资料.9个相关工具和21套源码.将此下载目录分享给大家,大家可以选择性下载. 完整附件下载地址:http://down.51cto.com/data/433969 下面是附 ...

  5. 我手中的电子书书目清单(开始提供BT下载)

    13G电子书开始提供BT下载,下载说明及BT种子下载见我另一Blog网页:http://blog.csdn.net/yiyuan/archive/2005/10/16/504747.aspx 我手中的 ...

  6. yiyuan编程电子书系列(目录及种子)

    感觉不错,整个一个电子书库,与大家一起分享一下 BT下载地址: YiYuan编程电子书系列1 http://nnv.dl1.btchina.net/download.php?s=38fff1692d9 ...

  7. 编程基础知识c语言资料

    应广大网友要求,最近小弟精心整理了一批免豆下载的C++优质资料并做了分类,包括98个学习资料.9个相关工具和21套源码.将此下载目录分享给大家,大家可以选择性下载.需要的就拿去,希望希望~ 下面是附件 ...

  8. 【珍藏】C/C++热门精品资料地址集…

    应广大网友要求,最近小弟精心整理了一批免豆下载的C++优质资料并做了分类,包括98个学习资料.9个相关工具和21套源码.将此下载目录分享给大家,大家可以选择性下载.需要的就拿去,希望希望~ * S3 ...

  9. Visual Studio2012打包软件InstallShield Limited Edition安装教程

    之前用C#写了一个串口助手,用来读取stm32中的数据,并在C#写的上位机进行解包,但是发现程序只能在自己电脑上使用,不能在别的电脑上使用,发现原来需要将程序进行打包.VS2012取消了打包软件的默认 ...

  10. InstallShield 软件打包完整教程(含添加自定义依赖环境)

    任务说明:公司一个绿色版的软件,为安装部署是需要很多的环境依赖,如 DevExpress..net4.5.WinRAR等,客户提出安装复杂,并且有漏装后无法启动等情况,现将绿色版转安装版,并将依赖环境 ...

最新文章

  1. 最新 crtmpserver 源码的获取方法
  2. MySql5.7环境搭建
  3. 网站优化关键词如何分类看好这四种!
  4. 如何运行Perl和查看帮助
  5. Docker 安装JDK1.8
  6. window mysql proxy_window下mysql-proxy简单使用
  7. uboot 详细注释讲解
  8. pc样式在ie8中的bug
  9. 操作系统(13)-操作系统中的死锁及其预防、避免、检测与解除
  10. linux内核不发(Router Solicit)RS报文问题
  11. GZip压缩的js文件IE6下面不能包含script标签
  12. Dxg——Keil 单片机 开发笔记整理分类合集【所有的相关记录,都整理在此】
  13. 本人面试两个月真实经历:面试了20家大厂之后,发现这样介绍项目经验,显得项目很牛逼!
  14. 苹果6怎样分屏_皮皮喵聚合搜索漫画APP苹果版IOS付费版更新 0.3.6,已购账号快来更新,分享一下,兑换码大赠送活动,共享喜悦!...
  15. java多态的三种表现形式
  16. 问题解决之Cannot find module ‘fs/promises‘
  17. 2013年图灵奖--莱斯利·兰波特简介
  18. 双非一本考研国防科技大学计算机,不歧视“双非”,保护一志愿!40所“良心”大学值得推荐!...
  19. matlab程序算天气,科学网-站点气温数据的积温计算(含Matlab程序实现)-朱永超的博文...
  20. 个人作业2——必应词典案件分析

热门文章

  1. ev3 android,乐高®头脑风暴教育机器人EV3编程
  2. 《算法笔记》胡凡 配套刷题网站
  3. html设置背景颜色以及透明度代码,HTML怎么设置背景颜色透明度?
  4. 2022国二计算机office 考试考试秘籍总结大全
  5. 安装系统出现Winload.exe错误0xc000000e解决方法
  6. windows 安装 win32 win32com模块
  7. MS509Team----------------Cknife
  8. linux安装工具的过程
  9. 【FeignClient报错】Cannot deserialize value of type``from Object value (token `JsonToken.START_OBJECT`)
  10. c语言航空订票系统程序设计,C语言航空订票系统