Главная страница
    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.004 c
14-90355
limon
2001-12-03 18:31
2002.01.28
Пример диалога со службой технической поддержки


1-90308
yus
2002-01-09 06:16
2002.01.28
Forma


6-90346
ddd-numerical TV
2001-11-05 15:12
2002.01.28
Webserver написать...


1-90273
rey_wagner
2002-01-10 00:24
2002.01.28
Помогите с формами!!!


4-90432
Анатолий
2001-11-29 17:48
2002.01.28
Список процессов.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский