Главная страница
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.029 c
15-1172929372
Liet
2007-03-03 16:42
2007.03.25
Движок сайта на Делфи


15-1172479216
NailMan
2007-02-26 11:40
2007.03.25
WinXP 32-бит и 4Гб памяти


2-1172851515
sat
2007-03-02 19:05
2007.03.25
очистка canvas


15-1172507241
Calibr
2007-02-26 19:27
2007.03.25
Прозрачность


3-1167207493
vigo_
2006-12-27 11:18
2007.03.25
Ошибка ORA-01012: not logged on