【问题标题】:Moving dependencies to another folder during release build在发布构建期间将依赖项移动到另一个文件夹
【发布时间】:2018-11-26 03:51:54
【问题描述】:

我正在开发 Windows 应用程序,它会生成一个 exe 以及配置和所需的 dll,如下面的屏幕截图所示。当我为发布而构建时,我想将突出显示的元素移动到名为依赖项的单独文件夹中。我该怎么做呢?我正在使用 Visual Studio 2017。

【问题讨论】:

  • 这个问题有什么更新吗?你解决了这个问题吗?如果没有,请告诉我有关此问题的最新信息吗?
  • 抱歉出差了。是的,它确实有效现在我也想移动 pdb 和 xml 文件?如果我只是扩展包含部分行: 它停止工作。我应该怎么去靠近他们?
  • 另一件事是虽然我的 dll 被移动到另一个文件夹,但我的 exe 停止工作。我应该如何让我的 exe 从新位置加载 dll?
  • 是的,.exe文件会在同一个文件夹中找到dll文件,因为您已经将dll文件移出.exe文件夹,.exe找不到了。

标签: .net visual-studio msbuild


【解决方案1】:

在发布构建期间将依赖项移动到另一个文件夹

您可以在自定义目标中使用Move taskcondition

要完成此操作,请卸载您的项目。然后在项目的最后,就在结束标记 </Project> 之前,放置以下脚本:

  <ItemGroup>
    <FilesToMove Include="PathToFiles\*.dll"/>
  </ItemGroup>

  <Target Name="MoveFiles" AfterTargets="Build" Condition=" '$(Configuration)' == 'Release' ">
    <Message Text="Move Files to the dependencies folder when I build for release"></Message>
    <Move
    SourceFiles="@(FilesToMove)"
    DestinationFolder="PathToFiles\dependencies"
    />
  </Target>

Condition=" '$(Configuration)' == 'Release' " 条件下,这些.dll 文件在构建后被移动到依赖项。您只需要指定这些 .dll 文件的相对路径。

希望这会有所帮助。

【讨论】:

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