了解用于编译Ansi C90的MsBuild项目文件
要通过msbuild编译以下main了解用于编译Ansi C90的MsBuild项目文件,msbuild,ansi,c89,project-files,Msbuild,Ansi,C89,Project Files,要通过msbuild编译以下main #include <stdio.h> int main (int argc, char *argv[]) { char Buffer[2000]; printf("TEST"); gets(Buffer); } msbuild项目文件如下所示 <?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Build" ToolsVers
#include <stdio.h>
int main (int argc, char *argv[])
{
char Buffer[2000];
printf("TEST");
gets(Buffer);
}
msbuild项目文件如下所示
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ItemGroup>
<ClCompile Include="main.c" />
</ItemGroup>
</Project>
调试
Win32
释放
Win32
整个设置工作到目前为止,但我需要找到一个好的来源,以帮助我了解更多有关msproject文件。
我想学很多东西。我怎样才能:
- 摆脱“导入”操作,自己定义导入的部分
- 使用命令行参数编译一组文件。。。(%param%.c%param%TEST.c,…)
- 使用项目文件立即启动程序(%param%Test.exe)
- 编译多个目标,。。。发布、调试等
- 编译后复制:子项目/release/%param%.obj->c:\accurateVersion\%param%.obj
- 重建前清理
<ItemGroup>
<MySourceFiles Include="c:\MySourceTree\**\*.*"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)% (Filename)%(Extension)')"
/>
此链接可能会帮助您解决其他一些问题
<ItemGroup>
<MySourceFiles Include="c:\MySourceTree\**\*.*"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)% (Filename)%(Extension)')"
/>