Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Интерфейсы [D7, 2003]


вадик ©   (2008-01-30 21:29:00) 

Если у меня в программе есть интерфейс с GUID'ом:

type
 IInterface = interface
   ['{00000000-0000-0000-C000-000000000046}']
   ...
 end;


1. Возможно ли отдельно владея GUID'ом по нему получить сам интерфейс. Если да, то как?

2. Возможно ли в классе использующем интерфейс:

 IClass = class(TInterfacedObject, IInterface)

 end;


получить GUID интрефейса использующегося в классе - тут IInterface, ?


ага   (2008-01-31 05:12:00) [1]

>>>['{00000000-0000-0000-C000-000000000046}']
А это ваще классно:))


DiamondShark   (2008-01-30 22:08:00) [2]

Сама формулировка вопросов выдаёт абсолютное непонимание предмета.


oxffff   (2008-01-30 21:42:00) [3]

>1. Возможно ли отдельно владея GUID'ом по нему получить сам интерфейс. >Если да, то как?

см. Tobject.Getinteface.

и COM QueryInterface

2.

var IID: TGUID;
begin
IID:=IInterface;
end;

class function Tobject.GetInterfaceTable: PInterfaceTable;
Как работать с GetInterfaceTable
См. в GetInterface(const IID: TGUID; out Obj): Boolean;


Наверх

Титульная страница Поиск, карта сайта Написать письмо