Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法以编程方式使用MSBuild生成项目_C#_Visual Studio 2010_Msbuild_Target_Targets - Fatal编程技术网

C# 无法以编程方式使用MSBuild生成项目

C# 无法以编程方式使用MSBuild生成项目,c#,visual-studio-2010,msbuild,target,targets,C#,Visual Studio 2010,Msbuild,Target,Targets,我正在尝试以编程方式(使用名称空间Microsoft.Build.Evaluation)将Visual Studio.csproj与MSBuild打包。 我可以用如下命令正确打包此项目 MSBuild "C:\Users\Documents\Visual Studio 2010\Projects\TestMvc\TestMvc\TestMvc.csproj" /T:Package 但当我使用以下代码时(我实现了自己的记录器,但在这里并不重要): 从API调用时,我得到以下日志: Tar

我正在尝试以编程方式(使用名称空间Microsoft.Build.Evaluation)将Visual Studio.csproj与MSBuild打包。 我可以用如下命令正确打包此项目

    MSBuild "C:\Users\Documents\Visual Studio 2010\Projects\TestMvc\TestMvc\TestMvc.csproj" /T:Package
但当我使用以下代码时(我实现了自己的记录器,但在这里并不重要):

从API调用时,我得到以下日志:

Target "CoreCompile: (TargetId:37)" in file "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.CSharp.targets" from project "D:\Users\Documents\Visual Studio 2010\Projects\MvcTest2\MvcTest3\MvcTest3.csproj" (target "Compile" depends on it):
Building target "CoreCompile" completely.
Output file "obj\Debug\MvcTest3.dll" does not exist.
Using "Csc" task from assembly "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
Task "Csc" (TaskId:20)
  C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe .....
  Microsoft (R) Visual C# 2010 Compiler version 4.0.30319.1 (TaskId:20)
  Copyright (C) Microsoft Corporation. All rights reserved. (TaskId:20)
   (TaskId:20)
Done executing task "Csc". (TaskId:20)
Target "CoreCompile" in file "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.CSharp.targets":
Building target "CoreCompile" completely.
Output file "obj\Debug\MvcTest3.dll" does not exist.
Using "Csc" task from assembly "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
Task "Csc"
Done executing task "Csc".

因此,在这两种情况下都会启动Csc任务,但是,当通过API启动时,它不会生成任何输出文件(我在文件监视器中也检查了这一点,没有生成任何文件)。

每种情况下的工作目录是什么?obj\Debug\etc。。。是相对路径而不是绝对路径。@Murph,相同的目录。为了方便起见,我刚刚删除了这两种情况下的长路径。
Target "CoreCompile" in file "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.CSharp.targets":
Building target "CoreCompile" completely.
Output file "obj\Debug\MvcTest3.dll" does not exist.
Using "Csc" task from assembly "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
Task "Csc"
Done executing task "Csc".