Windows 8 / Windows Server 2012不支持尝试VSJitDebugger操作

时间:2012-08-13 18:43:40

标签: visual-studio windbg

我们有在某些条件下添加Debugger.Launch()和Debugger.Break()的代码,此功能在Windows 8 / Windows Server 2012中似乎不起作用

在以前版本的Windows中,这工作得很好,启动了一个显示Visual Studio Debug对话框的窗口。

这是Windows8 / Windows Server 2012中的新变化吗?

2 个答案:

答案 0 :(得分:6)

有一个包含microsoft connect的开放票证,其中包含此问题的临时解决方法。

http://connect.microsoft.com/VisualStudio/feedback/details/770786/just-in-time-debugging-operation-attempted-is-not-supported

答案 1 :(得分:3)

这确实是Windows 8的变化。我找不到任何公共文档(虽然Win8尚未发送给客户)。但是,我会请相关团队的某个人在MSDN上提供此信息。

这是在Windows Vista中启动的Session 0隔离工作的一部分。

要返回Win7 / 2008R2设置,您需要执行以下操作:

对于注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows,将“ NoInteractiveServices ”值设置为 0 ,这是(在Windows 8中)默认为1.这允许您手动启动便于在会话中为您提供可视对话的服务,“交互式服务检测”( ui0detect )。如果不设置此密钥,ui0detect服务将无法以“不支持的功能”等错误启动。

net start ui0detect

当然,您可以选择使用Windows自动启动此服务,并始终启动以调试会话0进程。