Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.25;
Скачать: 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 вся ветка

Текущий архив: 2007.03.25;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.061 c
3-1167148645
V-A-V
2006-12-26 18:57
2007.03.25
Можно ли восстановить базу?


3-1166787472
RomanH
2006-12-22 14:37
2007.03.25
IBX->FIBPlus


1-1170148834
Still Swamp
2007-01-30 12:20
2007.03.25
Open Office + Delphi


6-1160204036
psa247
2006-10-07 10:53
2007.03.25
Ускорить работу WNetEnumResource


15-1172488794
cosinus
2007-02-26 14:19
2007.03.25
Мониторинг здоровья HDD