在运行时更改.NET ClickOnce部署的更新位置

时间:2011-04-07 16:22:16

标签: visual-studio-2010 clickonce .net-4.0

我正在探索使用ClickOnce发布应用程序的可能性。我想基于每个客户更改安装和更新位置,以便客户可以根据需要在本地Intranet上托管安装和更新文件夹。我已经读过这个,似乎MageUI.exe工具会做一些这样的事情,但我只是想知道是否有人在生产环境中使用过这个问题,它是如何解决问题的呢?有没有人有关于此的好指南的链接?

我可以想象这会变得复杂,例如我们有40个客户,每个客户都有自己的部署,因此有40个部署清单。然后我对应用程序进行了更改,然后我必须创建40个新的部署清单(我可以在批处理文件中完成)并将它们发送出去?

2 个答案:

答案 0 :(得分:0)

我对此并不满意 - http://www.pcreview.co.uk/forums/dynamically-changing-updatelocation-runtime-t2310400.html

使用此代码,您可以访问ad.UpdateLocation,但是,您无法更改它。

UpdateCheckInfo info = null;
if (!ApplicationDeployment.IsNetworkDeployed) return false;
ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;
ad.UpdateLocation = YOUR_FOLDER; // won't work

我认为在运行时创建一个ApplicationDeployment,并在运行时配置它是一个很好的尝试...但我不知道它是否会识别CurrentDeployment。

答案 1 :(得分:0)

您可能需要查看以下文章。有关如何设置具有多个部署支持的应用程序的说明,但需要涉及客户方。