Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.06.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.043 c
2-1180081348
Vitaliy12
2007-05-25 12:22
2007.06.17
ADOQUERY - Где я не прав?


15-1179950039
Kris_
2007-05-23 23:53
2007.06.17
Как пропустить проверку пре-реквизитов при установке Дельфи?


2-1180426342
_vl_
2007-05-29 12:12
2007.06.17
Форматирование числа


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


2-1179988065
Marat
2007-05-24 10:27
2007.06.17
Проблема с запросом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский