![](/img/trans.png)
[英]How Do I Specify The WEB Test Results Output Folder Name In VS2012 Ultimate
[英]How can I make sure only *.exe or *.dll file goes to output folder and any other build files goes to intermediate folder VS2012?
我在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>
如果我这样做,我会创建一个bat文件作为后期构建脚本运行,移动任何非DLL和exe文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.