Tengo una aplicación ASP.net 2.0 que estoy tratando de depurar en vivo usando Windbg y SOS.dll. Cuando adjunto el depurador al proceso, veo que carga las versiones 2.0 y 4.0 de CLR. [Mscorwks.dll y CLR.dll]. Cargo mi SOS por - .loadby sos mscorwks. Después de esto, ninguno de mis comandos SOS funciona. Obtengo "No se pudo solicitar Threadstore", "No se puede obtener información del dominio del sistema", etc.Los comandos SOS fallan mientras se depura en vivo un proceso que tiene múltiples versiones de CLR cargadas
Me enteré de que esto se debe a la falta de coincidencia en mscordacwks.dll para la versión diferente de CLR. Pero todas las soluciones que encontré en google cargando la versión correcta de mscordacwks usando el comando cordll no pudieron resolver mi problema. Particularmente, he usado .cordll -ve -lp pero no parece hacer ninguna diferencia. Al ejecutar "hilos"! Commads nuevo, consigo
"CLR DLL de estado: Cargado DLL C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ Mscordacwks.dll
no solicitó threadstore"
He visto another entry en stackoverflow alrededor de este problema. Pero afortunadamente para él el problema desapareció antes de que se sugiriera una solución y este no es un duplicado de this entry
Cualquier pista para ayudarme a usar la exención de SOS con 2 versiones de CLR cargadas en mi proceso sería muy apreciada.
MSCORDACWKS versiones comportamiento de la carga es el siguiente -
**0:033>** .cordll -e
CLR DLL status: Loaded DLL C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\mscordacwks.dll
**0:033>** .cordll -ve -u -lp C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscordacwks.dll
CLR DLL status: No load attempts
**0:033>** .cordll -e
CLR DLL status: No load attempts
**0:033>** !threads
CLRDLL: Loaded DLL C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\mscordacwks.dll Failed to request ThreadStore
Buena pregunta. ¿Cuál es el resultado con respecto a mscordacwks cuando haces un '.cordll -ve -lp'? –
@Brian - He actualizado mi pregunta con el comportamiento típico de .cordll que estoy viendo. .cordll -ve -lp <2.0 mscorwks path> obtiene un "Sin intentos de carga". Pero si ejecuto cualquier otro comando SOS después de eso, inmediatamente cargará 4.0 mscordacwks y me lanzará mensajes de error "No se pudo solicitar la tienda de hilos", etc. –
Tengo exactamente el mismo problema:/windbg sigue cargando .NET 4 dll . Si recibe una respuesta, o si tiene alguna URL pública con su caso en los foros de Microsoft ... publíquelo de nuevo :) – graffic