Delphi hat dafür die Compiler magic-Funktion "
supports"
Der gibst du dein Objekt, deinen Interface-Typen (oder eine
GUID), und zuletzt eine Variable, in die Supports die Interface-Referenz ablegen wird.
Die Funktion liefert true wenn das Interface unterstützt wird.
Delphi-Quellcode:
var
component : TComponent;
intf : IClassCLCPump300;
begin
component :=TComponentClass(FMyClass).Create(Self);
if not Supports(component, IClassCLCPump300, intf) then
begin
component.Free();
raise ... ging nich
end;