Главная страница
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.04 c
1-1170423871
oxffff
2007-02-02 16:44
2007.03.25
E1508. Лечиться ли Delphi 7?


3-1167245485
крошка
2006-12-27 21:51
2007.03.25
Как правильно раздать права пользователям MS SQL и кто такой DBO?


4-1162879871
Николай1984
2006-11-07 09:11
2007.03.25
Обмен данными чарез LPT-LPT, USB-USB, COM-COM


3-1167223500
wipr
2006-12-27 15:45
2007.03.25
Поломка базы IB (checksum error on database page 38260)


1-1170365613
Ольчик
2007-02-02 00:33
2007.03.25
Проблема с файлами DEL1.MB,DEL2.MB...