Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.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++ 从命令行生成解决方案并出错:“0”;无法写入日志文件";_C++_Visual Studio_Visual Studio 2012_Msbuild_Devenv - Fatal编程技术网

C++ 从命令行生成解决方案并出错:“0”;无法写入日志文件";

C++ 从命令行生成解决方案并出错:“0”;无法写入日志文件";,c++,visual-studio,visual-studio-2012,msbuild,devenv,C++,Visual Studio,Visual Studio 2012,Msbuild,Devenv,我有一个奇怪的错误。我的解决方案(C++)大约有360个项目。当我使用Visual Studio 2012构建它时,一切正常。但是,当我使用命令行和devenv.com工具构建它时,大多数时候都会出现错误: “无法写入日志文件'D:…\AddOnRes.log',因为另一个进程正在使用它。” (路径是一个160个字符长的现有路径) 而且,错误总是在同一个文件上。不管电脑是否刚刚重启。 我的机器是Windows 10 64位。它有12个处理器内核(VisualStudio当时构建了12个项目) 我

我有一个奇怪的错误。我的解决方案(C++)大约有360个项目。当我使用Visual Studio 2012构建它时,一切正常。但是,当我使用命令行和devenv.com工具构建它时,大多数时候都会出现错误:

“无法写入日志文件'D:…\AddOnRes.log',因为另一个进程正在使用它。”

(路径是一个160个字符长的现有路径)

而且,错误总是在同一个文件上。不管电脑是否刚刚重启。 我的机器是Windows 10 64位。它有12个处理器内核(VisualStudio当时构建了12个项目)

我知道Microsoft说应该使用msbuild而不是devenv,但msbuild在按正确顺序构建项目方面存在问题


有人能帮忙吗?

您在构建中是否使用了任何第三方扩展?另外,您知道哪个任务正在尝试访问
AddonsRes.log
?这看起来像是生成并发问题。。您可以通过使用
/m:1
(至少在msbuild中)来避免这种情况,但这可能会减慢您的构建速度—不使用任何扩展。我也不知道是什么试图访问此文件。更重要的是,我尝试使用ProcessExplorer跟踪它,但似乎该文件没有被其他进程使用:/n您可以执行
/v:diag>diag.log
build以获取显示哪个构建步骤使用该文件的诊断日志。如何使用日志开关,如:Devenv.exe/log“C:\My Files\MyLog.txt”?此外,您是否尝试在关闭VisualStudio后构建解决方案?显然,这似乎是一个并发问题。中间文件夹是否相同?它是否正在为/ALL/projects写入同一个构建日志文件?((另外,如果MSBuild以错误的顺序生成,并且您是通过MSBuild生成解决方案,那么您可能设置了错误的依赖项。但这是另一个问题))