【发布时间】:2011-02-27 15:50:29
【问题描述】:
我有一个 C# webforms 应用程序,直到今天它一直运行良好。
今天突然,每次尝试运行应用程序时,都会出现文件锁定错误:
无法将文件“obj\Debug\MyProject.exe”复制到“bin\Debug\MyProject.exe”。该进程无法访问文件“bin\Debug\MyProject.exe”,因为它正被另一个进程使用。
谷歌搜索错误并没有发现任何明显的问题,即 VS 认为文件已锁定。 绝对锁定文件的是 Visual Studio 本身,因为当我关闭 VS 并重新打开它时,项目执行良好 - 第一次。当我再次尝试运行它时,我得到了文件锁定错误。
每次我想运行应用程序时关闭 VS 并重新打开不是一个可行的解决方法!如何找出锁定文件的原因,并阻止它被锁定?
编辑:另一个有趣的发现:我什至不必运行该应用程序。只编译一次就会导致文件锁定;我不能连续编译两次!
此问题特定于我的解决方案中的一个项目。所有其他项目都可以正常工作,并且可以根据需要执行多次。只有这个项目自己被锁定了。
【问题讨论】:
-
你可以尝试杀死 vshost.exe 看看是否有帮助?
-
@rene - 没有 vshost.exe 进程。他们在 VS 2010 中重命名了吗?
-
[应用名称].vshost.exe
-
@rene - 不,当前进程中没有显示该名称
-
@Shaul 您是否在表单中添加了自定义用户控件?在运行之前尝试关闭设计器:stackoverflow.com/questions/2690119/…
标签: c# winforms visual-studio-2010