dbghelp

Capturing R6025 pure virtual call

I currently capture MiniDumps of unhandled exceptions using SetUnhandledExceptionFilter however at times I am getting "R6025: pure virtual function". I understand how a pure virtual function call happens I am just wondering if it is possible to capture them so I can create a MiniDump at that point. ...

How do I obtain a stack trace on Windows without using dbghelp.dll?

How do I obtain a stack trace of addresses on Windows without using dbghelp.dll? I don't need to know what the symbols or function names associated with the addresses, I just want the list of addresses -- something similar to backtrace of *nix systems. Thanks! ...

Where do I find the list of unloaded modules in a Windows process?

I have some native (as in /SUBSYSTEM:NATIVE) Windows programs that I'd like to generate minidumps for in case they crash. Normally, I'd use dbghelp.dll, but since native processes can only use functions exported from ntdll.dll, I can't. So I've implemented the dumper myself. It's almost done, but unfortunately, I've been unable to locat...

Why don't Minidumps give good call stacks?

I've used minidumps on many game projects over the years and they seem to have about a 50% chance of having a valid call stack. What can I do to make them have better call stacks? I've tried putting the latest dbghelp.dll in the exe directory. That seems to help some. Is Visual Studio 2008 or 2010 any better? (I'm still on VS 2005). T...

Is DbgHelp.dll built-in to Windows? Can I rely on it being there?

I use Jochen Kalmbach's StackWalker class from CodeProject, to produce a stacktrace when an exception occurs in my DLL. It relies on DbgHelp.dll Is DbgHelp.dll built-in to Windows Vista, WS2008, Windows 7? I know about The Debugging Tools for Windows from Microsoft, and I'm aware that DbgHelp.dll ships in that package. But I also f...

Need to lookup function arguments (in/out) from pdb by dbghelp

I need to lookup function parameters(their types infact) from PDB file From dbghelp, we can parse any pdb and can get info like how many functions,addresses function names and others etc. My problem is I am also interested to get function parameters as well. As SYMBOL_INFO structure in callback function only contains symbolName,Address...

How to get field names and offsets of a struct using dbghlp and pdb

I would like to dump the fields and offsets of structures in the same way as windbg's dt command. Let's say for example I would like to dump the _PEB structure which is in the Microsoft Public symbols (since windbg's DT command works). From MSDN documentation I understood that the SymFromName function should be able to do this, below th...

Do Pdb files contains public function's arguments name?

Hello, I need to look up function argument names of public methods. Types are easily available from PDB symbols or DIA symbols. But Is there any way out by which we can trace and pull out function arguments names as well? I am concirned with native pdb symbols. Regards Usman ...

Need to get List of C++ Kernel Types?

Hello, Respectfully!! I need complete list of kernel types such as "CRITICAL_SECTION", "_LARGE_INTEGER" or "_SECURITY_ATTRIBUTES". Basically I am extracting all the data members of class given class name as type from some debugging SDK (right now using DIA SDK or DbgHelp) . Now If a type(say class or struct) contains some kernel level...

DBGHelp.dll causes load of msvcrt.dll in debug version

My application compiles with VC6 sp6, uses DBGHelp.lib to get stack information. The code is simmilar in debug and release compilations. The problem is that when executing the debug version, DBGHelp.dll loads msvcrt.dll (the release version). msvcrtd.dll is already loaded by my debug link anyway. So I end up having both msvcrtd.dll and m...

DbgHelp and decorated symbols...

Hi! I'm trying to get undecorated symbols using "dbgHelp". I'm getting the symbol's name with "SymGetSymFromAddr64" but instead of getting something like: "Foo(int f)" I'm getting just "Foo" as the symbol's name. I'm calling it with: SymGetSymFromAddr64(processHandle, address, &displacement, pSymbol); and I initialize it with the opti...