Windows installer Installshield MSI升级未更新文件

Windows installer Installshield MSI升级未更新文件,windows-installer,installation,installshield,Windows Installer,Installation,Installshield,我的Installshield MSI安装程序首次出现了一个小升级问题(我认为这是正确的术语?)。我在安装程序中更改了必要的值,就像我以前多次做的那样:将“产品版本”从“2.0.12”设置为“2.0.13”,并将组件文件/组件版本从“2016.12.19.1415”更新为“2017.1.30.1037”。但是,当我运行升级时,组件没有从2016版升级到2017版 下面是我从MSI日志中获得的有关该组件的详细信息: MSI(4C:10)[16:01:32:848]:组件:EAS.Common.si

我的Installshield MSI安装程序首次出现了一个小升级问题(我认为这是正确的术语?)。我在安装程序中更改了必要的值,就像我以前多次做的那样:将“产品版本”从“2.0.12”设置为“2.0.13”,并将组件文件/组件版本从“2016.12.19.1415”更新为“2017.1.30.1037”。但是,当我运行升级时,组件没有从2016版升级到2017版

下面是我从MSI日志中获得的有关该组件的详细信息:

MSI(4C:10)[16:01:32:848]:组件:EAS.Common.signal.Client.dll;安装:本地;请求:空;操作:空


编辑:我恢复到以前版本的安装程序并添加了更新。升级现在可以正常工作。因此,我认为这与我添加的新组件有关。

大多数人最好使用更简单、更灵活但效率更低的主要升级。小规模升级需要对组件规则有深刻的理解,并严格限制可以做什么和不能做什么。这需要开发团队对他们要求安装开发人员做的事情进行规范


如果要进行小规模升级,请确保使用来全面测试您的法规遵从性。这可能有助于您找到bug,而不是安装看起来正常但没有按您预期的方式结束。

大多数人最好使用更简单、更灵活但效率更低的主要升级。小规模升级需要对组件规则有深刻的理解,并严格限制可以做什么和不能做什么。这需要开发团队对他们要求安装开发人员做的事情进行规范


如果要进行小规模升级,请确保使用来全面测试您的法规遵从性。这可能会帮助您找到bug,而不是那些看起来正常但没有按预期方式结束的安装。

问题是我删除了以前安装中存在的组件。我将组件设置为具有条件“1=0”,并将其重命名为“DONOTDELETE_u{name}”,我会小心重命名组件。微星真的不喜欢改变主键。仅供参考,如果使用MSI<4.5,请务必阅读有关使用可传递组件位“屏蔽”组件的内容。对于>=4.5,请阅读MSI卸载取代组件。关于重命名组件和其他主键的警告:作为我最后的想法,任何一个做小升级和补丁的人都需要像上帝一样了解这些东西。在我有生之年,我只见过其中的几个人,他们都在微软的战壕里工作。对于普通人(包括我自己)来说,坚持主要升级。问题是我删除了以前安装中的一个组件。我将组件设置为具有条件“1=0”,并将其重命名为“DONOTDELETE_u{name}”,我会小心重命名组件。微星真的不喜欢改变主键。仅供参考,如果使用MSI<4.5,请务必阅读有关使用可传递组件位“屏蔽”组件的内容。对于>=4.5,请阅读MSI卸载取代组件。关于重命名组件和其他主键的警告:作为我最后的想法,任何一个做小升级和补丁的人都需要像上帝一样了解这些东西。在我有生之年,我只见过其中的几个人,他们都在微软的战壕里工作。对于普通人(包括我自己)来说,坚持主要升级。结局会更好。