Partilhar via


Depurar os processos User-Mode sem símbolos

É importante ter símbolos na máquina avariada antes de iniciar o depurador para uma falha em modo de utilizador. No entanto, às vezes o depurador é iniciado sem símbolos. Se o problema for facilmente reproduzível, você pode simplesmente copiar símbolos e executar novamente. Se, no entanto, o problema pode não ocorrer novamente, algumas informações ainda podem ser obtidas a partir da falha:

  1. Para descobrir o que os endereços significam, você precisará de um computador que corresponda àquele com o erro. Deve ter a mesma plataforma (x86 ou x64) e ser carregado com a mesma versão do Windows.

  2. Quando tiver o computador configurado, copie os símbolos de modo de utilizador e os binários que pretende depurar para a nova máquina.

  3. Inicie CDB ou WinDbg na máquina sem símbolo.

  4. Se não souberes qual aplicação falhou na máquina sem símbolos, emite um comando | (Estado do Processo). Se isso não lhe der um nome, aceda ao KD na máquina sem símbolos e execute um !process 0 0, procurando o ID do processo fornecido pelo comando CDB.

  5. Quando você tiver os dois depuradores configurados -- um com símbolos que não acertou o erro e outro que acertou o erro, mas está sem símbolos -- emita um comando k (Display Stack Backtrace) na máquina sem símbolo.

  6. Na máquina com símbolos, emita um comando u (Desmontar) para cada endereço fornecido na pilha sem símbolos. Isso lhe dará o rastreamento de pilha para o erro na máquina sem símbolo.

  7. Ao observar uma stack trace, é possível ver os nomes dos módulos e funções envolvidos na chamada.