On 30 Jan 11, at 22:28 , cobines wrote:

> it is now a pointer to IBaseInterface, because of implicit QueryInterface?
The reference changes because you have explicitly cast (the implementing 
object) to another interface.

> So, I think I can compare interface variables but first I have to
> bring them to the same interface using "as", for example to IUnknown.
Yes.  This function will confirm the two provided interfaces are implemented by 
the same object...

function EqIntf(a, b: IUnknown): Boolean;
begin
  Result := (a as IUnknown) = (b as IUnknown);
end;

Regards Andrew.

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to