.net 4.0 - tarjeta - No se puede cargar SOS en WinDbg
como recargar saldo a otro movistar (4)
El CLR runtime dll se renombró a clr.dll
con .NET 4. Por lo tanto, para cargar la versión correcta de SOS, debe ajustar su comando .loadby
. Es decir
.loadby sos clr
Además, si tiene 64 bits, también debe instalar la versión de 32 bits de Debugging Tools para Windows para depurar aplicaciones de 32 bits. Se instalan uno al lado del otro, por lo que no hay ningún problema en tener tanto la versión de 32 bits como la de 64 bits en la misma máquina.
Yo recomendaría no copiar SOS.dll. SOS necesita coincidir con la versión exacta del marco, de modo que mientras lo cargue desde el directorio de frameworks usando .loadby
, ya está todo listo.
Antecedentes: soy nuevo en WinDbg y trato de ponerlo en funcionamiento por primera vez. Quiero examinar un volcado de memoria que tomé de un sitio ASP.NET 4 en ejecución alojado en IIS 7 en Windows Server 2008 (x86) y descargado a mi máquina local.
Instalé las herramientas de depuración y lancé WinDbg por primera vez, abriendo el volcado de emergencia. Fui a Archivo | Symbol File Path y establezca la ruta a "* srv * c: / symbols * http: //msdl.microsoft.com/downloads/symbols*" y esperó a que se carguen todos los símbolos.
Al intentar cargar SOS, tuve problemas. Primero, probé el siguiente comando ...
.loadby sos mscorwks
... y recibió la respuesta "No se puede encontrar el módulo ''mscorwks''".
Después de recorrer la web, traté de cargar mscorwks ejecutando el siguiente comando ...
sxe ld mscorwks.dll
g
... y recibió la respuesta "No hay errores de depuración ejecutables en ''g''"
Copié SOS.dll (desde C: / Windows / Microsoft.NET / Framework / v4.0.30319) en el directorio de WinDbg, luego intenté ...
.load sos
... y recibió el error ...
The call to LoadLibrary(sos) failed, Win32 error 0n193
"%1 is not a valid Win32 application."
Please check your debugger configuration and/or network access.
No estoy muy seguro de cómo proceder. Solo quiero cargar SOS y cavar alrededor de este archivo de volcado. Cualquier ayuda sería muy apreciada.
Fyi ... Estoy intentando abrir el archivo de volcado en una versión de 64 bits de Windows 7 con la versión de Windbg de 64 bits.
El comando WinDbg ''g'' significa [Continuar]
Como está abriendo un archivo de volcado, no hay forma de ''continuar'', solo contiene la memoria de proceso.
Por lo tanto, el mensaje "No hay error de depuración ejecutable en ''g''" es lógico en su caso, ya que el proceso no se está ejecutando .
En cuanto a la carga de la versión correcta de SOS, utilice el siguiente comando según la versión de .NET.
.NET 4 y superior .loadby sos
.NET 3.5 y 2 .loadby sos mscorwks
.NET 1.0 y 1.1 .load clr10 / sos
Las respuestas anteriores necesitan mejoras, ya que con el paso del tiempo las cosas han sido más fáciles de manejar.
JOHN ROBBINS tiene un bonito article al respecto, vea que los servidores de símbolos de Microsoft están configurados en la ruta del archivo de símbolos y ejecute! Analyze -v en windbg prompt, esto hará que el truco descargue los archivos sos relevantes. Para verificar ejecutar .chain en el indicador y verá el dll cargado.
Solo encontré un problema similar cargando SOS y obtenía "el módulo especificado no se pudo encontrar". Listo con una solución diferente, así que si las soluciones aquí no te ayudan, prueba esto:
.loadby sos clr - no se pudo encontrar el módulo especificado