usar tutorial tools portable microsoft como windbg

tutorial - WinDbg no puede cargar SOS.dll



windbg windows xp (2)

De forma predeterminada, el instalador parece poner en el sistema versiones de WinDbg de 32 bits y de 64 bits sin avisar: ¿es posible que esté ejecutando la versión incorrecta?

Busque un directorio "x86" en el directorio donde está instalado WinDbg y ejecute la versión de windbg.exe que contiene.

Necesito depurar una aplicación administrada de 32 bits usando WinDbg, sin embargo, WinDbg se niega a cargar la extensión SOS.dll. Después de muchas búsquedas en Internet y las cosas intentaron, estoy perplejo. Tengo experiencia en la depuración de código no administrado con WinDbg pero este es mi primer intento con administrado.

Cuando ordeno a WinDbg que cargue el SOS.dll predeterminado, da este error:

sxe ld clr <- I wait until the clr has loaded .loadby sos clr The call to LoadLibrary(C:/Windows/Microsoft.NET/Framework/v4.0.30319/sos) failed, Win32 error 0n193 "%1 is not a valid Win32 application." Please check your debugger configuration and/or network access.

Y si en cambio intento especificar el SOS.dll, recibo un error diferente:

.load C:/Windows/Microsoft.NET/Framework/v4.0.30319/sos clr The call to LoadLibrary(C:/Windows/Microsoft.NET/Framework/v4.0.30319/sos clr) failed, Win32 error 0n126 "The specified module could not be found." Please check your debugger configuration and/or network access.

Mi configuración es VM-to-VM a través de conexión en serie y ambas VM son Windows Server 2008 R2 SP1. Las herramientas de depuración para Windows (x64) están instaladas en ambas máquinas virtuales.

NOTA: Parece que la instalación de las herramientas de depuración x86 en una CPU x64 como se sugiere en esta solución no es posible (ni es necesario) en los sistemas operativos más nuevos de Windows, así que no lo sugiera. El instalador falla con un error.

Gracias de antemano por tus ideas.


Es posible instalar las versiones x86 y x64 de WinDbg en la misma máquina, y si está depurando una aplicación .NET de 32 bits, debe utilizar la versión x86 de WinDbg / SOS. El mensaje de error le indica que está intentando cargar la versión incorrecta de SOS para el bitness de la aplicación.

Hay una guía adicional aquí .