安装了一个旧程序,该程序使用 InstallShield 为 VS2013 生成的包安装。最近升级到 VS2015 社区,但由于社区无法使用 InstallShield,我不得不使用 Installer Projects 重做我的安装程序。我已经到了我有一个工作安装程序的地步,一切似乎都很好,直到我尝试升级。我的安装程序中有一个匹配UpgradeCode
,更大的Version
数字,InstallAllUsers
与旧的匹配,并RemovePreviousVersions
设置为 true。Afaik 一切都应该井井有条。
正确运行新安装程序会卸载以前的版本,并且 GUI 看起来像是正确安装了新安装程序,它甚至正确显示在控制面板的添加/删除程序列表中。然而,应该安装新版本的整个目录都不见了。再次运行安装程序进行修复,然后真正安装新文件。
我错过了什么?为什么不能一次性通过升级?在这种情况下可以进行什么样的调试?
非常感谢任何有用的评论、指针和链接。
编辑:发布后,我也尝试过对我的程序集进行版本控制,正如此处指出的那样,但没有结果。我发现版本 65535 是无效的。
谷歌告诉我有一个叫做 的东西REINSTALLMODE
,但我似乎找不到任何可以影响它的地方。