¿Hay una manera de depurar una aplicación ya se está ejecutando compilado en modo de lanzamiento?

StackOverflow https://stackoverflow.com/questions/376128

Pregunta

Tengo un servicio de Windows dotnet que está actualmente colgado, pero el funcionamiento. ¿Hay alguna forma de adjuntar un depurador a ella, a pesar de la falta de símbolos; y que ya está corriendo?

¿Fue útil?

Solución

No haga caso de la advertencia "no hay símbolos". Una vez que tenga un depurador nativo unido (prefiero WinDbg para este tipo de cosas), a continuación, cargue el paquete de herramientas SoS:

.loadby sos mscorwks

Ahora usted puede conseguir una pila de llamadas administrado usando el comando !clrstack, y la esperanza de que le da suficiente información para averiguar el truco. Aquí está una hoja de trucos útil con algunos otros que si no lo haga por usted.

no le ayudará en esta ocasión, pero ... entrar en el hábito de convertir en la generación de archivo de símbolos de depuración y Versión modo construye. No hay ninguna razón para no hacerlo, y que va a hacer su vida un poco más fácil en situaciones como esta.

Otros consejos

A partir de MS dev IDE Depurar -> Procesos -> Adjuntar (Después de elegir un proceso.) Es posible que tenga que hacer clic en la casilla "Mostrar procesos del sistema". Puede que no haya información útil aunque ...

Aquí es código de ejemplo, enlaces a herramientas y presentaciones sobre cómo depurar un proceso .NET colgado .

Es probable que también quiere ver este vídeo de presentación , que cuenta con las mismas herramientas y muestras. A pesar del texto en lengua sueca en la página web, el vídeo está en Inglés.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top