wpf - Clickonce 应用程序文件引用了错误的部署代码库路径

标签 wpf deployment msbuild clickonce msbuild-4.0

我正在使用 MSBuild 部署我的 clickonce WPF 应用程序。部署后,我的应用程序clickonce文件(Myapplication.application)有以下节点

<deployment install="true" mapFileExtensions="true" minimumRequiredVersion="4.9.25.0" co.v1:createDesktopShortcut="true">
    <subscription>
      <update>
        <beforeApplicationStartup />
      </update>
    </subscription>
    <deploymentProvider codebase="file://myapppath/myapplication.application" />
  </deployment>

代码基值取自 csproj 文件的 PublishUrl 节点。但是,当我通过命令行脚本使用 MSBuild 发布项目时,我提供了这个值。像这样

<MSBuild Projects="LTL.SOL.WorkflowDesigner.csproj" Targets="Publish" Properties="PublishDir=$(PublishDir);PublishUrl=http://myapp/;InstallUrl=$(InstallUrl)"></MSBuild>

我提供的路径被忽略,clickonce 从 csproj 文件中获取发布 URL。有什么想法吗?

最佳答案

您可以设置 3 个不同的 URL:

  • 发布网址
  • 更新网址
  • 安装网址

您似乎将发布和安装 URL 设置为不同的值,这没问题,但不正常。我建议将所有这 3 个设置为相同的值,您应该会发现这将解决您与 deploymentProvider 的问题。您的属性“InstallUrl”可能为空并导致不良行为。

关于wpf - Clickonce 应用程序文件引用了错误的部署代码库路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31303608/

相关文章:

visual-studio - Visual Studio 在构建时将 .config 文件复制到 bin,但 MSBuild 不会

.net - msbuild 失败 : MSB3086, MSB3091 : "AL.exe", "resgen.exe"未找到

c# - 基于未命名的样式

javascript - 如何动态更改表格列的内容

.net - Clickonce 发布 - "The file ' default.htm'已存在于此网站中”

web-applications - 将您的 Web 应用程序发布到野外

java - 使用 JRE 分发我的应用程序 jar

c# - 数据绑定(bind)时的 wpf 默认组合框项

c# - 将文本框拆分为 4 个独立的文本框,但保存在一个 EF 字段中

MSBuild 不尊重我的 ClickOnce 应用程序的 PublishUrl 属性