gpt4 book ai didi

c# - 如何确保只有 *.exe 或 *.dll 文件进入输出文件夹,而任何其他构建文件进入中间文件夹 VS2012?

转载 作者:行者123 更新时间:2023-11-30 12:11:23 24 4
gpt4 key购买 nike

我在 VS2012 上创建了一个 C# 项目,我希望输出文件夹只包含 .exe/.dll 文件,而在构建项目时创建的任何其他文件都将转到中间文件夹文件夹。

我有一个定义中间位置的属性表。

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

<PropertyGroup>
<BUILD_ROOT>f:\test</BUILD_ROOT>
<BUILD_INTERMEDIATE>f:\test</BUILD_INTERMEDIATE>
</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<IntermediateOutputPath>$(BUILD_INTERMEDIATE)\inter\debug\</IntermediateOutputPath>
<BaseIntermediateOutputPath >$(IntermediateOutputPath)</BaseIntermediateOutputPath >
</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<IntermediateOutputPath>$(BUILD_INTERMEDIATE)\inter\Release\</IntermediateOutputPath>
<BaseIntermediateOutputPath >$(IntermediateOutputPath)</BaseIntermediateOutputPath >
</PropertyGroup>

</Project>

我手动将此属性表导入到我的项目文件中

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<Import Project="$(MSBuildProjectDirectory)\PropertySheet.props" />

当我构建项目时,它会为输出和中间创建单独的文件夹。中间文件夹包含所有中间文件以及 pdb 文件。但它也包含 exe 文件。

但我面临的问题是,输出文件夹还包含中间文件夹中的大部分文件。如pdb、exe、config等。

任何人都可以帮助我解释我应该做什么,以便只有 .exe 文件将在输出文件夹中,而任何其他构建时间文件将仅保留在中间文件夹中吗?

最佳答案

您应该创建一个额外的“dist”文件夹(或类似文件夹),并在构建后将 exe 和 dll 文件复制到该文件夹​​。有许多 MSBuild 属性和目标可以将文件放在输出文件夹中,尝试更改此行为可能会破坏功能。

此外,如果您指定了 BaseIntermediateOutputPath,则您不应指定 IntermediateOutputPath。在上述属性的情况下,您似乎正在尝试使用它:

<BaseIntermediateOutputPath>$(BUILD_INTERMEDIATE)\inter\</BaseIntermediateOutputPath>

关于c# - 如何确保只有 *.exe 或 *.dll 文件进入输出文件夹,而任何其他构建文件进入中间文件夹 VS2012?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15621486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com