1
我有一个新添加了一些文件的C++(.vcxproj
)项目。现在,我试图编译使用它下面的代码:使用MSBuild API编译vcxproj时出错 - 错误MSB4057
var clogger = new ConsoleLogger(LoggerVerbosity.Diagnostic);
var pc = new ProjectCollection(new Dictionary<string, string>{{"Configuration", "Release"},
{"ToolsVersion", "4.0"}},
new[] { clogger }, ToolsetDefinitionLocations.Registry);
pc.DefaultToolsVersion = "4.0";
pc.LoadProject(projectPath);
var project = new Project(pc);
try
{
Assert.That(project.Build("Release"), Is.True);
}
finally
{
pc.UnregisterAllLoggers();
}
不幸的是,试图编译该项目给了我以下错误:目标在内的不
Building with tools version "4.0".
MSBUILD : error MSB4057: The target "Rebuild" does not exist in the project.
我试过很多指定一个目标,我一直得到相同的错误。我认为Rebuild
目标确实在项目中,因为命令行中的msbuild构建它就好了。我错过了什么?
重建目标在C:\ Program Files \ MSBuild \ Microsoft.Cpp \ v4.0 \ Microsoft.BuildSteps.targets –
中定义项目引用'Microsoft.Cpp.Targets' ...就够了吗? –