sql-server - 如何禁用即时调试器?

标签 sql-server visual-studio-2010 iis

刚刚配置了一台运行 IIS、Server 2012 和 SQL Server 2012 的新服务器。我还安装了 SQL Server Management Studio 工具,这样我就可以快速检查数据库,而无需打开远程连接。

当我远程浏览 ASP.NET 站点时,除了蓝屏之外,在遇到错误时还会出现“即时调试器异常”对话框。除非我使用 RDP 并手动关闭所有对话框,否则该对话框会一直保留在服务器上并堆积起来。

禁用此功能的唯一方法是使用控制面板删除 Visual Studio Shell 2010(集成)。副作用是我无法再使用 SSMS。

大多数可用的解决方案都已过时或不起作用。注册表设置不再适用,并且大多数有关此问题的文章都是旧的。微软的官方文档是一个由损坏的链接组成的老鼠巢。此外,许多用户将 IE 的脚本调试对话框与此问题混淆了。尽管它们相关且相似,但此特定问题与 Visual Studio 的运行时环境有关。

有什么想法吗?

旁白:我不敢相信 Microsoft 在安装在生产服务器上的产品上拥有此“功能”。我只是对一家值(value)数十亿美元的公司的无能感到震惊。至少从 2005 年起,我就看到有人提出我的问题,但没有有效的官方解决方案。我只需要最后一次要求进行健全性检查。我想确保我不是那个头脑“厚”的人。

最佳答案

通过编辑注册表禁用即时调试

在“开始”菜单中,单击“运行”。 在“运行”对话框中,键入 regedit,然后单击“确定”。 在注册表编辑器窗口中,找到并删除以下注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

如果您的计算机运行的是 64 位操作系统,请同时删除以下注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\WindowsNT\CurrentVersion\AeDebug\Debugger
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgManagedDebugger

小心不要意外删除或更改任何其他注册表项。

您也可以(暂时)将您选择的位数的 AeDebug 键重命名为其他内容,例如,而不是删除它。 AeDebug-禁用!

关于sql-server - 如何禁用即时调试器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21028761/

相关文章:

ide - Visual Studio 2010 : Why aren't key combinations available?

C# 将 Conditional() 与环境变量一起使用

wcf - 将 WCF 服务从 IIS 移动到 Windows 服务

sql - 将 value = NULL 的新键添加到现有的 JSON 对象

.net - sqlexpress 本地数据库管理员密码

c++ - Visual Studio "cannot find the path specified"错误

visual-studio - 每次运行我的测试解决方案时,Visual Studio 2013 都会崩溃并重新启动

amazon-web-services - IIS 强制 https 重定向导致 503 错误

sql - SQL Server批处理错误处理问题

sql - SELECT 与 UPDATE,使用 ABS 函数时出现意外四舍五入