错误:由于系统启用了内核调试器,因此不可能进行调试

本主题适用于:

版本

Visual Basic

C#

C++

Web Developer

学习版

主题适用 主题适用 主题适用 主题适用

专业版、高级专业版和旗舰版

主题适用 主题适用 主题适用 主题适用

调试托管代码时,您可能会收到下面的错误消息:

Debugging isn't possible because a kernel debugger is enabled on the system

当您尝试在 Windows 7、Windows Vista、Windows 2000 或以调试模式启动的 Windows NT 系统上尝试调试托管代码时,则会出现此消息。

解决方案

修复此问题

  • 禁用内核调试,在 Visual Studio 中调试。

    - 或 -

  • 使用内核调试器而不是 Visual Studio 进行调试。

    - 或 -

  • 在内核调试器中禁用用户模式异常。

在当前会话中禁用内核调试

  • 在命令提示处,键入:

    Kdbgctrl.exe -d
    

对所有会话禁用内核调试(Windows Vista 和 Windows 7)

  1. 在命令提示处,键入:

    bcdedit /debug off 
    
  2. 重新启动计算机。

对所有会话禁用内核调试(其他 Windows 操作系统)

  1. 在系统驱动器(通常为 C:\)上查找 boot.ini。 boot.ini 文件可能是隐藏文件并且是只读的。 因此,必须使用下面的命令才能看到它:

    dir /ASH
    
  2. 用记事本打开 boot.ini 并移除下列选项:

    /debug
    /debugport
    /baudrate
    
  3. 重新启动计算机。

使用内核调试器进行调试

  1. 如果内核调试器已挂钩,将显示一条消息,询问是否继续调试。 单击按钮继续。

  2. 您也许会收到 User break exception(Int 3)。如果出现此情况,请键入下面的内核调试器命令以继续调试:

    gn

请参见

概念

调试器安全

其他资源

调试托管代码