Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];




Вниз

Где-то видел прогу которая уменьшает размер готового exe-шника написанного на Delphi чуть ли не на половину 


SD Alone   (2001-12-14 11:10) [0]

Она вроде удаляет все ненужное, иконки там стандартные и всеческую лабуду такого рода. Если видел кто намыльтесь в мой ящик.



Fellomena   (2001-12-14 16:40) [1]

Во-первых: программы такого класса как правило не удаляют "всяческую лабуду", а просто упаковывают код выполняемого модуля (будь то exe, dll, vxd или что-то иное).
при этом они встраивают в файл свой распаковщик.
Например пограмма AsPack действительно из 300kb файла, получившегося при компиляции (говорю про Delphi и Builder), делает 180kb.

Во-вторых: не маленький - сам найдёшь и скачаешь - эти программы вовсе не редкость, что бы их передавать из рук в руки =)



Добавлю только   (2001-12-15 01:59) [2]

что из 1800К AsPack делает ~600K, т.е. примерно 30%. А насчет исходных 300К - это говорит о квалификации Fellomen"ы!



Dima-k17   (2001-12-15 13:34) [3]

А я буду добрее и дам ссылку на свой сайт, с которого можно скачать программу-упаковщик. Delphi-k17.narod.ru

UPX

With Best Regards



andrucco   (2001-12-18 06:03) [4]

KOL



Knight   (2001-12-18 10:15) [5]

Я когда ковыряюсь ресторатором в прогах на Дельфи ,то вижу столько лишнего!
Вот нафига в простейшей проге 7 штук неиспользуемых курсоров, 11 строк с сообщениями типа Буфер не поддерживает иконки, и т.д.?



Nikolay   (2001-12-18 13:36) [6]

2 Knight
что бы было :)
вдруг винде захочется сообщение
11 раз вывести :)

Вот так!(с)



Vadim   (2001-12-18 15:39) [7]

>Dima-k17 © (15.12.01 13:34)
А проблем с UPX-ом не было?
Я попробовал его использовать, отлично упаковывает и exe, и dll, но ...
При выходе из программы иногда без видимых причин выдаётся AV.
Откровенно говоря, вычислять причину было влом: я просто перестал
им пользоваться. Может, у кого есть рекомендация, как этого избежать?



evgeg   (2001-12-18 17:58) [8]

> Во-первых: программы такого класса как правило не удаляют "всяческую лабуду", а просто упаковывают код выполняемого модуля (будь то exe, dll, vxd или что-то иное).

Вы не поняли, он имел в виду именно удаление неиспользуемых ресурсов, а не упаковку.



paul_shmakov   (2001-12-18 20:23) [9]

upx иногда подглючивает. но это все равно лучший вариант, т.к. качественный и бесплатный.
но нужен ли паковщик? очень не советую - программа будет будет куда больше памяти отжирать и грузиться будет медленее.
ну а если цель - передача файла через инет, то лучше его просто zip-ом сжать.



arbiterz   (2001-12-19 02:20) [10]

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



Suntechnic   (2001-12-19 06:49) [11]

> arbiterz (19.12.01 02:20)

> Наоборот запакованная программа должна грузится быстрее.

Ошибаетесь. То, в каком виде находится запакованная программа, естественно, "грузиться в память" не может. Её требуется распаковать, а потом загрузить.

>А уж процессорное время для распаковки уж точно будет меньше чем время >физического считывания файла с диска.
>Операции разного уровня.

Вот тут как раз и неувязочка выходит. "Обычный" exe не будет никуда считываться. Он просто будет спроектирован, на адресное пространство процесса, а вот в случае упакованного exe проектировать собственно говоря нечего. Требуется распаковать для начала. Мало того, что то, что распакуется, надо куда то положить(а класть можно только в одно место- виртуальную память и бухнется он естественно в своп), так он ещё и хапнет виртуальную память аккурат под размер изначального неупакованного exe. Отсюда всплывает другой отрицательный момент. В случае запуска других экземпляров, для обычного exe проецируется тот же файл с диска, а в случае упакованного, всё начинается по новой. Запустив, скажем, 10 экземпляров, ты "сожрёшь" 10x"рамер исходного exe" виртуальной памяти. Для таких приложений как, например, MS Office это просто неприемлемо.
Так что советую хорошо подумать, прежде, чем использовать различного рода упаковщики.



gun19456   (2001-12-19 15:28) [12]

Пользуюсь Aspack без проблем.
Пророга просто распаковывается при загрузке.
Но учтите, что грузится сразу все !
В том числе и та часть, которая в обычном ехе считается подгружаемой во время исполнения. Извините что коряво объяснил.
Вот и все отличия.
"так он ещё и хапнет виртуальную память аккурат под размер изначального неупакованного exe" - согласен, но для небольших программ это не
существенно.



paul_shmakov   (2001-12-19 18:40) [13]

2 gun19456:
"...для небольших программ это не
существенно"

а зачем небольшие программы вообще паковать? :)




Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.74 MB
Время: 0.018 c
3-18697           Mr.Hunter             2002-01-09 12:18  2002.02.07  
Как определить имя БД , зная только название поля


1-18883           mapnn                 2002-01-19 15:16  2002.02.07  
Как получить список ещё не созданных форм в Run Time?


3-18751           NLO                   2002-01-11 12:35  2002.02.07  
BLOB или ...


3-18718           DrYou                 2002-01-10 10:15  2002.02.07  
Некорректно работает связь Master/Detail


1-18904           Tadeush               2002-01-23 15:43  2002.02.07  
Как считать имена файлов?