Reading Volker von Einem’s excellent blog, he mentioned that WinDBG, the latest release, now shows the mixed managed and native stack in the Calls window. I hadn’t noticed that, but it works like a charm. In the screen shot below, I double clicked on the NSort!NSort2.BubbleSorker.Sort method and was taken directly to the syntax highlighted source code. Also, as shown in the Command window, the K (Stack Walk) command does the same.

This is great news because on 32-bit systems, there was no way to see good mixed managed and native call stacks without piecing them together from the K and SOS’ !clrstack command. There was no mention of this in the What’s New web page. A very nice little surprise for a Wednesday morning.

Poking around in the Debugging Tools for Windows directory, I noticed a new program PDBCOPY.EXE, which strips public information out of PDB files. If you’re working on a native application that third parties plug into, please give out your stripped symbols so developers can walk the stack out of your application to their code. Without the stripped native PDB files and the magic FPO data, it’s almost impossible.