sos.dll usage in visual studio 2013

2020-07-10 06:45发布

问题:

When I am reading docs about sos.dll @MSDN, encounter a note says

If you are using Visual Studio 2013, SOS.dll is supported in the Windows Debugger within Visual Studio

I know how to use sos.dll in the immediate window in Visual Studio 2012. But how to use sos.dll with visual studio 2013 debugger?

回答1:

From MSDN documentation of What’s New for the Debugger in Visual Studio 2013 (Excerpt from the part Debug With Debugging Tools for Windows)

The SOS.dll (SOS Debugging Extension) that helps you debug managed programs in WinDbg, is not available from the Visual Studio IDE. See Debugging Managed Code Using the Windows Debugger

Looks like you may need to load them separately as being said Here



回答2:

I couldn't get sos.dll to load in Visual Studio 2013 no matter what I tried.

I've resorted to good old WinDbg instead. I know it's not an ideal answer, but it appears to be the only possible solution to debugging with sos.dll. I'd really like to use sos.dll in Visual Studio 2013, but WinDbg isn't so bad once you learn its basics. It's actually very powerful, even if you know very little about the unmanaged world (like me).

How to load SOS in WinDbg



回答3:

Yes you can use SOS from VS 2017. But you will need to install windows driver kit (WDK). Here is a screenshot of me debugging a process with command line debugger within VS 2017.

https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/setting-up-user-mode-debugging-in-visual-studio