|
|
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток, коллеги. Суть - плагинизация проекта с выносом всего и вся(ессно, что целесообразно) в bpl. Проблема - кучка юнитов со служебными классами и простыми функциями. Пока все это лежало в экзешнике, все норм. При попытке выноса с динамической загрузкой - нельзя применять: 1. LoadLibrary потому что к примеру, девки не стартуют. 2. LoadPakage - потому что есть дубликаты. И че??!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 12:20:25 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег ТретьяковИ че??!! Ничо!!! Плагинизация это нечто другое, нежели сборка с bpl. Выбери функционал, который нужно вынести и под него пиши отдельные dll. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 12:24:48 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяковbpl... ессно, что целесообразно нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 12:44:04 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков> Суть - плагинизация проекта с выносом всего и вся(ессно, что целесообразно) в bpl. Чтобы потом что с ними делать? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 12:51:10 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков, используй LoadLibrary. С девками вопрос давным-давно решен, поищи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 13:23:36 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Чувствовал, что сейчас либо будут отговаривать либо начнется религиозная перепалка) wadman, с COM не хочу заморачиваться а mdi в dll - криво и не жизнеспособно. JaDiОлег Третьяковbpl... ессно, что целесообразно нет Читаем внимательно) "bpl... ессно, что целесообразно" и "вынос того, что целесообразно" - разница. Гаджимурадов Рустам, все, что захочу(захотим, захотят), без пересборки, включая развитие функционала. В общем на утверждения типа "а нафига?!" - ответ один - я обоснованно так решил. чччД, за предварительное целеуказание весьма благодарен. Хотелось бы поточнее: начиная с какой либо версии или некий хак? Решение только для девок или подходит для широкой практики? В идеале ссылку бы на проверенное решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 14:20:36 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков, Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 14:40:07 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
JaDiОлег Третьяков, Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl? Чем больше файлов в проекте, тем солиднее ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 14:55:32 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
defecatorJaDiОлег Третьяков, Просто интересно, что это за ситуация такая критическая возникла, которая вынудила отказаться от единого экзешника и начать выносить часть модулей в bpl? Чем больше файлов в проекте, тем солиднее ! И слипов нужно добавить, чтоб видно было, что работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 14:56:34 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Так, товарищи, человек же ясно дал понять и попросил обсуждать технические детали реализации, а не "нафига козе баян". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 14:58:49 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
JaDi, Экзешник выполняет производственный процесс над программируемыми электронными компонентами. Суть процесса зависит и от запроса заказчика, и от производителя компоненты, и от её типа версии и протокола. Перелопачивать архитектуру экзешника при добавлении новой компоненты или изменении запросов, типов, версий, протоколов стало геморно. В экзешнике останется только базовый функционал по вызову ссылок на классы промежуточного оборудования, классы процессов над компонентой и вызову ссылок на классы формочек настроек техпроцесса и его результатов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 15:03:45 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков, Можете использовать интерфейсы без COM + dll. Плагины на bpl реализованы в TMS Plugin Framework - можно там глянуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 15:25:24 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
ziv-2014, Чистые интерфейсы я и так использую после порождения инстанции класса. А смысл в dll при платформо\компиляторо - зависимости? Attach\Detach? Это я и в bpl получу при loadpackage или реализую вручную. Как я сказал выше - dll с mdi forms не живет - rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 15:53:49 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков, А смысл в dll при платформо\компиляторо - зависимости? Интерфесы + dll - не важно на каком языке писать, т. е. получается компиляторо независимость. Можно писать плагины на любом языке, который поддерживает интерфейсы, например на c#. Как я сказал выше - dll с mdi forms не живет - rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl. Я что с ними не так-то? Сделайте создание форм в основном приложении. rtl в адресном пространстве должен быть один, расшаренный, как и vcl - это то, что умеет bpl. Создайте свою bpl с rtl и vcl и ее используйте для создания exe, dll и bpl. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 16:18:33 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустами попросил обсуждать технические детали реализации, а не "нафига козе баян". И всё же интересно, почему не dll хотя бы? Зачем ограничивать себя только дельфийской средой? __________ И кстати! сохранилась где-нибудь старинная статья Софтварера про BPL? Вот и киньте ему ссыль ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 16:43:17 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков... чччД, за предварительное целеуказание весьма благодарен. Хотелось бы поточнее: начиная с какой либо версии или некий хак? Решение только для девок или подходит для широкой практики? В идеале ссылку бы на проверенное решение. Не знаю начиная с каких версий. И что за "широкая практика", не знаю. Я использую следующую схему. Ищи в девках модуль dxGDIPlusAPI. Добавляешь сей модуль в мастер приложение и в плагин. Плагин экспортирует два метода: Код: pascal 1. 2. Методы (в плагине!) реализуются соответственно вызовами процедур упомянутого модуля: Код: pascal 1. 2. После загрузки плагина из мастер-приложения дергаешь метод InitializePlugin, перед выгрузкой - FinalizePlugin. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 16:53:19 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Gator... И всё же интересно, почему не dll хотя бы? Зачем ограничивать себя только дельфийской средой? ... +1 На айти помойках всегда можно найти голодных, потерявших человеческий облик явистов, пэхапэшников и сипилюс-плюсников, готовых за еду писать плагины к дельфийскому чЮдо-приложению... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 16:56:47 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
08.09.2017 16:56, чччД пишет: > > +1 > На айти помойках всегда можно найти голодных, потерявших человеческий облик явистов, пэхапэшников и сипилюс-плюсников, готовых за еду писать плагины к дельфийскому чЮдо-приложению... дайте две! Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 17:02:01 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=274 http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=468 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 17:09:53 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
Олег Третьяков, ты никаким способом заранее не узнаешь, что нужно кастомизировать. Если ты пишешь "для себя" (внутренняя разработка), то в плагинизации вообще никакого смысла нет. Если клиентов много - то плагины можно вводить по мере поступления хотелок. Мы сперва просто расширяли систему, пока ненужные большинству рюшечки не начали свисать наружу. Лишь после этого стало примерно понятно, что можно кастомизировать. Далее, экспорт RTL твоего приложения. Ведь плагин должен работать с теми же сущностями, что и мастер-приложение, не будешь же ты, к примеру, создавать новый коннект к БД каждый раз при старте плагина. Стало быть, в плагин нужно экспортировать интерфейсы, обеспечивающие доступ к RTL. Какие интерфейсы? Ты узнаешь, когда они тебе реально понадобятся. А делать что-то "про запас" - бессмысленно на 120%. В общем, забей, ибо пятница началась. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 17:23:49 |
|
||
|
Как жить с bpl?
|
|||
|---|---|---|---|
|
#18+
чччДИщи в девках модуль dxGDIPlusAPI. Добавляешь сей модуль в мастер приложение и в плагин.Можно и так. Но я бы посоветовал посмотреть API и исходники расширений (плагинов) FAR'а и TC. Наверное, они ещё есть на соотв.сайтах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2017, 21:14:31 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39518086&tid=2041845]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
188ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 490ms |

| 0 / 0 |
