|
|
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Одно приложение Т! - на Дельфи 10.2. В него надо вставить моё приложение Е! (на Дельфи 10.3.1) /в один из табов (TTabSheet)/. Как это лучше провернуть? Из Т! в Е! передаётся параметром 1 номер ID, и Е! секунд 10 его обрабатывает. Хорошо бы задержки при открытии табы избежать, а также избежать зависания основного приложения Т!. PS Исходные коды обоих у меня есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 19:17 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookin, А грабить корованы они совместно не должны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 20:23 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Vlad F, грабить корованы лучше водиночку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 20:38 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookin, А как же шайка? - разве она не повышает вероятность достижения успеха в обозначенном мероприятии? И, между прочим, почему бы тем программам, для тех же целей, попросту не обмениваться необходимыми данными для самостоятельной их визуализации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 20:57 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
CleintMainForm.ParentWindow:=ParentTab.Handle; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 20:59 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinИсходные коды обоих у меня есть. В этом случае проще всего подключить модули одного к другому и сделать из них монолит-кирпич. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 21:14 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Одно на все приложение, короче. Раз уж все исходники есть.)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 21:22 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Chrome работает с несколькими процессами. Можешь посмотреть код, как там реализовано данная задача. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 21:40 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Хотелось бы ещё оставить возможность STANDALONE работы моего E! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:00 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
rgreatCleintMainForm.ParentWindow:=ParentTab.Handle; Да это понятно, там надо ещё CreateParams переписать, чтобы кнопок Min/Max/Close в заголовке не было (да и самого заголовка не было) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:02 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
ziv-2014, А что Chrome на Дельфи написан? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:05 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinХотелось бы ещё оставить возможность STANDALONE работы моего E! То есть собирать из одной и той же пачки модулей три разных приложения - mission impossible для современных программистов? Ню-ню... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:09 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinRgreat, Да это понятно, там надо ещё CreateParams переписать, чтобы кнопок Min/Max/Close в заголовке не было (да и самого заголовка не было)Не надо там переписывать. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Ну и события на ресайз таба передавай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:13 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Я склеивал приложения через обычную панель. Показывал здесь давным давно ещё в XP, notepad, sol.exe может, сохранилось где-то. Окно внешнего приложения (handle) и handle панелки связаны через её Tag и SetWindowLong легко ресайзится и прочее дельфийское. Соответственно, для ExternalApp - SetWindowPos и проч. WinAPI. Управление менюшками и кнопками извне ExternalApp может быть через колбеки или мессагам. Единственно, не надо приклеиваться самому к себе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 22:59 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinОдно приложение Т! - на Дельфи 10.2. В него надо вставить моё приложение Е! (на Дельфи 10.3.1) /в один из табов (TTabSheet)/. Как это лучше провернуть? Из Т! в Е! передаётся параметром 1 номер ID, и Е! секунд 10 его обрабатывает. Хорошо бы задержки при открытии табы избежать, а также избежать зависания основного приложения Т!. PS Исходные коды обоих у меня есть. Очень просто. Второе приложение оформляешь как COM - сервер. Особо не изгаляясь, дельфийским визардом. А в первом приложении пользуешься вторым: размещаешь в табе OLE - контейнер, в контейнер помещаешь второе. Вот и всё, работы на 5 минут. Ну ладно, на 30. Чтобы не зависало - при запуске первого приложения второе запускать параллельно. Да, оле - контейнер не всегда хорош в мелочах, но обычно его достаточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2019, 00:13 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinВ него надо вставить моё приложение Е! (на Дельфи 10.3.1) /в один из табов (TTabSheet)/. Как это лучше провернуть? Из Т! в Е! передаётся параметром 1 номер ID, и Е! секунд 10 его обрабатывает. Хорошо бы задержки при открытии табы избежать, а также избежать зависания основного приложения Т!.А это нужно для вновь создаваемого процесса или для уже работающих тоже? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2019, 21:13 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookinziv-2014, А что Chrome на Дельфи написан? А какая разница, api оно и в windows api. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2019, 21:24 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Рустам, для вновь создаваемого. Дело в том, что включение нового приложения в зоопарк имеющихся - длительный процесс. Потому ТЗ было - включить в состав имеющегося. Разрабатывается и тестируется оно, однако, как standalone ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2019, 22:59 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookin> Рустам, для вновь создаваемого. Тогда с чем именно возникли проблемы? Потоки, "докинг" окна, еще что-то? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2019, 16:19 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, Проблем никаких не возникло. Советуюсь просто. С одной стороны хочется приложения разделить, ведь если просто "засунуть"(мою главную форму в их TTabSheet), то есть риск что полезут в мои модули и что-то сломают. Так что думаю насчёт bpl . Но вот с чем столкнулся - bpl подлинковывает другие required bpl, короче, если где-то (3-rd party package source code) я что-то поменял, то мой собственный bpl этого не видит, видимо надо пересобрать пакеты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2019, 19:32 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor CookinГаджимурадов Рустам, Проблем никаких не возникло. Советуюсь просто. С одной стороны хочется приложения разделить, ведь если просто "засунуть"(мою главную форму в их TTabSheet), то есть риск что полезут в мои модули и что-то сломают. Так что думаю насчёт bpl . Но вот с чем столкнулся - bpl подлинковывает другие required bpl, короче, если где-то (3-rd party package source code) я что-то поменял, то мой собственный bpl этого не видит, видимо надо пересобрать пакеты Создай свой bpl с нужным тебе rtl. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2019, 19:42 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookin, Если идти именно этим путем, то можно оформить отчуждаемый функционал со всеми необходимыми формами в виде обычной DLL с общим менеджером памяти (SimpleShareMem). Тоже не без гимора, конечно, ибо требует также передачи в нее головного экземпляра Application и т.д., но в принципе все работает, я даже корректны к БД туда передаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2019, 20:11 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Victor Cookinриск что полезут в мои модули и что-то сломают. Так запрети править, лицензируй. Повесь табличку "Работает - не трожь!", "Не влезай! Убьёт" Victor Cookinесли где-то (3-rd party package source code) я что-то поменял, то мой собственный bpl этого не видит, видимо надо пересобрать пакеты. Конечно надо. BPL скомпилированная давно об изменениях не знает. И новую сборку ещё надо будет разослать заинтересованным... Которые тоже не знают, кого там жареный петух клюнул... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2019, 21:45 |
|
||
|
Интегрировать одно приложение в другое
|
|||
|---|---|---|---|
|
#18+
Всё сделал, всё нравится. Даже в своём приложении текстовый редактор - динамически загружаемый пакет с экспортируемыми функциями: Код: pascal 1. 2. 3. 4. 5. Но к сожалению Основной проект тогда тоже должен быть скомпилирован с Runtime packages. А этого никто из заказчиков не хочет. Надо переделывать теперь в DLL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2019, 23:17 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39852959&tid=2039055]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
182ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 478ms |

| 0 / 0 |
