0

In my application (being developed in C++/STL on Windows 8) at certain point of time I wish to generate report of all memory allocations.

To do that I attach Visual Studio debugger, generate dump of the process (as described here), and then using DebugDiag tool I analyse the dump. It generates report showing all memory allocations in the process as per my expectations. But it gives memory addresses of allocations. Here is sample screenshot how the report looks like:

enter image description here

It is of least use as just by looking at those addresses I cannot figure where in the code the memory has been allocated. So I am trying to find out is there any way to analyse crash dump along with debug info to generate report with debug info references.

Please can someone share how to do that using Visual Studio/DebugDiag/WinDbg (or any other tool)?

πάντα ῥεῖ
  • 1
  • 13
  • 116
  • 190
Atul
  • 3,778
  • 5
  • 47
  • 87

2 Answers2

0

Generally, at my workplace, we use

valgrind

on linux.

There is some tool by name 'purify' for windows,i guess.

Here is the detailed explanation:

windows debug

Community
  • 1
  • 1
basav
  • 1,475
  • 12
  • 20
0

see: https://msdn.microsoft.com/en-us/library/windows/hardware/ff560206%28v=vs.85%29.aspx

  1. The first you should turn on heap debug mode with stack trace collecting
  2. Then you can use umdh or windbg with !heap extension to analyze the heap structure and see stack traces of memory allocations
pykd_team
  • 131
  • 3