是否有任何理由不设置安装,以便始终进行主要升级并更改产品代码?
我发现支持不同类型的安装需要更多代码,并且"修复"安装似乎更容易通过重大升级.此外,需要安装的应用程序不是很大,因此不需要"服务包"或补丁安装程序.
不.如果您的应用程序很小,并且您感觉不到卸载和安装的痛苦,那么Major Upgrades是最容易做到的事情.
如果主要升级用户体验不可接受,我只会转向更高级的更新机制.
我通常发现轻微升级仅在少数情况下有用:
1:卸载错误:已安装的MSI的卸载顺序中存在错误.由于次要升级不会卸载产品,而只是重新安装它.这允许您在调用之前修复卸载序列中的任何错误.
2:修补程序:非常大的产品需要进行非常小的调整.说一个文件或几个文件的错误修复.对于需要更换少量文件的所有大型产品,几周后通常会有一个小错误要求.主要升级对此可能很糟糕 - 卸载并重新安装10000个文件中的4个?
3:修补:您希望为产品部署修补程序.MSI确实允许使用主要的升级补丁,但是这些补丁比小型升级补丁更加复杂(这也很困难).
在我看来,"小更新"功能绝不能用于任何目的.仅限主要或次要升级.