如何在运行时获取接口的名称?

时间:2009-08-05 18:14:29

标签: delphi interface rtti

如果我有一个实现接口的对象,使用RTTI查找接口并获取其GUID并不困难。但如果我想要它的名字,有没有办法得到它?获取类的名称很简单,但对于接口来说,它看起来有点棘手......

1 个答案:

答案 0 :(得分:1)

棘手的部分是从界面获取RTTI。如果你已经设法做到了,那么你应该在PTypeInfo记录指针中有名称。

在我的一个程序中,我编写了一个特殊的注册系统,它将GUID映射到字符串,这样我就可以报告对QueryInterface失败的调用和失败的“as”强制转换。这是在delphi 2005中。我的理解是,在后来的Delphi版本中,接口的RTTI已经取得进展,以至于我可能不再需要该系统了。