我已经看到了一堆与此类似的关于 VS 的其他问题,但没有关于命令行的问题。
使用 VS 命令行(即 BuildConsole "SOLUTIONNAME" /BUILD /cfg="CONFIG_SETTINGS" /prf="PROJECTNAME"),我得到了问题中显示的高度可重现(尽管不是 100%)错误:“进程无法访问文件因为它正被另一个进程使用”。但是,我只在运行 BuildConsole 的前 1-5 次出现此错误。这似乎是一个与时间有关的事情。如果我运行一次 BuildConsole,然后等待一段时间,然后再次运行,它将起作用。如果我连续运行 5 次,它会全部失败 5 次,或者有时会在第 5 次运行,具体取决于之前运行失败的速度。此外,我可以通过在 VS IDE 中打开解决方案,然后关闭 IDE 并重新运行,让它 100% 地工作。
这个构建命令是一个工具的一部分,如果命令失败,它将报告失败(它在大多数情况下会报告失败,尽管它不应该失败)。所以我的问题是:我怎样才能让 BuildConsole 命令第一次工作,100% 的时间?显然,如果解决方案/项目实际上正在被另一个进程使用,我不希望它能够工作,但它应该能够控制挂在文件上的任何内容。