Partilhar via


Erro: a depuração não é possível porque um depurador de kernel está habilitado no sistema

Quando você depura o código gerenciado, talvez receba a seguinte mensagem de erro:

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

Essa mensagem ocorre quando você tenta depurar o código gerenciado:

  • em um sistema do Windows 7 ou Windows Vistaque foi iniciado em modo de depuração.

  • o aplicativo usa o CLR versão 2.0, 3.0 ou 3.5.

Solução

Para corrigir esse problema

  • Atualizar seu aplicativo para usar a versão 4.0 ou 4.5 do CLR

    —ou—

  • Desabilite a depuração de kernel e depure-a no Visual Studio.

    —ou—

  • Depure usando o depurador de kernel em vez do Visual Studio.

    —ou—

  • No depurador de kernel, desabilite as exceções em modo de usuário.

Para desabilitar a depuração de kernel na sessão atual

  • No prompt de comando, digite:

    Kdbgctrl.exe -d
    

Para desabilitar a depuração de kernel para todas as sessões (Windows Vista e Windows 7)

  1. No prompt de comando, digite:

    bcdedit /debug off 
    
  2. Reinicie o computador.

Para desabilitar a depuração de kernel para todas as sessões (outros sistemas operacionais Windows)

  1. Localize boot.ini na unidade do sistema (normalmente C:\). O arquivo boot.ini pode ser ocultado e somente leitura. Portanto, você deve usar o seguinte comando para vê-lo:

    dir /ASH
    
  2. Abra o boot.ini usando o Bloco de Notas e remova as seguintes opções:

    /debug
    /debugport
    /baudrate
    
  3. Reinicie o computador.

Para depurar com o depurador de kernel

  1. Se o depurador de kernel estiver associado, você verá uma mensagem que pergunta se quer continuar a depuração. Clique no botão para continuar.

  2. Você poderá obter um User break exception(Int 3). Se isso ocorrer, digite o seguinte comando do depurador de kernel para continuar a depuração:

    gn

Consulte também

Conceitos

Segurança do depurador

Outros recursos

Depurando código gerenciado