我们正在发布我们的应用程序的新版本,我们希望它能够从客户端的计算机上卸载以前安装的版本。
我们怎么能这样做?
编辑:我正在使用Visual Studio中的部署项目安装此应用程序(以及之前的版本),因此我假设它是Windows Installer。
非常感谢!
答案 0 :(得分:5)
Visual Studio中的Deployement Project具有内置功能,可以删除应用程序的先前版本。
检查Deployement Project Properties中的“RemovePreviousVersions”属性。
http://msdn.microsoft.com/library/y63fxdw6.aspx
修改:
来自MSDN的:
安装程序检查UpgradeCode和 ProductCode属性确定 是否应该是早期版本 除去。 UpgradeCode必须是 两个版本相同;该 ProductCode必须不同。
答案 1 :(得分:4)
如果您的发行版使用批处理或其他自动部署工具,则可以使用以下命令行轻松卸载MSI产品:
msiexec [/uninstall | /x] [Product.msi | ProductCode]
答案 2 :(得分:1)
Microsoft Installer(* .msi)格式支持您想要做的事情,遗憾的是Visual Studio仅提供有限的自定义,并且旨在用于基本项目。
关于这个话题有很多资源,还有很多人提出类似的问题。我最好的建议是花一些时间研究MSDN文档。
...
<强>更新
行。在花了30分钟阅读一些文章之后,我认为可以使用您使用新安装程序打包的自定义操作。
关注creating a Custom Action上的这篇MSDN文章。它涉及创建一个新的类库,添加System.Configuration.Install.Installer
类,将其作为输出添加到安装项目,然后然后将其选择为自定义操作。
要查看自定义操作标签,请右键点击安装项目,然后选择查看&gt;自定义操作。
从这里开始:您需要编写代码以删除安装目录和AppData配置文件。有关如何设置Custom Action Data的文章可能会有所帮助。
祝你好运。HTH,
丹尼斯
答案 3 :(得分:0)
如果你编程,那么这是一个简单的反向批次 或者您可以使用某些安装程序/卸载程序构建器,如NSIS