Вниз
Скачать: CL | DM;

Использование dll через интерфейс   Найти похожие ветки 

 
Aragon ©   (2005-10-31 23:26) [0]

Всем привет! Возникла проблема. Есть dll-ка, в ней описан интерфейсный класс и реализация его методов. Вызывающей программе доступен только интерфейс (interface, а не class) класса, который он наследует. Как используя этот интерфейс, получить доступ к методам класса в dll. Необходимо регистрировать свой интерфейс/dll в системе?
Как в данном случаем использовать COM?
Может кто-нибудь сможет показать рабочий пример или дать линк на соответствующую тематику. За ранее спасибо!


 
Набережных С. ©   (2005-11-01 07:35) [1]

В простейшем случае можно просто экспортиовать из DLL функцию, которая будет создавать объект и возвращать его интерфейс.
 Если имеется фабрика класса и в DLL использован модуль ComServ или подобный, то можно через  DllGetClassObject получить интерфейс фабрики соответствующего класса и через него создать объект посредством IClassFactory.CreateInstance.
 Ну и конечно, если есть фабрика класса, можно зарегистрировать DLL в системе через regsvr32 и иметь доступ к интерфейсу объекта(ов) через стандартную CoCreateInstance.
 Почитать - инфы в сети навалом, книг масса, "ищите и обрящите":)). Например, на RSDN.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.032 c
4-1163159712
novill
2006-11-10 14:55
2007.03.25
Есть у кого-нибудь заголовки функций gina.dll на Delphi?


1-1170495138
Medved_
2007-02-03 12:32
2007.03.25
StringGrid


15-1172678879
Calibr
2007-02-28 19:07
2007.03.25
WinRAR парольчик


15-1172478724
ocean
2007-02-26 11:32
2007.03.25
Windows installer error


15-1172575692
Piter
2007-02-27 14:28
2007.03.25
Помогите опознать песню




   Наверх