Ich habe mich jetzt nicht ganz durchgewühlt, aber vom eigentlichen Typ bekommt man ja schnell die
GUID:
Delphi-Quellcode:
program Project3;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
System.TypInfo;
type
ISomeInterface =
interface
['
{EDC39028-A340-4CA8-8746-0E6B5A6D06F2}']
end;
TSomeType =
class(TInterfacedObject, ISomeInterface);
var
someInstance: ISomeInterface;
begin
try
someInstance := TSomeType.Create();
WriteLn( GetTypeData(TypeInfo(ISomeInterface))^.Guid.ToString() );
except
on E:
Exception do
WriteLn(E.ClassName, '
: ', E.
Message);
end;
ReadLn;
end.
Aber wie bekommt man nun von einer Referenz (von der, zumindest im Quelltext, ja klar ist von welchem Typ sie ist), den Typ? Das frage ich mich jetzt auch...