Como depurar aplicativos .net sem Visual Studio
-
03-07-2019 - |
Pergunta
Por favor, deixe-me saber se isso foi solicitado antes, eu não era capaz de encontrar qualquer dúvida sobre este assunto: -
Eu preciso para determinar a exceção interna de uma exceção lançada em um computador com o .NET Framework instalado, mas não Visual Studio (nem é possível instalar o Visual Studio no computador). Como posso examinar esta exceção interna?
Observe alguns pontos:
- Não adianta correr Visual Studio a partir de outro computador como as mentiras de problema, na verdade, na caixa; é um heisenbug de primeira ordem.
- Eu sei WinDbg é uma opção, no entanto eu preciso este feito rapidamente e, infelizmente, eu imagino o tempo necessário para aprender WinDbg o suficiente para conseguir este feito superam o tempo que tenho - no entanto, se alguém tem instruções passo-a-passo sobre esta eu estaria interessado.
- Eu tenho permissões de administrador completos e pode instalar qualquer coisa que não é muito grande (o problema com a instalação de VS é que não há espaço suficiente no disco rígido).
Obrigado!
Outras dicas
Na verdade, é bastante simples de fazer isso com WinDbg se você tiver um despejo de memória. Carregar o despejo em WinDbg, carga sos, e execute o comando printexception.
>.load sos
>!printexception
Isto irá dizer-lhe a exceção, bem como ponto de você para a exceção interna. Saída será algo como:
0:000> !printexception
Exception object: 0135b340
Exception type: System.ApplicationException
Message: GetAverage failed
InnerException: System.IndexOutOfRangeException, use !PrintException 01358394 to see more
<stack trace follows>
Se você não tem um despejo de memória, já que você pode criar um usando adplus (que vem com WinDbg).
>adplus -crash -o<dump location> -quiet -pn<name of process>
Se você preferir usar PID usar a opção -p
vez.
Você pode usar remoto depuração: http://msdn.microsoft.com /en-us/library/y7f5zaaa.aspx