Visual Studio 2010/2012:在断点处停止调试时,调试过程挂起并且不可用

a_m*_*a_m 5 c# debugging visual-studio-2010 visual-studio visual-studio-2012

发生在一些场合.使用Visual Studio 2012 Professional运行Windows 8 x64(在VS 2010中也曾发生过).正在使用"启用本机代码调试"调试C#控制台项目.

按F5,调试一些代码,到达断点等,然后按Shift + F5(停止调试),Visual Studio不会像往常一样返回编辑模式,只是挂起一段时间,然后提供终止挂起操作的选项(对话框窗口"远程操作花费的时间比预期的要长",带有进度条和终止按钮).如果我没有点击终止,它只会更新进度条.如果我单击以终止操作,VS将返回可编辑模式,但调试过程仍在任务管理器中可见,并且不可用.这个挂起的调试过程会锁定它使用的某些文件(例如DLL),因此无法进一步重建.杀死此过程的唯一方法是重新启动计算机.

有趣的是,在调试代码中达到断点并逐步执行调试时会发生这种情况.如果我只运行没有断点的调试过程,则不会发生挂起.

以下主题中的解决方案没有帮助:https://connect.microsoft.com/VisualStudio/feedback/details/504538/

jac*_*ous 0

我们在使用2010之前也遇到过类似的问题,但还无法找出根本原因。

解决方法是单独运行该进程(控制台,双击 .exe)并执行Debug->Attach To Process注意:如果您想调试启动代码,那么这可能不是一个好主意。