2011-04-04 80 views
1

将Installshield 2010与基本MSI项目配合使用。如何在MSI升级时强制进行文件替换

我有几个配置文件必须在升级过程中被替换。由于它们是配置文件,它们没有版本。我相信它们不会被替换,因为在最初的安装过程中,安装程序会修改配置。这将修改日期设置为与创建日期不同。据我了解,未版本控制的文件已被修改,升级不会取代它。

有没有办法强制更换?我有一些需要setup.exe的bootstrap prerequsites,所以我宁愿不要修改orca中的.msi。

回答

4

MSI有一个叫做Version Lying的概念。 (嗯,实际上这是对MSI的默认文件版本控制规则的破解。)InstallShield的这个实现是将一个非常高的数字放到File表中。浏览组件|文件,并对有问题的文件执行右键单击属性,然后选择始终覆盖。

注意:如果这个文件也是它自己组件的关键文件,那将是最好的。如果你遇到的情况不是这样,那么这个文件或其他文件可能会发生(或不发生)奇怪的事情。 (见:组件规则)

+0

感谢。我正在使用动态文件链接,它不允许我指定覆盖规则。更改为静态链接,似乎按照我的要求行事。 – Web 2011-04-04 19:44:32

1

RESINSTALLMODE = amus是危险的,因为在某些情况下,它实际上可能降级共同文件,以较低的版本

相关问题