2

在阅读了最近一期 MSDN 杂志上的一篇文章后,我想尝试使用 VADump 来分解我编写的一些应用程序的内存使用情况。

我的 PC 上可执行文件的唯一副本位于:

c:\Program Files\Microsoft Visual Studio 8\Common7\Tools\Bin\winnt\vadump.exe

无论我给 VADump 的参数组合是什么,它都会返回错误:

OpenProcess Failed c0000034

谷歌搜索会发现其他一些遇到同样问题的人,但这些帖子都没有我能找到的解决方案(甚至是回复!)。

这台机器运行的是安装了 VS2005 和 VS2008 的 WinXP SP2。

VADump 看起来是一个非常有用的工具,我真的很想尝试一下。希望这能在办公室的另一台电脑上工作,但我仍然想让它在我的电脑上工作。

有任何想法吗?

4

3 回答 3

9

VADump 是旧的,大约在 2000 年。积极维护该工具的图形等效项,称为 VMMap:http ://technet.microsoft.com/en-us/sysinternals/dd535533.aspx 。

于 2012-04-09T19:44:24.330 回答
4

我的建议是先 CD 到它自己的目录。

为了显示:

C:\>"c:\Program Files\Resource Kit\VADUMP.EXE" -s -p 7404
OpenProcess 失败 c0000034

C:\>cd "c:\Program Files\Resource Kit"

C:\Program Files\Resource Kit>VADUMP.EXE -s -p 7404

总形象承诺 229154816
    只读:36380672
    阅读:4022272
...
于 2010-09-15T18:18:02.197 回答
4

最后,我设法从这里下载了更新版本的 VADump:

http://go.microsoft.com/fwlink/?LinkId=149683

它现在运行,但并非没有在有用的东西之前喷出各种垃圾......

C:\Program Files\Resource Kit>VADUMP.EXE -sop 7240
Error: Heap ShareCount > 1, 0x00271000
Error: Private ShareCount > 1,  0x3400000
Error: Private ShareCount > 1,  0x3402000
Error: Private ShareCount > 1,  0x3403000
Error: Private ShareCount > 1,  0x3404000
Error: Private ShareCount > 1,  0x3405000
Error: Private ShareCount > 1,  0x3406000
Error: Private ShareCount > 1,  0x3408000

...etc...

Catagory                        Total        Private Shareable    Shared
                           Pages    KBytes    KBytes    KBytes    KBytes
      Page Table Pages        49       196       196         0         0
      Other System           127       508       508         0         0
      Code/StaticData       6731     26924      3252      3876     19796
      Heap                   768      3072      3072         0         0
      Stack                   74       296       296         0         0
      Teb                     22        88        88         0         0
      Mapped Data            221       884         0        92       792
      Other Data            4038     16152     16148         4         0

      Total Modules         6731     26924      3252      3876     19796
      Total Dynamic Data    5123     20492     19604        96       792
      Total System           176       704       704         0         0
Grand Total Working Set    12030     48120     23560      3972     20588

如果您有兴趣了解应用程序中的内存分配,我建议您阅读我在原始问题中指出的文章。

于 2009-06-05T14:45:38.760 回答