品牌型号:惠普 Laptop 15
软件版本:InstallShield 2020
系统:Windows 10
在使用InstallShield制作升级包时,一般流程确实比较简单,通常是修改版本号、配置好升级路径就能完成。但很多人会遇到升级时检测不到旧版本的问题,导致无法正常升级。本期我们就来为大家介绍一下InstallShield怎么创建升级包,InstallShield升级包检测不到旧版本怎么排查的相关内容。
一、InstallShield怎么创建升级包
平时做软件打包和企业部署时,升级包制作是一个非常高频的需求。下面介绍InstallShield的具体操作方法。
1、首先打开InstallShield工程,注意三个关键标识:Product Code、Upgrade Code和Package Code。

2、进入General Information界面,先修改版本号。新版本号必须严格比旧版本高,比如旧版1.0.0,新版设成1.0.1或2.0.0,否则无法触发升级逻辑。

3、修改完版本号后,接下来要根据升级类型来决定是否修改Product Code。如果是大版本升级,则需要重新生成Product Code;如果是小版本或补丁升级,则不要修改Product Code。无论哪种升级情况,Upgrade Code都绝对不能改动,否则系统将无法识别出旧版本。

4、在左侧导航栏中找到界面所示内容,右键选择New Upgrade。在弹出的配置界面中,填写旧版本对应的Upgrade Code,必须与旧工程中的Upgrade Code完全一致。接着设置版本范围。如果存在多个不同的旧版本,可以添加多个Upgrade条目,分别配置各自的版本范围。升级规则配置完成后,进入Releases界面,选择生成单文件的exe格式,方便后续部署使用。

二、InstallShield升级包检测不到旧版本怎么排查
升级包做好了,却发现检测不到旧版本,这时候该怎么排查?我们继续往下看。
1、先确认Upgrade Code新旧完全一致,包括大小写和花括号。再检查Product Code,大版本升级时必须不同于旧版,小版本升级时则不能改动。最后确认新版本号严格大于旧版,且版本格式保持一致。这三个地方是最常见的出错原因。
2、排查升级规则配置,进入Upgrades视图,确认已经配置了针对旧版本的升级项,检查版本范围是否覆盖了旧版本号(例如旧版是 1.0.0,Min Version就不能设成1.1.0)。另外检查Language字段是否与旧版安装包的语言相匹配。

3、如果旧版本是用管理员权限安装的,那么新版本也必须以管理员权限运行,否则无法读取注册表中的安装信息。同时要确认新旧版本的安装类型一致:要么都选择所有用户,要么都选择仅当前用户,不能一个设为系统级,另一个设为用户级。排查时可以先使用默认安装路径进行测试。
以上就是关于InstallShield怎么创建升级包,InstallShield升级包检测不到旧版本怎么排查的全部内容了,InstallShield在软件版本管理方面非常实用,不仅可以快速生成规范的升级安装包,还能通过合理配置,实现旧版本的自动检测与平滑升级。
