Warum nicht so:
Delphi-Quellcode:
procedure TCustomDataModule.GetLink(out Link: IDataChangeLink);
begin
Link := FLink;
end;
Untypisch nicht, nahezu alle
WMI-Implementationen machen sowas, für die Rückgabe der Werte.
Und das Ergebnis des Ganzen?
Speicherlecks.
Denn ist vorher schon was in dem Link-Parameter drin, dann wird es ignoriert und nicht freigegeben.
Für eine automatische Referenzzählung ist das OUT hier also der nahezu sichere Tot.