摘要:
在InstallShield中,通过工程向导创建的InstallScript MSI工程中,默认情况下是没有用户协议界面的。所以我们需要通过修改脚本的方式实现:首先是在事件响应函数OnFirstUIBefore中添加SdLicense2Ex,部分代码段见:Dlg_SdWelcome:szTitle="";szMsg="";nResult=SdWelcome(szTitle,szMsg);if(nResult=BACK)gotoDlg_SdWelcome;Dlg_SdLicense2:szTitle="";szOpt1="&q 阅读全文
随笔档案-2011年03月
Basic INFO:InstallShield 工程如何制作Network Image安装包(即安装包为一个Setup.exe文件)
2011-03-16 17:38 by Kevin.Wan, 2789 阅读, 收藏, 编辑
摘要:
这是基础内容,制作Network Image安装包(安装包为一个单独的Setup.exe),现按照各种工程类型分开介绍。InstallScript工程:方法1:直接在Project Assistant -> Build Installation界面中,勾选Single Executable,然后点击最下边的Build Installations按键进行编译。方法2:通过Release Wizard进行设置1. 从工具菜单启动Release Wizard2. Specify a Release界面默认设置,点击Next3. Media Type界面中,Media Type的下拉菜单中选择N 阅读全文
HOWTO:InstallShield工程中自定义Merge Module的安装路径长度受限
2011-03-15 10:35 by Kevin.Wan, 696 阅读, 收藏, 编辑
摘要:
在InstallShield工程中,如果我们添加了Merge Module并自定义其安装路径,长度受限,只能接受51个字符,见下图:解决方法如下:第一步:首先在Components视图中添加一个空的Component,然后指定其安装路径(这里就指定Merge Module要安装的路径),之后注意这个Components的Destination属性,见下图:注意这里用大括号{}括起来的红色部分。第二步,在Merge Module的Property界面中,指定Destination的路径,从下拉菜单中选择[MERGE_MODULE_SAMPLES]这项(其与前一步红色部分内容一致)。上述方法只对I 阅读全文
Basic INFO:InstallScript工程中安装包写入的默认注册表信息如何删除
2011-03-09 12:08 by Kevin.Wan, 1349 阅读, 收藏, 编辑
摘要:
在InstallScript工程中,默认情况下,安装包会在注册表中写入如下键值:HKEY_LOCAL_MACHINE\SOFTWARE\{公司名}\{产品名}\{产品版本}安装打包人员可能会通过其他方式向注册表中写入产品信息或者干脆不写,所以默认这部分信息就显的多余,所以我们可以在不需要它的情况下去掉。具体操作方法是:在OnMoveData事件响应函数中将CreateInstallationInfo(); 这段注释掉即可。注意:此方法只适用于InstallScript工程类型,对InstallScript MSI无效。版权声明: 转载时请务必以超链接形式标明文章原始出处和作者信息 阅读全文
INFO:InstallShield Express版本不支持64位安装包制作
2011-03-05 23:13 by Kevin.Wan, 1519 阅读, 收藏, 编辑
摘要:
有一些朋友在使用InstallShield Express版本,对于这些朋友来说,如果想实现64系统的支持,那必须升级到Professional或Premier版本。详细见InstallShield的Feature说明:http://www.flexerasoftware.com/products/installshield/features.htm 阅读全文
INFO:InstallShield工程中System Search的使用注意事项
2011-03-04 15:27 by Kevin.Wan, 955 阅读, 收藏, 编辑
摘要:
应用程序运行往往有一些环境依赖,所以我们会在安装包中设置安装条件,满足条件的情况下才继续安装,否则提示用户并退出安装。在InstallScript MSI和Basic MSI工程中,我们可以在Project Assistant的Installation Requirements设置界面中, 通过左上角的Create a custom software condition来添加。1. 设置查找项,我们选择Registry entry2. 设置注册表键值等内容,这里我们在Local Machine下查找,键为:SOFTWARE\Kevin Wan\System Search Wizard,键值为I 阅读全文
HOWTO:InstallShield的Basic MSI工程中如何增加序列号输入选项
2011-03-04 10:35 by Kevin.Wan, 2054 阅读, 收藏, 编辑
摘要:
在Basic MSI的工程类型中,序列号输入功能默认已经在CustomerInformation界面中实现,所以只需要通过如下设置,即可将序列号输入添加到您的工程中:1. 在Installation Designer的Dialogs视图中,找到CustomerInformation界面,选择序列号输入框,之后在右侧Mark属性中指定序列号模板(例如:????-????-???????,“?”代表可以接受数字和字符,如果设置为“#”,则只能接受数字)。2. 在Property Manager中添加ISX_SERIALNUM Property(InstallShield中默认添加一个Proper. 阅读全文
Basic INFO:安装包卸载之后为什么目标机上有文件残留
2011-03-01 11:44 by Kevin.Wan, 1562 阅读, 收藏, 编辑
摘要:
鉴于安装打包过程中,经常会有一些基本知识,在各种交流场合总是被不断问及,所以计划陆续写一些相关文章。今天的主题是《安装包卸载之后为什么目标机上有文件残留》。卸载后文件残留有很多原因,我归纳为以下几类:1. 卸载时程序正在运行、或文件正在占用。2. 非InstallShield标准框架内添加安装的文件,比如我们通过脚本代码或第三方程序在安装过程中复制到目标机安装路径下的文件。3. 应用程序在运行过程中产生的文件,这部分也不会被删除,非安装包安装的文件自然不会在卸载时删除。4. 在InstallShield工程中,将Component的Uninstall属性设置为Yes。出现上述情况,还需要清除安 阅读全文