升级MSI并使用Eleckey updateshield

时间:2015-06-18 10:30:30

标签: windows-installer

我已经设置了我的Windows应用程序,我想创建自动更新。为此,我使用了ElecKey。对于安装升级,我创建了完整的补丁,因此我创建了另一个具有相同升级代码的MSI和新的产品版本,并将RemovePreviousVersion设置为True。但我发现即使应用程序仍在运行,MSI也没有替换文件MSI正在安装应用程序。怎么办?

1 个答案:

答案 0 :(得分:0)

听起来您正在使用Visual Studio安装程序项目,因为RemovePreviousVersions是他们使用的术语。所以:

  1. “创建完整补丁”不是您正在做的事情,因此使用该说明会让人感到困惑。您正在进行重大升级,MSI既是全新安装,也是自动卸载旧产品(如果已经安装了旧产品)。

  2. 除非您增加文件版本,否则VS安装项目不会升级单个文件。与其他所有更新机制(修补程序,Service Pack,修补程序等)一样,仅在传入文件版​​本较高时才替换文件。因此,假设您的升级工作正常,请增加版本化文件的文件版本,如果它们没有文件版本,则开始使用它们。

  3. https://msdn.microsoft.com/en-us/library/aa367835(v=vs.85).aspx

    1. 除非上下文相同,否则升级将无效:Everyone安装将仅升级Everyone安装,而Just me安装将仅升级Just me安装产品。如果您在“程序和功能”中看到两个条目,则表示无法正常工作。