我在 VS2008 FrameWork 3.5 中有一个 winforms 应用程序。当我在调试模式下运行应用程序时,出现错误:'操作无法完成。该进程无法访问该文件,因为它正被另一个进程使用。
然后在我关闭 Visual Studio 编辑器并转到应用程序 foler/bin/debug 后,删除 abc.vshost.exe 文件然后启动项目,然后项目成功运行。
我想知道为什么会发生这个错误,以及如何解决它。
我在 VS2008 FrameWork 3.5 中有一个 winforms 应用程序。当我在调试模式下运行应用程序时,出现错误:'操作无法完成。该进程无法访问该文件,因为它正被另一个进程使用。
然后在我关闭 Visual Studio 编辑器并转到应用程序 foler/bin/debug 后,删除 abc.vshost.exe 文件然后启动项目,然后项目成功运行。
我想知道为什么会发生这个错误,以及如何解决它。
这似乎是一个相当普遍的问题,有很多可能的原因和解决方案。在程序集版本号中使用通配符时,我遇到了 VS2010 的这个问题,例如“1.0.*”。
我使用了这个来源的第一个解决方法:http ://connect.microsoft.com/VisualStudio/feedback/details/533411/visual-studio-keeps-locking-files
删除通配符对我有用。
该错误表示 vshost.exe 文件被其他进程占用。您可以使用 Process Explorer 来查找正在使用该文件的进程。详细如何使用它来查找文件句柄,请参考: http: //windowsxp.mvps.org/processlock.htm
vshost.exe 文件是 VS 调试器的存根文件。Visual Studio 将在调试时启动 vshost.exe 进程而不是您的 exe 文件。当您停止调试时,可能会发生 vshost.exe 文件未正确停止的情况。您也可以使用 Process Explorer 来查找是否有任何进程被命名为 MyProg.vshost.exe。
-- 取自 MDSN 论坛
http://go4answers.webhost4life.com/Example/csharp-fails-start-visual-studio-2008-26572.aspx