OnFirstUIBefore:函数块用于第一安装应用时安装部件前所要完成的任务。一般在这里进行下列设:

1. 设置屏蔽

2. 显示欢迎信息,软件协议书或关于软件安装的其他说明信息

3. 从用户处获取信息,如注册信息,安装的目标位置,安装类型等

=====================================================================

当创建一个安装工程后,InstallShield会创建下面两个脚本文件:

  1. 用于全局事件处理程序和异常处理程序的Setup.rul
  2. 用于部件事件处理程序的ComponentEvents.rul

每个安装脚本都包含声明和函数块。声明可以出现在函数块之前或是出现在一个函数语句与该函数的begin语句之间。InstallShield脚本一般具有如下结构形式:

//常量定义,全局数据声明和函数声明

//函数块

所有安装脚本均以全局数据的声明开始。在这里,你可以定义常量和声明一些全局函数。声明 部分用来告诉编译器后面的脚本会用到哪些名称,同时在函数和其属性或值之间建立联系。当然,如果是内建函数,你就不必再对其加以声明了。

1.//常量定义

#define PRODUCT “InstallShield”

#define LIMIT 100

//变量声明

CHAR cVal;

NUMBER nVal;

STRING SZName;

prototype DisplayMsg(NUMBER,STRING)

prototype GetName(BYREF STRING)

InstallShield系统变量:

MAINTENANCE:在安装程序第一次运行

SRCDIR:包含了源文件夹的完整路径

SRCDISK:包含了源文件所在的驱动器名称

SUPPORTDIR:包含了用于存放临时文件的文件夹的完整路径

SYSINFO:包含了目标计算机上的操作平台的标志信息

TARGETDIR:包含了安装程序在硬盘上的目标文件夹的完整路径

WINDIR:包含了存放主操作环境的文件夹的完整路径

WINDISK:包含了存放主操作环境的盘符的名称

WINSYSDIR:包含了Windows\System文件夹的完整路径

WINSYSDISK:包含了Windows\System文件夹所在盘符的名称

常量:是一个定义了值的数据项。InstallShield支持两种类型的常量:预定义常量和用户自定义常量。

可以通过SprintfBox函数来了解某个预定义常量的值到底是什么。

SprintfBox(INFORMATION,””,”%d”,COMPONENT_FIELD_SELESCTED);

标点符号声明:

    1. 大部分语句以“;”结束,这种要求也适合用于那些独立的语句,例如end;,exit;,return;等等
    2. 关键字program,endprogram和begin等要放到单独一行中,并且不带任何标点符号,同时,每个函数块的第一行也不带标点符号
    3. 预处理语句后面不带“;”,例如#define,#include
    4. 在符号后面要使用冒号,例如:start:starthere:
    5. 用括号将参数表扩起来,当参数表中有多个参数时,应该用逗号将它们隔开

操作符:

1. 地址操作符

2. 算术操作符

3. 赋值操作符

IS脚本学习的更多相关文章

  1. 笔记——shell脚本学习指南

    <shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...

  2. 06- Shell脚本学习--其它

    Shell输入输出重定向 Unix 命令默认从标准输入设备(stdin)获取输入,将结果输出到标准输出设备(stdout)显示.一般情况下,标准输入设备就是键盘,标准输出设备就是终端,即显示器. 输出 ...

  3. 05- Shell脚本学习--函数

    函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用. 函数定义 Shell 函数的定义格式 ...

  4. 04- Shell脚本学习--条件控制和循环语句

    条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...

  5. 03- Shell脚本学习--字符串和数组

    字符串 字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似: 单双引号的区别: 双 ...

  6. 02- Shell脚本学习--运算符

    Shell运算符 Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符. 算术运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 aw ...

  7. 01- Shell脚本学习--入门

    简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把它们称作一种Shell.我们常说有多少 ...

  8. Shell 脚本学习资料搜集

    Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...

  9. 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式

    正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...

  10. 转 shell脚本学习指南

    shell脚本学习指南 以下八点不敢说就能成为你shell脚本学习指南de全部,至少可以让你编写出可靠的shell脚本. 1. 指定bashshell 脚本的第一行,#!之后应该是什么?如果拿这个问题 ...

随机推荐

  1. [置顶] 第二届微软CRM交流年会

    第二届微软CRM交流会将在12月14日举行,亲们要是感兴趣可以查看下面的活动详情.Jeff也是第一次参加这类活动,作为本次活动的嘉宾我为大家带来一个挺有意思的分享主题<Dynamics CRM ...

  2. hadoop2.2.0集群安装

    位说明. 位).Jdk使用的1.7(1.6也可以).网络配置好,相互可以ping通,java环境安装完毕.   第一部分 Hadoop 2.2 下载 位). 下载地址:http://apache.cl ...

  3. Android APK反编译具体解释(附图)

    这段时间在学Android应用开发,在想既然是用Java开发的应该非常好反编译从而得到源码吧,google了一下,确实非常easy,下面是我的实践过程. 在此郑重声明,贴出来的目的不是为了去破解人家的 ...

  4. OPENCV中滑动条的使用

    //文中存在两种不同的图像的平滑类型.一类是彩色图像,还有一类是灰度图像.经证明,两种均能够 #include<cv.h> #include<highgui.h> #inclu ...

  5. [TypeScript] Function Overloads in Typescript

    It's common in Javascript for functions to accept different argument types and to also return differ ...

  6. There is an error while getting planid. No Free partitions available

    问题概述 Oracle Advanced Supply Chain Planning最初的设置职责的时候有点问题,不知是不是要打什么补丁或其它配置什么东东,, 这个提示,,但我查到的分区是还有可用分区 ...

  7. 在DropDownList里显示多级分类

    protected void ddlBind() { DataTable dt = new DataTable(); ddlCategoryId.DataSource = getList(" ...

  8. Oracle存储过程中不支持DML语言的解决方法(针对遇见的DROP关键字)

    ---存储过程中的原语句: ---删除表 DROP TABLE A_NEWTDDATA; --报错 经查询:存储过程不支持DML语言: 解决方法: execute immediate 'DROP TA ...

  9. PHP关闭Notice错误提示

    原文出处 本文章介绍在php中关闭notice错误的一些做法,但是不得不说的是在关掉错误提示时,那么程序代码中大量的notice级别错误是否会造成PHP性能下降 PHP Notice: Undefin ...

  10. (转)asp.net基础-HttpModule

    HttpModule是向实现类提供模块初始化和处置事件.当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于H ...