在Visual Studio中获得“进程无法访问文件”错误,阻止运行或重建

dauxcl2d  于 2023-11-21  发布在  其他
关注(0)|答案(1)|浏览(178)

我已经尝试了许多东西建议对这类问题的其他答案。
我所有的项目都有这个问题。
与删除或访问项目路径中的EXE文件相关的错误。

  1. Severity Code Description Project File Line Suppression State
  2. Error CS2012 Cannot open 'c:\users\user\documents\visual studio 2015\Projects\blahtest1\blahtest1\obj\Debug\blahtest1.exe' for writing -- 'Access to the path 'c:\users\user\documents\visual studio 2015\Projects\blahtest1\blahtest1\obj\Debug\blahtest1.exe' is denied.' blahtest1 c:\users\user\documents\visual studio 2015\Projects\blahtest1\blahtest1\CSC 1 Active

字符串
我写了一个 bat 文件,无论我正在工作的项目,以帮助与情况。它只是显示这些文件是否在那里,它试图删除它们。

  1. C:\Users\user\Documents\Visual Studio 2015\Projects\blahtest1\blahtest1
  2. >type refreshprog.bat
  3. dir /b ".\bin\Debug\*.exe"
  4. dir /b ".\obj\Debug\*.exe"
  5. del ".\bin\Debug\*.exe"
  6. del ".\obj\Debug\*.exe"
  7. C:\Users\user\Documents\Visual Studio 2015\Projects\blahtest1\blahtest1
  8. >


有时候我会尝试用一个程序来解锁这些文件,比如IObit unlocker,或者unlocker,然后删除它们。
我试过进程资源管理器,看看是什么锁定它,但没有运气。
过了一段时间,它可以突然成为可能,以消除他们。
即使它成功了,我仍然可以得到上面提到的错误。
其他错误,我得到的地方,然后我尝试我的 bat 文件,并尝试手动尝试删除文件

  1. Severity Code Description Project File Line Suppression State
  2. Error Unable to copy file "obj\Debug\blahtest1.exe" to "bin\Debug\blahtest1.exe". The process cannot access the file 'bin\Debug\blahtest1.exe' because it is being used by another process. blahtest1
  3. Error Could not copy "obj\Debug\blahtest1.exe" to "bin\Debug\blahtest1.exe". Exceeded retry count of 10. Failed. blahtest1


我也不知道是什么导致了这一切
经常清理项目没有帮助。我可以得到这样的错误

  1. Severity Code Description Project File Line Suppression State
  2. Error Unable to delete file "c:\users\user\documents\visual studio 2015\Projects\blahtest1\blahtest1\bin\Debug\chromedriver.exe". Access to the path 'c:\users\user\documents\visual studio 2015\Projects\blahtest1\blahtest1\bin\Debug\chromedriver.exe' is denied. blahtest1


它可以是一个基本的程序,也可以是一个没有main方法的控制台应用程序,还可以是一个winforms程序。
我可以右键单击配置文件,看到它是只读的,取消勾选它,尝试应用于所有浏览器,然后得到一个访问拒绝消息
x1c 0d1x的数据
如果我查看在问题发生之前创建的旧项目,我会看到它们也显示为只读。所以我不知道文件夹是否应该是只读的..但无论如何,我不能将它们取消为只读。
然后我又试了一次,它说它找不到那个EXE文件。(也许我设法删除了它,或者VS做了,我不知道)。但后来我又试着让文件夹不是只读的,它声称它不是只读的。然后我再去文件夹的属性,它再次显示为只读!
只读部分似乎不是问题,因为有时VS会设法重建或清理项目,当项目文件夹设置为只读时,它仍然会管理项目
我试了几次,发现当它不工作时,我可以用进程资源管理器看到它被系统pid-4锁定了,所以这对我没有多大帮助,因为它没有告诉我是什么锁定了它。然后我尝试结束任务资源管理器。然后它工作了。然后我再次用进程资源管理器检查,它显示它被pid-4锁定了,但这次visual studio可以写。
我真的不知道如何去处理这个问题!我已经有几个月的问题.我的硬盘有点低,现在像500 MB左..但我想我可能有这个问题时,有几个GB左.和其他程序运行正常.


wvmv3b1j

wvmv3b1j1#

很可能您的某个安全应用程序(例如Malwarebytes甚至Windows Defender)正在锁定.exe文件以扫描它们是否存在恶意活动。
避免这种情况的方法是将您的项目目录与应用程序一起列入白名单,特别是您的bin\debug等。
正如你在评论中确认的那样,这是一个带有Malwarebytes的known issue。在链接的文章中,它说你也需要将vshost.exe列入白名单,但我不知道这是绝对必要的。

相关问题