Depuração remota usando KD

A depuração remota envolve dois depuradores em execução em dois locais diferentes. O depurador que executa a depuração é chamado de servidor de depuração. O segundo depurador, chamado de cliente de depuração, controla a sessão de depuração de um local remoto. Para estabelecer uma sessão remota, você deve configurar o servidor de depuração primeiro e, em seguida, ativar o cliente de depuração.

A depuração remota pode ser útil quando você deseja envolver outra pessoa ao examinar um problema, que você está depurando em um computador.

O código que está sendo depurado pode estar em execução no mesmo computador que está executando o servidor de depuração ou pode estar em execução em um computador separado. Se o servidor de depuração estiver executando a depuração do modo de usuário, o processo que está sendo depurado poderá ser executado no mesmo computador que o servidor de depuração. Se o servidor de depuração estiver executando a depuração do modo kernel, o código que está sendo depurado normalmente será executado em um computador de destino separado.

O diagrama a seguir ilustra uma sessão remota em que o servidor de depuração, em execução em um computador host, está executando a depuração de código no modo kernel em execução em um computador de destino separado.

Diagrama ilustrando computadores remotos, host e de destino conectados para depuração no modo kernel.

Há vários protocolos de transporte que você pode usar para uma conexão de depuração remota: TCP, NPIPE, SPIPE, SSL e porta COM. Suponha que você tenha escolhido usar tcp como o protocolo e você optou por usar KD como o cliente de depuração e o servidor de depuração. Você pode usar o procedimento a seguir para estabelecer uma sessão remota de depuração do modo kernel:

  1. No computador host, abra o KD e estabeleça uma sessão de depuração no modo kernel com um computador de destino. (Consulte Executando Kernel-Mode depuração usando KD.)

  2. Interrompa pressionando CRTL-Break.

  3. Insira o comando a seguir.

    .server tcp:port=5005

    Nota O número da porta 5005 é arbitrário. O número da porta é sua escolha.

  4. O KD responderá com uma saída semelhante à seguinte.

    Server started.  Client can connect with any of these command lines
    0: <debugger> -remote tcp:Port=5005,Server=YourHostComputer
    
  5. No computador remoto, abra uma janela do Prompt de Comando e insira o comando a seguir.

    kd -remote tcp:Port=5005,Server=YourHostComputer

    em que YourHostComputer é o nome do computador host, que está executando o servidor de depuração.

Informações adicionais

Para obter informações completas sobre como iniciar o KD (e estabelecer a depuração remota) na linha de comando, consulte Opções de Command-Line KD.