【问题标题】:Publish ClickOnce app with MSBuild使用 MSBuild 发布 ClickOnce 应用
【发布时间】:2009-06-11 19:14:18
【问题描述】:

我需要一种方法来使用 MSBuild 将 ClickOnce 应用程序发布到多个 PublishDir(s)。我有四个环境(dev、qa、model、prod)并且需要为每个环境生成单独的 ClickOnce PublishDir(s),因为配置文件不同。主要问题之一是 MSBuild 不会创建 publish.htm 文件。任何帮助将不胜感激。

【问题讨论】:

    标签: msbuild clickonce publishing


    【解决方案1】:

    我刚刚在博客中回答了 publish.html 问题,接下来几天我将在博客中讨论多环境问题。

    http://wallism.wordpress.com/2009/12/08/clickonce-creating-publish-page-from-msbuild/

    【讨论】:

    • 这个答案没有任何用处,除了一个可能随时变位的链接(并且很难阅读。)
    • 如果答案没有任何用处,为什么它的赞成票比接受的答案多?
    【解决方案2】:

    一次性在四个位置手动创建 publish.htm 文件怎么样?

    在我的公司,我们根本不使用 publish.htm 文件。 但是我们确实有不同的环境,所以我们让构建脚本更改应用程序名称、更新位置、服务器 uri 等预构建并使用目标 Publish 构建它。然后将输出文件复制到相关环境的位置。

    我们有点老了,主要是在 cmd 文件中执行此操作,但我确信您可以有 4 个不同的 msbuild 目标来完成相同的工作。

    【讨论】:

    • 如果没有简单的方法来生成这个东西,这就是我要采取的路线。
    • 这里的主要问题是需要手动更新发布页面html为新版本号。
    【解决方案3】:

    这解决了多环境问题(嗯,这是解决问题的一种方法)

    http://wallism.wordpress.com/2009/12/21/msbuild-and-multiple-environments/

    【讨论】:

    • 答案不包含任何有用的内容(除了一个可能会腐烂且难以阅读的链接)。
    【解决方案4】:

    var globalProperty = new Dictionary();

    globalProperty.Add("配置", "发布");

    var buildRequest = new BuildRequestData(projectFileName, globalProperty, "15.0", new String[] { "Publish" }, null);

    希望这会对某人有所帮助

    (“15.0”,因为我使用的是 Visual Studio 2017)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多