如何获取与进程关联的GDI对象

时间:2008-10-30 19:04:53

标签: windows command-line

我正在调查我们的一个智能客户端应用程序中的GDI泄漏问题。 我正在寻找一个工具(如任务列表)来获取与进程关联的GDI对象。我可以在taskmanager中看到GDI对象,但是我要求在某个地方定期捕获它。例如,在文本文件中。

3 个答案:

答案 0 :(得分:5)

编写程序以使用GetGuiResources API函数定期记录进程使用的GDI句柄数量应该非常简单。

答案 1 :(得分:5)

完全免费的Process Explorer(http://www.sysinternals.com)允许您以图形方式检查此操作以及与运行进程相关的其他许多方面。将“GDI对象”添加到要显示的列中,然后关闭并运行。

注意:Microsoft获得了他们的工具,我相信Mark Russinovich现在适用于Microsoft。 Sysinternals工具通常不需要任何安装,除了将它们复制到方便的地方,如果它们还没有,应该放在你的工具箱中。

答案 2 :(得分:3)

使用来自NirSoft的免费工具GDIView

他们的描述:

  

GDIView是一个独特的工具,可显示每个进程打开的GDI句柄列表(画笔,笔,字体,位图等)。它显示每种类型的GDI句柄的总计数,以及每个句柄的详细信息。   此工具对于需要跟踪其软件中的GDI资源泄漏的开发人员非常有用。

您可以将GDI计数器列表保存为常规,制表符分隔,逗号分隔和表格文本文件,以及水平或垂直HTML文件或XML文件。