powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как жить с bpl?
21 сообщений из 21, страница 1 из 1
Как жить с bpl?
    #39518082
Олег Третьяков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток, коллеги.
Суть - плагинизация проекта с выносом всего и вся(ессно, что целесообразно) в bpl.
Проблема - кучка юнитов со служебными классами и простыми функциями.
Пока все это лежало в экзешнике, все норм.
При попытке выноса с динамической загрузкой - нельзя применять:
1. LoadLibrary потому что к примеру, девки не стартуют.
2. LoadPakage - потому что есть дубликаты.
И че??!!
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518086
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег ТретьяковИ че??!!
Ничо!!!

Плагинизация это нечто другое, нежели сборка с bpl.
Выбери функционал, который нужно вынести и под него пиши отдельные dll.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518104
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяковbpl... ессно, что целесообразно
нет
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518113
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков> Суть - плагинизация проекта с выносом всего и вся(ессно, что целесообразно) в bpl.

Чтобы потом что с ними делать?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518147
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков,

используй LoadLibrary.
С девками вопрос давным-давно решен, поищи.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518201
Олег Третьяков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чувствовал, что сейчас либо будут отговаривать либо начнется религиозная перепалка)

wadman, с COM не хочу заморачиваться а mdi в dll - криво и не жизнеспособно.

JaDiОлег Третьяковbpl... ессно, что целесообразно
нет
Читаем внимательно) "bpl... ессно, что целесообразно" и "вынос того, что целесообразно" - разница.

Гаджимурадов Рустам, все, что захочу(захотим, захотят), без пересборки, включая развитие функционала.

В общем на утверждения типа "а нафига?!" - ответ один - я обоснованно так решил.

чччД, за предварительное целеуказание весьма благодарен.
Хотелось бы поточнее: начиная с какой либо версии или некий хак?
Решение только для девок или подходит для широкой практики?
В идеале ссылку бы на проверенное решение.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518219
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков,

Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl?
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518233
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
JaDiОлег Третьяков,

Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl?
Чем больше файлов в проекте, тем солиднее !
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518238
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorJaDiОлег Третьяков,

Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl?
Чем больше файлов в проекте, тем солиднее !
И слипов нужно добавить, чтоб видно было, что работает.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518243
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так, товарищи, человек же ясно дал понять
и попросил обсуждать технические детали
реализации, а не "нафига козе баян".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518250
Олег Третьяков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDi,

Экзешник выполняет производственный процесс над программируемыми электронными компонентами.
Суть процесса зависит и от запроса заказчика, и от производителя компоненты, и от её типа версии и протокола. Перелопачивать архитектуру экзешника при добавлении новой компоненты или изменении запросов, типов, версий, протоколов стало геморно. В экзешнике останется только базовый функционал по вызову ссылок на классы промежуточного оборудования, классы процессов над компонентой и вызову ссылок на классы формочек настроек техпроцесса и его результатов.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518274
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков,
Можете использовать интерфейсы без COM + dll.
Плагины на bpl реализованы в TMS Plugin Framework - можно там глянуть.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518305
Олег Третьяков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014,
Чистые интерфейсы я и так использую после порождения инстанции класса.
А смысл в dll при платформо\компиляторо - зависимости?
Attach\Detach? Это я и в bpl получу при loadpackage или реализую вручную.
Как я сказал выше - dll с mdi forms не живет - rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518321
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков,

А смысл в dll при платформо\компиляторо - зависимости?
Интерфесы + dll - не важно на каком языке писать, т. е. получается компиляторо независимость. Можно писать плагины на любом языке, который поддерживает интерфейсы, например на c#.
Как я сказал выше - dll с mdi forms не живет - rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl.
Я что с ними не так-то?
Сделайте создание форм в основном приложении.
rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl.
Создайте свою bpl с rtl и vcl и ее используйте для создания exe, dll и bpl.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518332
Фотография Gator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустами попросил обсуждать технические детали
реализации, а не "нафига козе баян".

И всё же интересно, почему не dll хотя бы? Зачем ограничивать себя только дельфийской средой?
__________
И кстати! сохранилась где-нибудь старинная статья Софтварера про BPL?
Вот и киньте ему ссыль
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518336
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков...
чччД, за предварительное целеуказание весьма благодарен.
Хотелось бы поточнее: начиная с какой либо версии или некий хак?
Решение только для девок или подходит для широкой практики?
В идеале ссылку бы на проверенное решение.

Не знаю начиная с каких версий. И что за "широкая практика", не знаю.

Я использую следующую схему.
Ищи в девках модуль dxGDIPlusAPI. Добавляешь сей модуль в мастер приложение и в плагин.
Плагин экспортирует два метода:

Код: pascal
1.
2.
    procedure InitializePlugin;
    procedure FinalizePlugin;


Методы (в плагине!) реализуются соответственно вызовами процедур упомянутого модуля:
Код: pascal
1.
2.
dxInitializeGDIPlus
dxFinalizeGDIPlus



После загрузки плагина из мастер-приложения дергаешь метод InitializePlugin, перед выгрузкой - FinalizePlugin.
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518337
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gator...
И всё же интересно, почему не dll хотя бы? Зачем ограничивать себя только дельфийской средой?
...
+1
На айти помойках всегда можно найти голодных, потерявших человеческий облик явистов, пэхапэшников и сипилюс-плюсников, готовых за еду писать плагины к дельфийскому чЮдо-приложению...
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518342
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
08.09.2017 16:56, чччД пишет:
>
> +1
> На айти помойках всегда можно найти голодных, потерявших человеческий облик явистов, пэхапэшников и сипилюс-плюсников, готовых за еду писать плагины к дельфийскому чЮдо-приложению...

дайте две!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518349
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518359
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Олег Третьяков,

ты никаким способом заранее не узнаешь, что нужно кастомизировать.
Если ты пишешь "для себя" (внутренняя разработка), то в плагинизации вообще никакого смысла нет.

Если клиентов много - то плагины можно вводить по мере поступления хотелок. Мы сперва просто расширяли систему, пока ненужные большинству рюшечки не начали свисать наружу. Лишь после этого стало примерно понятно, что можно кастомизировать.

Далее, экспорт RTL твоего приложения. Ведь плагин должен работать с теми же сущностями, что и мастер-приложение, не будешь же ты, к примеру, создавать новый коннект к БД каждый раз при старте плагина.
Стало быть, в плагин нужно экспортировать интерфейсы, обеспечивающие доступ к RTL. Какие интерфейсы? Ты узнаешь, когда они тебе реально понадобятся.
А делать что-то "про запас" - бессмысленно на 120%.

В общем, забей, ибо пятница началась. :)
...
Рейтинг: 0 / 0
Как жить с bpl?
    #39518429
Фотография Gator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДИщи в девках модуль dxGDIPlusAPI. Добавляешь сей модуль в мастер приложение и в плагин.Можно и так.
Но я бы посоветовал посмотреть API и исходники расширений (плагинов) FAR'а и TC.
Наверное, они ещё есть на соотв.сайтах.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как жить с bpl?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]