|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.10.2009, 00:43 | #1 |
Форумчанин
Регистрация: 14.09.2008
Сообщений: 172
|
Form в DLL
Можно ли как то запихнуть в ДЛЛ форму, но так что бы она не получалась размера самого екзешника? Типа все нужные модули скомпелированы в екзешник.
Шипулин А. В.
|
24.10.2009, 02:13 | #2 | |
Software Developer
Старожил
Регистрация: 19.12.2008
Сообщений: 2,070
|
Вобще то форму можно запихнуть в длл. И в Библии Делфи это хорошо описано.
Цитата:
Будь проще и люди к тебе потянутся
|
|
24.10.2009, 03:13 | #3 | |
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
Цитата:
Таким образом можно нехило разгрузить программу. Каждая форма в проекте прибавляет ему по меньшей мере 100кбайт веса. И ещё, не стоит держать в одной DLL одну форму - это не оправдано, так как DLL содержащая форму так же толстеет на 100кбайт. Следовательно, чтобы грамотно и оптимально использовать эту возможность, форм должно быть по меньшей мере 3 (минимум 2). В атаче лежит пример, компилируй его, появица Beep.Dll. Если нет желания писать программу для теста библиотеки, сделай так (пуск выполнить). Код:
Последний раз редактировалось r9m; 24.10.2009 в 03:22. |
|
24.10.2009, 15:26 | #4 |
Форумчанин
Регистрация: 14.09.2008
Сообщений: 172
|
Вы не так меня немного поняли. Я имел в виду, что у меня в самой программе (в ексе файле) уже есть главная форма, ехе например весит килобайт 500, а остальные формы для удобста раскиданы по ДЛЛ, но каждая ДЛЛ заного кампилит в себя модуль Forms, можно ли как то ей указать что данный модуль уже скомпилен в ЕХЕ, что бы ДЛЛ не хранила в себе модули FORMS, Windows, Classes и т.д. а брала их из ЕХЕ файла.
Шипулин А. В.
|
05.05.2010, 06:03 | #5 |
₪₪₪₪₪₪₪₪
Форумчанин
Регистрация: 16.04.2007
Сообщений: 471
|
Нет. Длл - сам по себе самостоятельный модуль. Для его работоспособности он должен включать в себя все необходимые ему модули (тут уж без тафтологии никак имхо). Другое дело, если вы самостоятельно реализуете все необходимые функции в своей библиотеке. Тогда вам не придётся тянуть в своей длл целые модули делфи.
Вроде понятно написал. Ежели что - поправят. Благо есть кому ;D |
05.05.2010, 10:59 | #6 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
что бы не толстеть можно использовать BPL (это специальный вид dll только для программ на Delphi)
Но в этом случае 1. в главной программе необходимо установить build with runtime package находится меню Project -> Options ->вкладка Packages 2. кроме своих BPL и EXE придется таскать много разных (как минимум 4-5) дополнительных модулей ( BPL из состава delphi). точное число определяется экcпериментально view -> debug windows -> modules (те что *.bpl)
программа — запись алгоритма на языке понятном транслятору
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при выхове функций Bass.dll из другой DLL | SalasAndriy | Общие вопросы Delphi | 7 | 21.10.2009 23:36 |
Form | Rerek | Общие вопросы C/C++ | 5 | 12.04.2009 22:00 |
Form | Simon..14 | Общие вопросы C/C++ | 1 | 01.02.2009 12:55 |
Form.Show в Form.Create | UnD)eaD)Snake | Общие вопросы Delphi | 6 | 07.09.2007 11:13 |