VS命令行“进程无法访问该文件......因为它正被另一个进程使用”构建失败

时间:2013-11-06 20:18:24

标签: c++ visual-studio-2010 build

我已经看到了一些与VS相似的其他问题,但没有关于命令行的问题。

使用VS命令行(即BuildConsole“SOLUTIONNAME”/ BUILD / cfg =“CONFIG_SETTINGS”/ prf =“PROJECTNAME”),我得到了问题中显示的高度可重现性(尽管不是100%)错误:“该过程不能访问该文件,因为它正被另一个进程使用“。但是,我只运行BuildConsole的前1-5次才会出现此错误。这似乎与时间有关。如果我运行BuildConsole一次,然后等待一段时间,然后再次运行,它将工作。如果我连续运行5次,它将全部失败5次,或者有时会在5日运行,具体取决于之前运行失败的速度。此外,通过在VS IDE中打开解决方案然后关闭IDE并重新运行,我可以100%的时间让它工作。

此构建命令是一个工具的一部分,如果命令失败将报告失败(大多数情况下它会报告失败,尽管它不会失败)。所以我的问题是:如何在100%的时间内第一次使BuildConsole命令工作?显然,如果解决方案/项目实际上被另一个进程使用,我不希望它能够工作,但它应该能够控制任何挂在文件上的内容。

2 个答案:

答案 0 :(得分:2)

我在Windows 7上遇到了同样的问题,已将Visual Studio文件夹从Documents文件夹移动到C:\的根目录,将工具/选项/帮助/导入和导出设置中的位置更改为指向新位置,同样项目和解决方案都指向新的位置。 除非代码出错,否则完全没有问题。

答案 1 :(得分:0)

问题未在管理员模式下运行。当我设置运行BuildConsole的C#程序强制管理员权限时,BuildConsole每次都会工作。