![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
Можно ли как то сделать чтобы можно было классы (объявление) засунуть в dll , а потом их брать юзать , наследовать?
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: нет Всего: 44 |
на счет наследовать сомневаюсь а вообще можно. Пример: технология COM
|
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 23 Всего: 51 |
в DRKB и/или на DelphiKingdom
|
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
||||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
сиба посмотрим в чем отличие от dll у них? читал где то что это теже я... только в профиль? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Не совсем. Просто bpl можно переименовать в dll и юзать как обычную dll.
Но если ее юзать, как bpl, то тогда можно использовать полностью весь их функционал. Например - поставь в настройках проекта "юзать bpl". Программка станет килов 20. Но тем не менее, она спокойно подключает rtl.bpl и VCL.bpl. Спокойненько достает оттуда TForm, создает его, достает TButton и т.д Ты можешь спокойно пронаследовать , который сидит в rtl.bpl, совершенно не заботясь, сто код класса сидит там, а не в твоей программе. Аналогично можешь построить свою bpl, расположить в ней класс, а в программе, хоть юзае его, хоть наследуй... Вобщем работай как обычно. |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
А
и доставать из нее классы и наследовать получится? Добавлено @ 16:10 Вообще то думалось создать dll понармальному , только с возможностью экспорта классов или это никак? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Нет, если переименовать в dll и работать, как с dll, то не получится
![]() Только, если работать, как с bpl.
По нормальному никак. Один из вариантов: создаешь класс, а методы ему назначаешь из dll. В dll же для каждого метода принимаешь на один параметр больше - указатель на Self. Но это довольно странная затея. А вообще зачем тебе dll? |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
Как с ним работать? точнее про заднии... ![]() если честно, мне не надо, попросили меня о помощи, я помогаю по мере сил ![]() ![]() Смысл помощи: есть исходник на С++ с классами , ф-циями... надо заюзать в дельфи эти классы? Добавлено @ 16:41 не переписывая исходник на дельфи, во! Добавлено @ 16:42 PS Интересная задача вот и взялся ![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Ну, если из C++, то тогда только COM.
Само понятие структур разное. Напрямую никак не пронести. Можно еще написать объектную обертку для функций dll, а сами функции уже будут управлять объектом внутри dll. Но это как-то коряво. Но работать будет. |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
Через
можно только созавать объекты , а наследовать как? иль плохо искал? ну структуру можно подобрать схожую ![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Только нужно правильно расписать интерфейс, пронаследовать до полноценного класса. После этого можешь наследовать класс дальше, как обычный класс Delphi. не выйдет. Разные типы данных. Разная адресация. Нокогда не попадешь. Нужно наводить мосты в виде функций и колбэков. Это не очень радостное занятие. Лучше для начала попробуй COM. Для этого его и создавали. |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
а пример такого чуда есть ? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Какой тут пример.
Создаешь обычный интерфейс. Прописываешь в нем все методы класса, который в COM. Потом просто наследуешь класс от InterfacedPersistent и данного интерфейса. Получаешь нормальный человеческий класс. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |