【问题标题】:clickonce, customer specific update URL - How to manageclickonce,客户特定的更新 URL - 如何管理
【发布时间】:2017-04-02 08:16:29
【问题描述】:

我有一个 clickonce 部署问题/问题,我需要帮助确定如何解决。我已经查看了这里已经提出的有关 clickonce 的大量问题,但并没有绊倒我的问题的解决方案。

情况如下:

在工作中,我们即将将我们的应用程序从非基于 .net 的应用程序重新开发为基于 .net 的应用程序,作为使用 clickonce 进行安装和更新的 WPF 应用程序。这是一项无法更改的管理决策,因此其他建议将无助于解决问题。

目前,我们有 100 多个客户/安装,每个客户/安装都有我们当前应用程序的多个用户,并且需要一种简单的方法来控制何时为每个客户提供更新,问题就从这里开始了。我/我们对 clickonce 的理解是,安装和更新 URL 嵌入在签名的清单文件中,因此我需要清单文件和程序文件的副本。客户以便控制每个客户何时更新系统。

在我看来,我想要一个有点像这样的解决方案:

我为应用程序/产品创建了一个站点,例如myproductsite.com 带有类似 myproductsite.com/application/install 的 URL 用于初始安装目的,而不考虑客户是谁,以及类似 myproductsite.com/application/update/somecustomerid 的 URL 用于更新目的。每个客户都有自己的更新文件夹/URL,由 somecustomerid 标识,只要特定客户可以使用更新,更新就会发布到该更新文件夹/URL。然后,我将制作一个管理工具,该工具可以简化在客户特定文件夹/URL 中提供更新的过程。

为了配合这一点,由于 URL 的 somecustomerid 部分,更新的 URL 必须针对每个客户都是特定的,据我了解,这不能取自例如。 app.config 文件并在程序搜索更新时合并到 URL 中。我希望那里有人不知道。

如果我是对的,有没有办法将清单文件作为一个批次制作,以便管理工具可以制作这些清单文件和/或将它们分发到 somecustomerid 文件夹,只要一个或多个更新可用客户?

据我了解,一旦在客户处进行安装,在我端更改安装和更新 URL 并且仍然确保 clickonce 可以正常工作,即使不是几乎不可能,也是非常麻烦的。

我可能完全误解了 clickonce 的概念,因此提出了非常愚蠢的问题,但我仍然需要更新一些客户而不更新其他客户,我仍然无法弄清楚如何实施/管理这个问题。

其他人可能也有类似的问题。我不能成为第一个需要独立更新客户的人,所以请分享您的经验,注意事项。

问候 莫腾

【问题讨论】:

    标签: clickonce


    【解决方案1】:

    ClickOnce 默认假定所有 客户将从同一位置安装应用程序并同时获得建议的更新。我不知道有什么方法可以使用默认方式更改此设置(除了为每个客户创建不同的部署)。

    修改清单和路径的问题在于,出于安全原因,构成部署的 XML 文件已签名,因此您无法在创建部署后更改它们而不破坏其签名,从而破坏 ClickOnce 安装/更新过程.

    但是,您可以尝试编写 ClickOnce 部署过程的脚本。 I found this link(不过,我没有阅读全部内容)描述了如何在 Visual Studio 之外构建 ClickOnce 部署。也许这会帮助您为每个客户进行部署,尤其是。因为有关于 InstallURL、SupportUrl、PublishURL 和 UpdateURL 的部分?

    【讨论】:

    • 感谢 Thorsten 我自己一直在研究同一个链接,但由于缺乏关于 clickonce 的知识,我不确定这是正确的方法。我现在将更深入地研究它,并希望能解决我的问题。再次感谢 /Morten
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-30
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 2013-12-05
    相关资源
    最近更新 更多