Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.06.17;
Скачать: CL | DM;

Вниз

Пакеты времени исполнения   Найти похожие ветки 

 
programmist87 ©   (2007-05-21 02:39) [0]

Если я правильно понял, чтобы программа занимала наименьшее место на жёстком диске нужно заходить в опции проекта и на вкладке Packages вручную отключать неиспользуемые программой пакеты. Если просто поставить флажок "пакеты времени исполнения", то программа не запустится на чужом компе. Неужели в Delphi не предусмотрели возможность автоматического компилирования только нужных программе пакетов? Можно ли как-то автоматизировать?


 
Германн ©   (2007-05-21 02:42) [1]


> Пакеты времени исполнения [D7, XP]
>
> programmist87 ©   (21.05.07 02:39)
>
> Если я правильно понял, чтобы программа занимала наименьшее
> место на жёстком диске нужно заходить в опции проекта и
> на вкладке Packages вручную отключать неиспользуемые программой
> пакеты. Если просто поставить флажок "пакеты времени исполнения",
>  то программа не запустится на чужом компе. Неужели в Delphi
> не предусмотрели возможность автоматического компилирования
> только нужных программе пакетов? Можно ли как-то автоматизировать?
>
>

Ты почти что всё понял неправильно, увы.


 
programmist87 ©   (2007-05-21 02:53) [2]

Тогда будь добр, объясни.


 
Германн ©   (2007-05-21 03:03) [3]


> programmist87 ©   (21.05.07 02:53) [2]
>
> Тогда будь добр, объясни.
>

Спать уже мне пора, увы. Но попробую.
Код программы может быть "целиком заключен" в её исполняемый файл. Такой вариант будет, если выключить флажок "Build with runtime packages" в опциях проекта. Если же этот флажок включить, тогда можно уменьшить размер "исполняемого файла" программы, но при этом придётся вместе с программой распространять ещё и рантайм-библиотеки. И именно те библиотеки, которые ты укажешь в строке ввода ниже флажка "Build with runtime packages".


 
Loginov Dmitry ©   (2007-05-21 09:13) [4]

> Если я правильно понял, чтобы программа занимала наименьшее
> место на жёстком диске...


Если делаешь всего один исполняемый файл, то врядли компиляция с пакетами уменьшит места, так как придется тянуть как миминум пакеты VCLxx.bpl и RTLxx.bpl, а пакеты эти довольно увесистые (весят около 2х МБайт). А вот если с программой идет еще куча дополнительных DLL-библиотек, то компиляция с пакетами - святое дело, здесь и экономия налицо (она очень важна при распространении программы по Инету), и манагер памяти один на всех, и все глобалные из подключенных пакетов общие, так что программить становится удобнее, отладка упрощается, система получается более стабильной (надежной).


 
Amoeba ©   (2007-05-21 11:06) [5]


> то компиляция с пакетами - святое дело, здесь и экономия
> налицо (она очень важна при распространении программы по
> Инету
)

Хорошо подумал прежде чем такое ляпнуть? Пакеты ведь тоже надо будет распространять по интернету.


 
Loginov Dmitry ©   (2007-05-21 11:34) [6]

> Хорошо подумал прежде чем такое ляпнуть?


Конечно хорошо.


> Пакеты ведь тоже надо будет распространять по интернету.


Дак пакеты достаточно установить пользователю всего один раз. А всякие EXE-ники и DLL-ки иногда приходится исправлять и отправлять пользователям по много раз. Так что, экономия трафика при использовании пакетов зачастую ОЧЕНЬ заметная.


 
Amoeba ©   (2007-05-21 11:53) [7]


> Loginov Dmitry ©   (21.05.07 11:34) [6]
>
> > Хорошо подумал прежде чем такое ляпнуть?
>
>
> Конечно хорошо.
>
>
> > Пакеты ведь тоже надо будет распространять по интернету.
>
>
>
> Дак пакеты достаточно установить пользователю всего один
> раз. А всякие EXE-ники и DLL-ки иногда приходится исправлять
> и отправлять пользователям по много раз. Так что, экономия
> трафика при использовании пакетов зачастую ОЧЕНЬ заметная.
>
>

Это верно только в том частном случае, если речь идет об узком круге постоянных потребителей твоего софта в большом количестве, да притом постоянно исправляемого и обновляемого. Но для распространения программ в широких кругах многими программистами такой подход боле чем сомнителен (разные версии Delphi - грузи дополнительные пакеты).
Кроме того, если правильно понял, компиляция DLL с пакетами подразумевает, в первую очередь, помещение в них форм?

Так что еще раз подумай, прежде давать такие советы.


 
Loginov Dmitry ©   (2007-05-21 12:13) [8]

> Кроме того, если правильно понял, компиляция DLL с пакетами
> подразумевает, в первую очередь, помещение в них форм?


Причем тут формы? Формы - это следствие. А цель - разбиение процесса разработы большой системы на отдельные части, каждая из которых закреплена за одним либо несколькими программистами. Если необходимо запихать туда формы - приходится пихать.


> Это верно только в том частном случае, если речь идет об
> узком круге постоянных потребителей твоего софта в большом
> количестве, да притом постоянно исправляемого и обновляемого.


В общем-то да. Имеется ввиду именно такой подход.


 
programmist87 ©   (2007-05-21 20:25) [9]

Мне нужно, чтобы пакеты входили в exe-файл. Только я не понял: в exe будут входить ВСЕ пакеты? Даже те, что я в программе не использую?


 
{RASkov} ©   (2007-05-21 20:36) [10]

> [9] programmist87 ©   (21.05.07 20:25)
> Мне нужно, чтобы пакеты входили в exe-файл. Только я не
> понял: в exe будут входить ВСЕ пакеты? Даже те, что я в
> программе не использую?

Ну и оставь IDE... не трогай в настройках ничего, оставь все по умолчанию и всё будет хорошо...
Что в программе не используется, то и не прилинкуется..... И внимательно следи за оператором uses.... т.е. за всеми uses"ами в проекте...


 
Loginov Dmitry ©   (2007-05-21 20:57) [11]

> Мне нужно, чтобы пакеты входили в exe-файл. Только я не
> понял: в exe будут входить ВСЕ пакеты? Даже те, что я в
> программе не использую?


В ЕХЕ не входят вообще никакие пакеты. Пакеты - это отдельные файлы с расширением .BPL. Если галка "Build with runtime packages" снята, то весь необходимый для работы программы код линкуется непосредственно в ЕХЕ. Если галка установлена, то этот код в ЕХЕ не линкуется - он находится в соответствующих пакетах.



Страницы: 1 вся ветка

Текущий архив: 2007.06.17;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.02 c
15-1179590480
Piter
2007-05-19 20:01
2007.06.17
Корзина в The Bat


10-1133053737
taliban
2005-11-27 04:08
2007.06.17
twebbrowser + scroll


1-1176961998
Slider007
2007-04-19 09:53
2007.06.17
Возвращение результата формы (не ModalResult)


15-1179740462
Капибара из дома
2007-05-21 13:41
2007.06.17
OpenDialog


1-1177148712
Антон Шестаков
2007-04-21 13:45
2007.06.17
Проектирование ИС и Экспертные системы