11

我在使用 Visual Studio 2008 时遇到了一个非常严重的问题。有时,当我在调试时右键单击(用于转到定义、设置下一条语句等),Visual Studio 只会死锁并进入无响应模式。

有没有人有同样的问题?有谁知道如何解决它?

编辑:我正在使用带有几个热修复程序的 SP1。

4

13 回答 13

7

问题:
签名的应用程序/dll 在 Vista 中加载缓慢。Visual Studio IDE“挂起”在离线/非 Internet 连接的工作站上。如果没有 Internet 连接,证书吊销检查会超时并导致应用程序挂起。当调试/单步调试代码时,会根据需要加载 dll,这是尝试撤销检查并且 VS IDE 变得无响应的时候。

这会影响什么:
这会影响所有已签名的应用程序/dll,这也是 Microsoft Word/Excel 需要很长时间才能打开一个简单文档的原因。使用证书的 Office 应用程序、SQL Management Studio、Visual Studio、Web 应用程序。

修复:
禁用发布者证书吊销检查

通过 IE:

  1. 转到 IE 7 中的 Internet 选项
  2. 然后转到安全选项卡,向下滚动
  3. 取消选中“检查发布者的证书吊销”复选框
  4. 点击确定

通过注册表:

  1. 打开注册表
  2. 浏览到以下项:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing
  3. 要禁用检查:将 State 键的值更改为 146944 Decimal 或 0x00023e00 Hexadecimal
    要重新启用检查:将 State 键的值更改为 146432 Decimal 或 0x00023c00 Hexadecimal

替代修复:
禁用 Visual Studio 托管进程:

  1. 在 Visual Studio 中打开一个项目。
  2. 在项目菜单上,单击属性。
  3. 单击调试选项卡。
  4. 清除启用 Visual Studio 托管进程复选框。

注意:备用修复会导致某些调试功能丢失。

背景:
Microsoft Connect 报告

于 2008-12-05T16:04:13.753 回答
3

自从我移至 Windows7 后,我不再出现此问题。如果您不幸仍然坚持使用 Windows Vista,我确实发现它仅在等待构建智能感知数据库时才挂在右键单击上(有关其进度,请参见左下角)。我唯一的“修复”是等待智能感知停止构建,然后右键单击。

于 2010-09-28T11:09:41.153 回答
2

前几天我写了一段代码,一个非常疯狂的模板,如果我将鼠标放在模板化的代码上,最新的 VisualStudio 就会挂起。这是超现实的:)

无论如何,您可能会遇到这样的问题,您可能想删除您的智能感知数据库并重试。

于 2008-09-24T11:08:14.520 回答
2

尝试在安全模式下启动 Visual Studio以排除安装的任何扩展的问题。

于 2008-09-24T11:30:31.330 回答
2

在调试多线程应用程序时,有时我会在遇到断点时挂起。当我试图通过右键单击代码中的变量来查看变量时,有时 VS 会挂起(沙漏)。

我用谷歌搜索了一个提示,解释说,当 VS 中断时,它会评估本地变量和监视窗格中的所有变量,以便显示它们。但是在线程应用程序中,如果代码在评估值时(例如在属性获取器中)锁定,这可能会导致死锁。

通过在我休息之前关闭本地窗格,我避免了挂起。

我没有很好地解释这一点。我再次尝试谷歌搜索以找到原始提示,但没有成功。

可能是这样的:为什么 Visual Studio 在调试时会停止?.

于 2009-06-30T17:27:20.833 回答
2

退出 Visual Studio 并删除项目的 .ncb 文件。

于 2009-09-06T15:18:44.920 回答
0

不,但这听起来像一个错误。将其报告给 MS,他们会给您说明如何获得调试设置,然后向他们发送信息以进行调试。

于 2008-09-24T11:04:16.527 回答
0

马克,你申请SP1了吗?

我没有遇到您的确切问题,但是在调试模式下(或退出调试模式时)锁定 15 秒确实有问题。我在某处发现了一篇博客文章,其中提出了一些可能的修复方法。

其中之一是进入 IE 7 并打开工具-> Internet 选项-> 高级选项卡-> 安全部分并取消选中“检查发布者的证书吊销”和“检查服务器证书吊销”(或至少第一个)。一旦我这样做了,我的锁定困境就结束了。

诚然,我的开发箱不在互联网上,所以无论如何我并不关心 IE 中的大多数设置。不知道这对您是否有帮助,但它确实解决了我与 VS 2008 的问题。

祝一切顺利!

于 2008-09-24T11:04:49.287 回答
0

我发现在调试多线程应用程序时,Visual Studio (VC9) 会定期锁定。我通常必须重新启动才能恢复系统。

于 2009-12-16T21:53:40.370 回答
0

对我来说,我发现 VS 试图打开一个在我之前进行远程调试时已过期的 IP。在 Tools-->Options-->Debugging--->Symbols 下检查您的调试设置 确保那里没有错误的路径。

于 2010-03-18T17:53:15.830 回答
0

不是我知道的解决方案,而是将我的 VC 项目从 VC2008 移动到 VC2010(Intellisense 已被禁用)的理由。尽管 3 小时内没有明确点击保存,但恢复工作正常。

于 2011-08-29T15:43:00.980 回答
0

以下对我有用:

删除关联项目的 .ncd 和 .suo 文件。

来源

于 2012-11-26T17:42:52.043 回答
-1

啊,另一个重要的节目停止者可能是“ActiveDirectory”。如果这发生在您的工作中并且他们使用“ActiveDirectory”,则可能会发生这种情况。这里有人声称这是谷歌工具栏的一个错误,但我没有确凿的证据表明谷歌是否对此负责。

于 2008-09-24T11:14:51.447 回答