Someone asked me to get a call stack or stack trace of a running process so that he could analyze it for me.
How can I get that information?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.
Sign up to join this communityGet Process Explorer.
Enable Show Details for All Processes from the File menu:
In the main pane, select the process you're interested in:
Open the context menu (right-click) for the selected process and click Properties:
On the Threads tab, you'll be able to see a list of the running threads inside that process:
Select the thread you're interested in and click the Stack button:
Process Explorer will now display the current call stack for the selected thread:
If your troubleshooting requires you to get more detail, it is often very helpful to load debugging symbols into Process Explorer. This is how:
If you don't already have a Windows debugger installed, you're going to have to install the Debugging Tools for Windows first.
In Process Explorer, open Configure Symbols... from the Options menu:
If you have the Debugging Tools (or another Windows debugger) installed, Process Explorer will automatically find the dbghelp.dll
file. Otherwise, set the correct path here.
The Symbols path should look something like:
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
The only part you'll want to adjust is C:\Symbols
. That's the location where the debugging symbols will be cached.
If you need a stack of clr process, you can use ProcInsp (I'm its developer, the tool is free for use).