2013-12-12 86 views
5

在相对较新的Windows Server 2008 R2安装中,偶尔会出现关于即时调试的弹出消息。例如,当搜索机器人访问asp页面时,这些可能会出现在w3wp.exe中。这些消息是本地Windows弹出窗口,不在浏览器中。如何禁用即时调试消息?

但是,我无法调试“即时”,因为服务器上没有任何调试器,也没有调试器。微软很友善地告诉我,我点击调试时没有VS2010许可证进行调试。这使弹出消息非常无用,特别是因为它们不包含真实信息,并且导致错误的信息通常在日志中。

根据this linkthis SO question,我禁用了AeDebug \ Debugger键,并且DbgManagedDebugger键不存在。这对错误消息没有影响。

如何禁用这些即时调试弹出消息?

enter image description here

+0

还有[类似的帖子,在以上服务器故障(http://serverfault.com/q/558550/54658),也许这也有助于某人。 –

回答

5

这绝对是的AeDebug \调试键,听起来像是你没有正确的“禁用”,或忽略了关键的32位版本。

从c:\ windows \ syswow64和system32目录中删除vsjitdebugger.exe也应该删除该对话框。这是显示这个对话框的程序,并在AeDebug键中被引用。

另外考虑卸载Visual Studio,因为你没有用处。

+0

感谢您的帮助! – xpda

+0

我试过了,在win2012服务器上没有解决!我确实在另一个SO线程上找到了解决方案(实际上,我在另一个SO线程上发布了解决方案...) – Jonesome

4

执行这些PowerShell的语句来禁用JIT调试:

Remove-itemproperty -Path "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug" -Name "Debugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Microsoft\.NETFramework" -Name "DbgManagedDebugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug" -Name "Debugger" 
Remove-itemproperty -Path "HKLM:SOFTWARE\Wow6432Node\Microsoft\.NETFramework" -Name "DbgManagedDebugger" 
+0

另外,将它们设置为1:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ DbgJITDebugLaunchSetting和 HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework – xpda

+0

据我所见,将DbgJITDebugLaunchSetting值设置为1就足够了。这会导致堆栈转储,之后进程终止。请参阅https://msdn.microsoft.com/en-us/library/2ac5yxx6%28VS.80%29.aspx – needfulthing