监控Windows内存映射文件

14

在Windows中,我该如何跟踪由CreateFileMapping()创建的文件映射对象?基本上,我想知道有多少内存映射文件正在使用以及它们的名称、大小等信息。谢谢!


我也在寻找一种编程方式来发现哪些进程打开了内存映射文件,或者像handle.exe这样的实用程序可以以可解析的格式提供该信息。Process Explorer无法在无头机器上有效使用,或者当问题是瞬态时。 - Tim Sparkles
1个回答

9

2
谢谢你让我知道这个好工具。我也想知道如何在我的程序中使用它。有什么线索吗? - Bing Jian
请问,您能告诉我它确切的位置在哪里吗? - Ehsan Zargar Ershadi
9
Ehsan - 当您启用下窗格并切换到句柄模式(查看,下窗格视图,句柄)时,它们会显示出来。当您在上窗格中单击进程时,映射的文件将显示为“Section”条目。 - James McLachlan
有没有一种工具可以转储所有文件映射?我的问题是,在崩溃之后,即使拥有它们映射的所有进程(无论是正常退出还是非正常退出)都已退出,映射也没有被删除。我猜测是那些崩溃的进程的引用(没有被正确删除)使它们保持在原地。我知道重新启动机器会让它们消失,但这是一个笨拙的解决方法,而不是解决这些孤立的映射的方法。 - huoneusto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接