我想编写一个msi安装程序,该安装程序在运行时会卸载以前的版本。我在VS 2013中有一个安装项目,其中DetectNewerInstalledVersion = True和RemovePreviousVersions = True。这是我的工作:
msi运行得很好,但是旧的EXE仍然在programs文件夹中。如果是全新安装,它将成功安装该程序。我在做什么错?
我终于找到了答案的实际答案,我会将其发布在这里,供那些偶然发现此问题的人使用。这是我所缺少的一步:
您需要转到项目中的Properties> AssemblyInfo.cs并更新AssemblyVersion和AssemblyFileVersion号。否则,此项目的EXE实际上不会更新。希望这会有所帮助!
为什么不植入自定义操作来备份和删除以前的安装文件夹以提高安全性:)
在Visual Studio 2017中没有帮助。