【问题标题】:Explanation on specific differences between my click once publish when done via command line and from Visual Studio通过命令行和 Visual Studio 完成单击后发布时的具体差异说明
【发布时间】:2018-06-25 07:16:53
【问题描述】:

我试图了解为什么我的 WindowsForm 应用发布在通过命令行和 Visual Studio 的发布时表现不同。

区别在于:

  1. 在我的命令行发布中,.exe 的副本放置在顶级目录发布文件夹中,而通过 VS 发布时它不存在
  2. 在我的命令行发布中,[Application Files] 文件夹中缺少 .application 文件,而通过 VS 发布时它存在

显示上述曝光的屏幕截图:

有人知道为什么会这样吗?我尝试过使用发布设置,但仍然没有成功。

下面是我的命令行语句的样子(通过 Jenkins 运行):

【问题讨论】:

  • 这个问题有什么更新吗?你解决了这个问题吗?如果没有,请告诉我有关此问题的最新信息吗?我会继续关注。
  • 您好 Leo,感谢您的合作。我给了你一个赞成票,但我没有按照自定义 msbuild 目标(构建步骤)的说明进行操作。我承受着新版本的压力,这个问题源于我认为可能与我的部署问题有关的问题,但除了没有任何迹象表明它是一个问题之外,它与我一直试图解决的问题无关解决了,所以我没有再跟进了。

标签: visual-studio deployment msbuild clickonce


【解决方案1】:

解释我通过命令行和 Visual Studio 完成点击后发布后的具体差异

这是因为某些功能是由 Visual-Studio 完成的,而不是由 MSBuild 命令行完成的。因此,从命令行执行时,单击一次部署的行为会有所不同。

通过命令行发布时,只有Project.exeSetup.exe 被复制到部署文件夹。可以通过属性PublishDir切换部署文件夹:

msbuild "ProjectName.csproj" /target:publish /p:Configuration=Release;PublishDir=D:\TestPublishFolder

当您从 Visual Studio 发布时,Visual Studio 将执行更多功能,包括 Application Files 文件夹和将 .application 文件放入部署文件夹。

如果您希望通过命令行发布时获得与 Visual Studio 相同的发布结果,您可以自定义目标来实现。

请参阅ApplicationFiles folder missing when ClickOnce publish with command line 了解更多详细信息。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-02
    • 2012-02-04
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多