Einzelnen Beitrag anzeigen

TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: TGUID von Interface-Instanz herausfinden

  Alt 9. Mai 2014, 12:06
Okay, vielen lieben Dank an alle.

Ich wollte vor allen sichergehen, dass ich nicht irgendetwas übersehe und die function GetGUIDFromInterfaceInstanceWithMagic() einfach nur nicht finde.
Die Erklärung von Stevie ist einleuchtend.

Falls jemand in Zukunft ein ähnliches Problem hat, hier meine entgültige Lösung:

Delphi-Quellcode:
const
  MyDriveInterfaces : array[1..3] of TGUID = (SID_CAR, SID_TRUCK, SID_MOPED);

function TMyList.GetInterfaceGUID(const AInterfaceInstance : ICanDrive) : TGUID;
var
  InterfaceGUID : TGUID;
begin
  Result := ICanDrive;
  for InterfaceGUID in MyDriveInterfaces do
  begin
    if Supports(AInterfaceInstance, InterfaceGUID) then
    begin
      Result := InterfaceGUID;
      break;
    end;
  end;
end;
  Mit Zitat antworten Zitat