文件被 Visual Studio 2019 锁定

leo*_*n22 7 c# locked-files visual-studio visual-studio-2019

我在 Visual Studio 中有一个奇怪的问题:

如果在调试过程中抛出未处理的异常,我将无法构建我的 C# 应用程序:

Unable to copy file "C:\Projects\A\bin\A.dll" to "..\..\bin\A.dll". 
  The process cannot access the file '..\..\bin\A.dll' because it is being used 
  by another process.

Could not copy "C:\Projects\A\bin\A.dll" to "..\..\bin\A.dll". 
  Exceeded retry count of 10. Failed. 
  The file is locked by: "Microsoft Visual Studio 2019 (14904)"
Run Code Online (Sandbox Code Playgroud)

是否有永久解决方案来解决这个奇怪的错误?(我目前唯一的解决方法是重新启动 Visual Studio)

我尝试过但对我不起作用的方法:

  • VS 菜单 -> 工具 -> 选项 -> 项目和解决方案 -> 构建和运行 -> 并将“并行构建的最大数量”设置为 1。
  • 停止杀毒软件
  • 启用应用程序体验服务(在 Windows 10 中未找到)
  • 取消勾选VS菜单->工具->选项->项目和解决方案->常规->允许并行项目初始化
  • 取消调试 -> 选项 -> 调试 -> 常规 -> 当一个进程中断时中断所有进程

在我的所有项目中插入预构建事件脚本也是不切实际的!链接:https : //blog.ndepend.com/visual-studio-script-saves-time-pain/

有没有人有解决这个问题的方法?

小智 9

什么对我有用 - 关闭解决方案,删除 bin 和 obj 文件夹,重新打开并构建。

  • 我发现只要重新启动VS就足够了。 (4认同)

leo*_*n22 6

这有点奇怪,但问题是由 Debug 选项引起的Use Managed Compatibility Mode!因此,只需取消选中调试 -> 选项 ->Use Managed Compatibility Mode并且 Visual Studio 不再锁定文件错误!

备注:禁用此选项的缺点是您会遇到 VS 烦人的长时间耗时的评估错误!(更多信息