Ist das denn der ganze Code?
ich hab bei einigen
WMI-Codes Problemchen mit einem Interface/Variant über einen OUT-Parameter mitbekommen, wo das Alte nicht freigegeben wird.
Dann muß man das Result (einen Variant) auch noch selber freigeben, da dieses nicht automatisch geschieht usw.
Aber theoretisch reicht es, wenn man ein Interface per :=nil freigibt (Delphi macht dieses z.B. beim Entfernen einer lokalen Variable automatisch).