我的应用程序的先前版本缺少UpgradeCode(正如我通过检查this question所发现的那样)。 是否有可能在没有UpgradeCode的情况下执行升级?
现在,当我安装新版本时,我最终安装了2个版本。
我的想法是创建一个脚本,将UpgradeCode添加到旧版本,然后我就可以安装新版本并删除旧版本。这甚至可能吗?或者也许有更好的方法来做到这一点。
卸载旧版本然后安装新版本似乎是一个很好的方法,但我的客户拒绝这样做。
答案 0 :(得分:1)
您可以构建一个添加UpgradeCode的补丁,这就是我想要的。你不能只将UpgradeCode添加到旧版本,虽然我不确定你得到了什么。改变MSI将无法执行任何有用的操作,因为您无法重新安装它。改变缓存的MSI无济于事,因为注册表中有很多关于ProductCodes和UpgradeCodes之间关系的数据。