我正在发布我的产品的新版本(小升级),我计划将其打包为补丁。这是 InstallShield 2009 中的基本 MSI 项目。
安装程序会在桌面和所有程序菜单中创建一些快捷方式,这些快捷方式引用版本号,例如。克。“我的产品 7.3”、“我的产品 7.3.2”。
快捷方式名称的更改导致升级完成后,系统以重复的快捷方式结束,一个用于7.3版本,另一个用于7.3.2版本。
我对此进行了一些研究并开始使用RemoveFile表,当我创建补丁 7.3.1 时它工作正常,但现在在补丁 7.3.2 中它在某些情况下不起作用。让我澄清一下。
这种情况确实有效:
- 我安装我的产品版本 7.3(完整安装程序)
- 运行补丁 7.3.1(Windows 安装程序补丁)。7.3的快捷方式被删除了。
- 运行补丁 7.3.2(Windows 安装程序补丁)。7.3.1 的快捷方式被删除了。
这种情况不起作用:
- 我安装我的产品版本 7.3(完整安装程序)
- 运行补丁 7.3.2(Windows 安装程序补丁)。7.3 的快捷方式不会被删除。
注意:我已经通过运行完整的安装程序而不是补丁来测试我的 7.3.2 版本,它工作正常。它执行次要升级并删除旧的快捷方式。
在我的 7.3.2 补丁中,我添加了 7.3 和 7.3.1 作为以前的设置。
详细的日志似乎没有提供太多信息(或者我可能没有进行正确的搜索)。
与 RemoveFile 表中的记录关联的组件已正确更新,我可以在日志中验证:
MSI (s) (58:EC) [15:51:44:846]: Component: ProgramFiles; Installed: Local; Request: Local; Action: Local
我将感谢您提供的任何帮助。
谢谢。
胡安卡洛斯