Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2012, 17:22   #1
@нтошка
Помог? Дави весы!
Пользователь
 
Регистрация: 15.05.2012
Сообщений: 25
Стрелка Типы в динамических библиотеках

Я написал тип в динамической библиотеке. Теперь этот тип мне нужно использовать в unit. Но на сколько я знаю, в динамической библиотеке нет раздела interface. Что можно сделать, помимо повторного объявления?
@нтошка вне форума Ответить с цитированием
Старый 28.05.2012, 17:32   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Напишите в библиотеке функцию, которая будет возвращать тип.
Но думаю, что тип нужно переобьявить у себя.
проще написать все на интерфейсах.
Человек_Борща вне форума Ответить с цитированием
Старый 28.05.2012, 17:42   #3
@нтошка
Помог? Дави весы!
Пользователь
 
Регистрация: 15.05.2012
Сообщений: 25
По умолчанию

Цитата:
Напишите в библиотеке функцию, которая будет возвращать тип.
Я и так использую функцию, а делфи ругается. Вообщем, не помогло(((
@нтошка вне форума Ответить с цитированием
Старый 28.05.2012, 19:01   #4
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

описание типа выносится в отдельный модуль, который затем юзается в длл и в самой программе. Аналог сишных хидер-файлов
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 28.05.2012, 19:19   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Цитата:
описание типа выносится в отдельный модуль, который затем юзается в длл и в самой программе. Аналог сишных хидер-файлов
Я думаю, куда проще написать все, с использованием interface, потом запилить библиотеку типов, котору можно без граблей легко и просто импортировать хоть в delphi, хоть в Visual Studio, опять же без граблей.

Да и если реализовывать интерфейс в dll, то др. программеру нужно, всего-то, предоставить описание интерфеса а не его код.
Человек_Борща вне форума Ответить с цитированием
Старый 28.05.2012, 19:25   #6
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> описание интерфеса а не его код

а кто говорил про код? Интерфейсный модуль так и будет выглядеть, с пустой секцией implementation:

Код:
unit
  sharedTypes;

interface

type
  myType = ... whatever ...;

implementation
end.
код сидит, например, в длл, прога его вызывает, при этом пользуются они myType. 80% винды так написано.


> запилить библиотеку типов, котору можно без граблей легко и просто импортировать хоть в delphi, хоть в Visual Studio, опять же без граблей.

через COM, что ли? Ну не знаю, имхо, это редкий геморрой, да и граблей там за каждым байтом понаставлено достаточное количество.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление динамических массивов Dimarik Общие вопросы C/C++ 20 14.03.2011 12:30
использование в .DLL библиотеках Exel designer999 Общие вопросы Delphi 1 17.06.2010 05:44
Нужно, чтобы прога работающая на одних библиотеках, заработала при других rdron Общие вопросы C/C++ 8 08.01.2010 01:24
C++. Объявление динамических массивов. Парсифаль Помощь студентам 27 03.05.2009 23:21