sos

WinDbg: Copy of SOS.dll x86 4.0.30319.237

别来无恙 提交于 2019-11-30 22:24:50
I am using WinDbg to look into a process dump. The dump has been taken on an x86 server with .NET 4 SP1 (4.0.30319.237). I'm attempting to debug on my x64 machine using the x86 version of WinDbg, but I get the following issue. 0:000> !EEVersion The version of SOS does not match the version of CLR you are debugging. Please load the matching version of SOS for the version of CLR you are debugging. CLR Version: 4.0.30319.237 SOS Version: 4.0.30319.239 4.0.30319.237 retail Workstation mode SOS Version: 4.0.30319.239 retail build As my machine has taken a recent security patch, the SOS DLL file is

How to identify array type?

偶尔善良 提交于 2019-11-30 08:31:25
问题 I have an OutOfMemoryException and I'd like to analyze the size and the type of the array which shall be created. I have created a demo purpose dump for that situation and I'm able to get the following information: 0:000> !pe Exception object: 023f389c Exception type: System.OutOfMemoryException Message: <none> InnerException: <none> StackTrace (generated): SP IP Function 0015EE44 0099007F OOM2!OOM2.Program.Main()+0xf StackTraceString: <none> HResult: 8007000e 0:000> !u 0099007F Normal JIT

Use WinDbg to Write Contents of Managed Byte[] to File

為{幸葍}努か 提交于 2019-11-30 06:50:57
I have a crash dump from a production server that shows an OutOfMemoryException. The exception itself is not relevant here. I happened to run a !dso to view the stack objects: 0:042> !dso OS Thread Id: 0x1014 (42) ESP/REG Object Name 246eeb24 109a21bc System.UnhandledExceptionEventHandler 246eeb2c 39083998 System.Runtime.Remoting.Proxies.__TransparentProxy 246eeb34 39083b5c System.UnhandledExceptionEventArgs 246eeb48 39073280 System.Byte[] 246eec10 2e720050 System.OutOfMemoryException [snip] 246ef250 0ac1c4d0 System.IO.MemoryStream <-- interesting I thought the MemoryStream might have

.loadby sos clr - specified module could not be found

天大地大妈咪最大 提交于 2019-11-29 15:27:38
问题 I am trying to get to the bottom of what the CLR exception that is in my dump file but I am having an issue trying to execute: 0:000> .loadby sos clr The call to LoadLibrary(C:\ProgramData\dbg\sym\clr.dll\5348A1EF9a0000\sos) failed, Win32 error 0n126 "The specified module could not be found." I tried to look at what is loaded and I see: 0:000> lm start end module name 00000000`00190000 00000000`001a4000 MyTest (deferred) 00000000`77a00000 00000000`77afa000 user32 (deferred) 00000000`77b00000

Cannot use WinDbg and SOS in Visual Studio Immediate window

混江龙づ霸主 提交于 2019-11-29 14:23:09
I'm following this tutorial: link . At step 8, when I say .load sos in the Immediate Window, it just pukes expected expression . System: Win 7 x64, Visual Studio 2012 Premium. I have an installed Debugging Tools for Windows (x64) 11/14/2012, Now I installed X64 Debuggers And Tools. I have Windows SDK for Windows 7 (7.1). WinDbg.exe is in c:\Program Files\Debugging Tools for Windows (x64)\ and I can start it from start menu. However I cannot find sos.dll, which supposed to come with the Debugging Tools for Windows (x64). How can I make this happen? Bonus question : {,,kernel32}_LoadLibraryExW

WinDbg and SoS, how do I print/dump a large string?

我们两清 提交于 2019-11-29 13:23:24
问题 I am debugging a hangdump coming from a production server using WinDbg with the SoS extension. There is a string parameter in one of the stacks, that I need to know the value of. However, it is a rather large string, and WinDbg won't print it when I am using DumpObj . This is the output from DumpObj : 0:036> !do 00000001b30d8668 Name: System.String MethodTable: 0000064278436728 EEClass: 000006427803e520 Size: 5125300(0x4e34b4) bytes (C:\WINDOWS\assembly\GAC_64\mscorlib\2.0.0.0_

What's the story behind the name of the SOS (Son of Strike) debugger extension?

北城以北 提交于 2019-11-29 09:02:55
What's the significance of the name "Son of Strike"? Does it serve any meaning or does it just sound cool? Jason Zander's blog post explains it perfectly: The original name of the CLR team (chosen by team founder and former Microsoft Distinguished Engineer Mike Toutonghi) was "Lighting". Larry Sullivan's dev team created an ntsd extension dll to help facilitate the bootstrapping of v1.0. We called it strike.dll (get it? "Lightning Strike"? yeah, I know, ba'dump bum). PSS really needed this in order to give us information back to the team when it was time to debug nasty stress failures, which

Failed to load data access DLL, 0x80004005

ぐ巨炮叔叔 提交于 2019-11-29 06:47:35
问题 0:025> !pe Failed to load data access DLL, 0x80004005 Verify that 1) you have a recent build of the debugger (6.2.14 or newer) 2) the file mscordacwks.dll that matches your version of mscorwks.dll is in the version directory 3) or, if you are debugging a dump file, verify that the file mscordacwks_<arch>_<arch>_<version>.dll is on your symbol path. 4) you are debugging on the same architecture as the dump file. For example, an IA64 dump file must be debugged on an IA64 machine. You can also

.loadby not work, but .load works well

馋奶兔 提交于 2019-11-28 14:46:42
When I try to use windbg, .load C:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll works perfectly to load SOS extension. But when I tried to used the suggested pattern .loadby SOS OR .loadby sos.dll I could only got a error message saying "Syntax error in extension string". I tried to googled this error message, but nothing useful found. Any suggestions ? .loadby needs another argument to define where by is. From WinDbg help: .loadby DLLName ModuleName DLLName Specifies the debugger extension DLL to load. If you use the .load command, DLLName should include the full path. If you use the

Cannot use WinDbg and SOS in Visual Studio Immediate window

白昼怎懂夜的黑 提交于 2019-11-28 08:06:45
问题 I'm following this tutorial: link. At step 8, when I say .load sos in the Immediate Window, it just pukes expected expression . System: Win 7 x64, Visual Studio 2012 Premium. I have an installed Debugging Tools for Windows (x64) 11/14/2012, Now I installed X64 Debuggers And Tools. I have Windows SDK for Windows 7 (7.1). WinDbg.exe is in c:\Program Files\Debugging Tools for Windows (x64)\ and I can start it from start menu. However I cannot find sos.dll, which supposed to come with the