博客日历
2024年11月 | ||||||
一 | 二 | 三 | 四 | 五 | 六 | 七 |
28 | 29 | 30 | 31 | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 1 |
存档
2024年03月 04月 05月 2021年
01月 02月 11月 12月 2020年
02月 03月 04月 05月 06月 07月
09月 2018年
09月 2017年
01月 02月 07月 2016年
01月 04月 07月 08月 11月 12月
2015年
01月 02月 03月 05月 09月 10月
11月 2014年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2013年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2012年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2011年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2010年
01月 02月 03月 04月 05月 06月
07月 08月 09月 10月 11月 12月
2009年
03月 04月 05月 06月 07月 08月
09月 10月 11月 12月
PjBlog的布局模型
10分钟入门InstallShield
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)
分类:Win32/C++ 查看次数:13307 发布时间:2009/8/30 22:20:06