即使使用REINSTALLMODE = amus,文件也不会被覆盖

时间:2013-07-11 15:04:12

标签: installshield overwrite installshield-2012

我对InstallShield很陌生 - 所以请耐心等待。

我已经创建了一个基本MSI安装程序,可以正确安装我们的应用程序,直到最近,每次我重新构建它(使用一些新文件来构建我们的应用程序),它都会毫无问题地替换文件。

然而,我今天早上用新版本重建了它,它完全拒绝更换任何文件。

例如,现在主exe的文件版本为8.0.0.15,它替换的版本是8.0.0.13;新修改和创建的日期是2013年7月11日,它正在替换它的是2013年6月26日 - 它仍然不会用新的文件替换旧文件(这只是一个数百个文件,但是主要的exe,所以它肯定会随着每个版本而改变)。

我已将我们自己的exe和dll的属性更改为“文件和文件夹”下的“始终覆盖”无效(我没有触及第三方dll,因为它们从未改变过)。 我已将ResintallModeText更改为'asum'无效 - 我应该尝试'asumv'吗?。

在我重新安装应用程序之前完全卸载自己之前,还有什么我应该考虑尝试确定什么可能阻止installshield替换目标计算机上的文件?

我不知道可能会有什么变化导致它停止升级 - 因为一切运行正常,我们不必在几个月内对installshield进行任何更改。

如果您需要日志或任何内容,请告诉我(虽然我无法在安装时写出installshield verbose日志 - 但我可以提供Windows安装程序日志。)

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

感谢@anand的评论,这也解决了我的问题。就我而言,即使我更新了产品版本(即1.0.001到1.0.002)并更改了新版本的软件包代码,可执行文件也没有更新。

我的解决方案是右键单击“文件和文件夹”(在InstallShield中)中的可执行文件,然后选择“属性”。检查“始终覆盖”后,无论产品版本或软件包代码如何,我的可执行文件现在都会更新。

image of file properties dialog