我正在寻找一种方法来定位实现给定接口的类型堆上的所有当前实例(即在 WinDbg 调试期间)。由于接口不是可以创建接口实例的类型,因此在检查堆时它们显然不会出现。即!dumpheap
在这里没有什么帮助。
但是,!dumpmt -md
在给定的 MT 上列出了IFaces
in的数量IFaceMap
。据我所知,这个数字似乎表明该类型是否实现了一个或多个接口。当-md
在类型上使用标志方法时也会列出。
不幸的是!dumpmd
,据我所知,它并没有将给定的方法与接口联系起来,因此它不能用于建立实现的接口。
我假设这些信息在内存中的某处可用,但我不确定在哪里查找。任何输入都受到高度赞赏。