20

我正在使用一个解析器,它将通过 FASTMM4 内存泄漏报告并将所有相关数据存储在定制的结构/类中。我使用VirtualTreeView将每个已泄漏实例的类显示为树中的一个节点。- 请注意第一个节点表示未知。这是因为 FASTMM 调用方法AClass来确定天气它是否是一个类。当它找到自定义结构时,会将它们标记为未知,这不会使我的报告分析器非常有效,因为大多数内存泄漏来自这些自定义结构和记录。

问题:有没有办法使用 DebugInfo 或JVCL等其他工具来收集这些调试符号并将它们的内存地址与内存泄漏报告文件中的内存地址进行比较?我希望我的树停止显示 UNKNOWN 并显示这些自定义结构的名称。我是 Delphi 编程的新手,甚至是处理内存泄漏的新手,所以任何帮助都意义重大!

4

1 回答 1

1

也许扩展的 RTTI(Delphi 2010 更新)可以用来创建一个类型字典,它只保存 typeinfo 指针和所有“非类”类型的名称。

可以使用条件定义启用此功能,以避免其在正常操作中的开销。

于 2012-12-06T10:13:48.597 回答