Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];

Вниз

Как импортировать из DLL класс?   Найти похожие ветки 

 
DStealth   (2002-01-10 19:01) [0]

Как импортировать класс из DLL?


 
Вадим   (2002-01-10 21:14) [1]

Никак, Делфи этого не позволяет


 
Иван Шихалев   (2002-01-11 00:34) [2]

Зато можно написать Package


 
DStealth   (2002-01-11 10:23) [3]

Проблема такая:
Есть DLL на С. Которая экспортирует класс описанный так:
class _MY_CLASS class {
список переменных
список процедур

};
Как из Delphi можно добраться к этим процедурам?


 
nikkie   (2002-01-11 11:15) [4]

написать другую длл на c++, которая будет экспортировать функции типа class_create, class_destroy, class_procedure1, ... - функции-обертки для класса. по-другому боюсь никак (разве что на низком уровне разбираясь с форматом в котором хранятся c++ - классы).

такие идеи описаны у Андрея Боровского в статьях на этом сайте (например, http://delphi.mastak.ru/articles/kylix2/index5.html). вроде именно это делает D6, чтобы использовать библиотеку Qt (вот только у меня нет D6, чтобы посмотреть)


 
DStealth   (2002-01-11 14:06) [5]

2nikkie © (11.01.02 11:15)
Спасибо!!!


 
nikkie   (2002-01-11 17:25) [6]

не за что.

посмотрел D6 у сотрудника - там не так все-таки. библиотеки Qt.dll нет (хотя в Qt.pas она упоминается), есть только QtIntf.dll (размером 4Mb). по идее QtIntf должна была быть обертышом для Qt, но видно разработчики Qt залили это все в одну библиотеку (?).

кстати, почему-то сразу не вспомнился вариант с написанием обертыша в виде не обычной dll, а ActiveX. тогда можно не функции экспортировать, а классы, и использовать его будет удобнее. я писал такой обертыш для библиотеки xerces, чтобы воспользоваться SAX-парсером для XML. вот только писать такой COM приходится на С++, что не очень весело по-началу.


 
iZEN   (2002-01-11 20:49) [7]

Байтовый поток кода класса, в отличие от Java, здесь не пашет...:), никакой ClassLoader не поможет...его просто не придумали :)
Это называется двоичный стандарт Microsoft...:)

Можно создать компонент ActiveX и/или обёртки на C++(ObjectPascal) для этой DLL в ООП-стиле.



 
iZEN   (2002-01-11 20:49) [8]

Байтовый поток кода класса, в отличие от Java, здесь не пашет...:), никакой ClassLoader не поможет...его просто не придумали :)
Это называется двоичный стандарт Microsoft...:)

Можно создать компонент ActiveX и/или обёртки на C++(ObjectPascal) для этой DLL в ООП-стиле.



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

Форум: "Основная";
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
6-90346
ddd-numerical TV
2001-11-05 15:12
2002.01.28
Webserver написать...


1-90272
GhostK
2002-01-09 07:40
2002.01.28
Где можно найти????


6-90333
borjomez
2001-11-06 13:44
2002.01.28
TServerSocket


6-90334
Di_wind
2001-11-06 16:27
2002.01.28
Книги.


3-90234
Быданцев Александр
2001-12-09 16:40
2002.01.28
DB2





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский