Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подключение C++ библиотеки в Delphi 
:(
    Опции темы
amium
  Дата 8.12.2005, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.12.2005

Репутация: нет
Всего: нет




У меня имеется много хорошых классов и функций реалзованных на C++. А мне необходимо написать прогу на Delphi, а переводить эти классы с C++ -> Delphi нет никакого желания и возможности. Насколько я понимаю, это можно сделать с помощью DLL?

Скажем, DLL пишется на VC++ или на Билдере, а используется в Delphi. Можно ли написать DLL чтобы она могла импортироваться в Delphi?


smile

Заранее благодарен!
PM MAIL   Вверх
S.A.P.
Дата 8.12.2005, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 9
Всего: 71



Можно.
PM MAIL   Вверх
amium
Дата 8.12.2005, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.12.2005

Репутация: нет
Всего: нет



При подключении библиотеки в вызывающую программу на С++ используются заголовочные (.h) файлы. Что с ними делать? Как их использовать в С++ понятно. А как от них избавится в Делфи? Можно ли подключить библиотеку без .h файла?
PM MAIL   Вверх
Void
Дата 8.12.2005, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



Цитата(amium @ 8.12.2005, 15:30)
При подключении библиотеки в вызывающую программу на С++ используются заголовочные (.h) файлы. Что с ними делать? Как их использовать в С++ понятно. А как от них избавится в Делфи? Можно ли подключить библиотеку без .h файла?

.h файлы нужно преобразовать в соответствующие объявления внешних функций в Delphi. Автоматические конвертеры существуют, вот что выдал гугл первой же ссылкой:
http://www.drbob42.com/delphi/headconv.htm
С использованием C++ классов из Delphi будет сложнее, если это вообще возможно.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
amium
Дата 8.12.2005, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.12.2005

Репутация: нет
Всего: нет



Похоже это то что нужно, что касается функций!! Спасибо!

Может кто-нибудь знает как импортировать класс так же как это делается в VC++? Хотя наверно, это очередное излишнее изобретение Майкрософт smile smile
PM MAIL   Вверх
blackofe
Дата 8.12.2005, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 29.11.2005

Репутация: 4
Всего: 4



amium
функции, реализованные в dll, можно использовать где угодно, даже в бейсике. с классами сложнее. и тут ты прав - микрософту пришлось поизобретаться, чтобы можно было в dll классы использовать. с другой стороны dll - это само по себе изобретение микрософта.

а на твоем месте я бы пользовал COM - дешево и сердито. переносимо, просто, затраты на COM минимальные.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0628 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.