Посмертная отладка .NET с помощью SOS.dll - PullRequest
4 голосов
/ 31 августа 2011

Я работаю над приложением смешанного режима (C ++ / CLI, C ++, немного C #), и когда оно падает в поле, создается дамп памяти.Я обычно получаю эти дампы от клиента и пытаюсь выяснить, что пошло не так.Я обычно использую WinDbg с SOS.dll, однако кажется, что SOS не имеет обратной совместимости!Я недавно запустил Центр обновления Windows и теперь не могу загрузить мини-дампы с клиентского сайта.Он жалуется на неправильную версию SOS.

Как я могу получить и загрузить предыдущие версии?Я что-то не так делаю?

Ответы [ 2 ]

1 голос
/ 02 сентября 2011

Вероятно, это проблема x86 / 64.Как вы загружаете SOS?

Вы можете попробовать загрузить SOS, используя:

.loadby sos mscorwks

Или, в случае неудачи, попробуйте загрузить 64-битный SOS явно:

.load c:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll
0 голосов
/ 29 декабря 2011

У меня была такая же проблема.Посмотрите на вопрос переполнения стека WinDbg: копия SOS.dll x86 4.0.30319.237 , он предлагает альтернативу загрузке и ссылке на правильную версию SOS с сервера.

...