切换到调试模式时,Visual Studio会冻结

时间:2009-12-02 18:54:20

标签: visual-studio visual-studio-2008 debug-mode

Strange Visual Studio(TS 2008)问题:每当我在特定项目中从Release模式切换到Debug模式时,IDE都会完全冻结。在我尝试构建或执行任何其他操作之前,它会在我切换时发生。

整个事情一开始就没有了,没有任何我能想到的异常变化。 我试图清理解决方案,但它没有帮助。

之前有人碰到过吗?

5 个答案:

答案 0 :(得分:21)

如果一切正常,然后停止,通常意味着即使它没有被注意也存在一些问题。

我会一个接一个地尝试的事情:

  1. 检查从源控制引擎更新后更改的文件(原因和方式)
  2. 查看扩展程序和插件列表。尝试禁用全部或部分
  3. 关闭Visual Studio并终止所有开发过程:devenv, mspdbsrv, vcpkgsrv, msbuild, msvsmon, vshub, vstest
  4. 删除解决方案的.suo, .ncb, .VC.db, .VC.VC.opendb个文件以及.vc目录,这有时会导致问题
  5. 删除项目设置文件,排序为YourProjectName.vcproj.DOMAINNAME.LOGINNAME.userYourProjectName.csproj.user。设置文件名取决于您使用的项目类型
  6. 为x64环境运行"C:\Program Files\Microsoft Visual Studio [vs_version]\Common7\IDE\devenv.exe" /setup"C:\Program Files (x86)\Microsoft Visual Studio [vs_version]\Common7\IDE\devenv.exe" /setup
  7. 在某些复杂的情况下,它有助于删除位于主页%USERPROFILE%\AppData\[Local|Roaming]\Microsoft\VisualStudio[vs_version]和注册表HKCU\SOFTWARE\Microsoft\VisualStudio[vs_version]
  8. 中的用户设置

    它应该将所有内容重置为开始状态。如果它不起作用,那么还有其他工具可供调查。下载Process Explorer并在IDE冻结后,启动Process Explorer,找到devenv进程,双击它并转到Threads选项卡。检查哪个线程在冻结情况下具有最大的交换机增量,双击它并获取顶部函数的名称(或偏移量)。它提供了可能出现问题的其他信息。

    此外,有时在控制面板的“添加或删除程序”向导中修复Visual Studio会很有帮助。

答案 1 :(得分:0)

在2017年出现了此问题。我以管理员身份运行VS 2017,并且可以正常工作。

答案 2 :(得分:0)

我在VS 2017(15.8)中遇到了这个问题。升级到最新版本(当时为15.9)解决了该问题。

答案 3 :(得分:0)

VS似乎在后台做了很多工作,并将特定于项目的文件放入App Data中,谁知道其他地方。我有这种经验:我有一个项目,在两个不同的目录中有两组相同的代码:一组用于生产,一组用于开发。开发项目开始挂在调试上,而生产则没有。尝试了各种设置并删除.suo文件,但没有帮助。因此,我将开发版本所在的目录重命名为Presto,一切工作都没有停止。

答案 4 :(得分:0)

在我的特殊情况下,我尝试了许多其他答案,但都没有运气。原来,对这个的调用正在挂起调试器:

Log4NetExtensions.AssertFail("Error");

通过调出 [ Debug > Windows > Threads ] 下的线程窗口并单击当前线程浏览到它挂起的代码行,我设法将其缩小到这行代码。