InstallShield是使用最广泛的安装程序开发环境,他可以说是软件安装方面的行业标准。
通过下面这样几个简单的步骤,就可以创建一个专业的安装程序。
0.安装InstallShield
InstallShield版本众多,笔者目前使用的InstallShield 2009 Premier,该版本可以与Microsoft Visual Studio .NET 2003完美集成。

第一部分、简单的,仅复制文件的安装程序

1. 新建一个InstallScript项目
 
2.使用Project Asistant修改该安装程序的基本信息
当然,在这里修改的内容也都可以在这个目录树中的其他项中修改。
 
3.修改默认安装路径
TARGETDIR后边的值即为默认安装路径。
 
4.添加安装过程中要复制的文件
 
5.添加自己需要的注册表值以及快捷方式
 
 
6.设置发布选项
要将安装程序编译为单独的exe以及设置其图标,则需要设置如下选项:
 
 
7.编译即可。
 

第二部分、具有自定义安装步骤的安装程序

1.编写Installshield安装脚本
Installshield脚本的语法兼有Pascal,VB,C++的特点,比较简单,其编程方式和VB类似,是基于事件的。
 
 
2. Installshield脚本的几个关键事件
A.OnBegin
这个事件发生在如下界面显示之前,如果有运行环境检测,初始化之类的的脚本,需要放在这里。
 
 
B. OnFirstUIBefore
该事件发生在如下界面显示之前,此时内装程序还没有开始复制文件(需要特别强调的是,OnFirst开头的事件都发生在软件安装时):
 
 
C.OnFirstUIAfter
该事件发生在单击了如下界面的“安装”按钮之后,此时开始复制文件:
 
 
D.OnEnd
该事件发生在单击了如下界面的“完成”按钮之后:
 
 

第三部分、关于卸载

InstallShield会对整个安装过程记录日志,对于简单应用来说,卸载过程不需编写代码,InstallShield会自动根据日志进行卸载操作。
 
如果某些操作不需要让InstallShield记录日志,自动卸载,可以在这些操作前执行:
Disable(LOGGING);

第四部分、一些常用的InstallShield函数和常量

1.写ini文件
WriteProfInt
WriteProfString

2.设置文件属性(是否只读等)
SetFileInfo

3.弹出消息
MessageBox

4.从注册表读取数据
RegDBSetDefaultRoot
RegDBGetKeyValueEx

5.文件和目录操作
CopyFile
DeleteFile
DeleteDir
FindFile

一些常用的预定义全局变量、常量:
TARGETDIR 代表应用程序安装目录(string)
MAINTENANCE 是否是维护模式(bool)

 


本文链接地址: 10分钟入门InstallShield
http://qingfengju.com/index.asp?id=146

分类:Win32/C++ 查看次数:11272 发布时间:2009-8-30 22:20:06