将ClickOnce清单移动到其他服务器后没有自动更新

时间:2011-07-22 09:09:50

标签: clickonce manifest

我在WinForms应用程序的清单中更改了部署提供程序。这是一个签名的清单。我也增加了清单的出版版本。

然而,似乎我必须在客户端上卸载该应用程序并重新安装它,因为它不会像通常那样自动获取更新。

这是你预期的事情还是这种行为不正确?

事实证明只需要重新安装,而不是卸载。

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您已更改了应用程序的已发布位置,但是您的ClickOnce应用程序用户的客户未获得更新?

如果上述陈述属实,并且您使用的是.Net 2.0或3.0框架,那么您别无选择,只能卸载并重新安装该应用程序。

这在过去一直是我头疼的问题,因此我编写了一个简单的API,您可以将其添加到项目中,从而简化并帮助自动执行更新过程。要使API正常工作,您必须将其添加到应用程序并将更新发布到原始服务器。每次应用程序启动时,应用程序都会检查服务器上的配置文件,以查看是否存在应从其他安装位置应用的更新。如果有,它将取消当前版本并安装新版本。

有关详细信息,请查看this博文,或从projects home page下载API。

答案 1 :(得分:1)

从技术上讲,ClickOnce不允许您更改提供程序URL(即位置),但有一种简单的方法。请查看以下内容:

http://robindotnet.wordpress.com/2010/01/17/how-to-move-a-clickonce-deployment/