我第一次遇到问题,我的Installshield MSI安装程序进行了一次小的升级(我认为这是正确的术语?)。我在安装程序中更改了必要的值,因为我之前做了很多次:将“Product Version”从“2.0.12”设置为“2.0.13”,并将组件文件/程序集版本从“2016.12.19.1415”更新为“2017.1” .30.1037" 。但是,当我运行升级时,组件不会从2016版本升级到2017版本。
以下是我从MSI日志获得的有关组件的信息:
MSI(4:10)[16:01:32:848]:组件:EAS.Common.SignalR.Client.dll;已安装:本地;要求:无效;行动:空
编辑:我恢复到以前版本的安装程序并添加了更新。升级现在可以正常运行。所以我认为它与我添加的新组件有关。
答案 0 :(得分:2)
大多数人最好使用更简单更灵活但效率更低的主要升级。次要升级需要对组件规则有深刻的理解,并且需要严格限制可以做什么和不能做什么。这需要开发团队遵守他们要求安装开发人员做的事情。
如果您要进行小幅升级,请务必使用MSIENFORCEUPGRADECOMPONENTRULES property完全测试您的合规性。这可能有助于您找到错误,而不是安装似乎有效,但不会以您期望的方式结束。