Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Оптимизация размера программ (EXE)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Разбираясь с темой наталкивался на разные документы и исходники. Решил обобщить все в одном топике, так как постоянно встречаю вопросы об оптимизации то там, то сям.
Ниже будут ссылки на документы и файлы.
 
Добавлено
самая лучшая статья по оптимизации для пишущих на VC++ 6,7:
http://www.rsdn.ru/article/cpp/crt.xml
или она же:
http://www.rsdn.ru/article/?51
статья на английском - автор Matt Pietrek - опять для MS VC++ :
"Reduce EXE and DLL Size with LIBCTINY.LIB"
http://msdn.microsoft.com/msdnmag/issues/01/01/hood/default.aspx
с исходниками
 
 

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 16:29 01-11-2004 | Исправлено: vito333, 13:52 29-04-2005
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://northfox.uw.hu/
домашняя страница еще одного пакера ЕХЕ - MEW
сжимает по алгоритму lzma, достигая зачастую максимального эффекта на сегодняшний день
на мелких файлах - до 100 кб - опережает FSG
в общем, интересный пакер, но есть баги, недоработки - они описаны

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 12:06 24-11-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://web.ict.nsc.ru/~cancel/delphi/
сайт, посвященный программированию на Дельфи с помощью WinAPI

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 03:03 25-11-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
попользовался пакером MEW - сразу пару багов нашел. вывод - использовать рано ...

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 10:42 29-11-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Зато MEW хорошо жмёт маленькие асмовые проги =)
И глюков с ними не замечал.
Я свои релизы им пакую.

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 06:36 01-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
исправляюсь )) ошибся - один якобы "баг" - оказался моей недоработкой.
Другой тоже, возможно, не из-за MEW.
 
 
Добавлено
на моей проге Mark
http://forum.ru-board.com/topic.cgi?forum=5&topic=13554&start=140#lt
выигрывает у FSG ~2кб при оригинальном размере ЕХЕ 45-46 кб. - очень хороший результат, думаю на сегодняшний день его улучшить нечем, продолжаю пробовать и тоже, наверное, буду использовать вместо FSG.

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 08:12 01-12-2004 | Исправлено: vito333, 08:29 01-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На самом деле ведь всё зависит от структуры ехе.
К примеру проги с большим количеством ресурсов (типа RCData в делфи) лучше жмуться aspack'ом. Проги же где больше кода лучше жмуться upx'ом (в большинстве случаев).
А вот с маленькими прогами всё просто.
Здесь играет главную роль код распаковщика.
У FSG и MEW он написан на асме, а у того же UPX'a на Си.
Поэтому зачастую после сжатия асмового файла размером 3кб UPX'ом  получаем файл в 16кб.

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 08:42 01-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Aspack, по моему,давно уже отстает от лидеров паковки, причем существенно.
а роль играет не только код распаковщика, но и алгоритм сжатия - у MEW это lzma, один из наиболее сильных в настоящее время, вот он и смог сллегка обставить FSG. Pecompact умудряется при использовании lzma-кодека-плагина значительно опережать UPX. Но lzma - медленный кодек, так что тут надо подходить с умом. А что сжимать - вопрос, думаю, уже второй.

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 09:01 01-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ASPack отстаёт потому что солод его не обновляет.
Он все силы направил на аспр.
А насчёт алго сжатия. Всё равно их не так много и юзаются одни и те же.
ПОэтому тут и всплывает вопрос реализации алго в конкретном пакере.
И это уже как раз код распаковщика
Тем не менее для каждой конкретной программы возможны разные варианты лучшего сжатия. Поэтому и пакер надо выбирать сравнивая их друг с другом на конечной проге.

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 09:45 01-12-2004
MoKC0DeR



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
WELLROCK

Цитата:
Здесь играет главную роль код распаковщика.  
У FSG и MEW он написан на асме, а у того же UPX'a на Си.  

А откуда такие данные по UPX ?!
Может я куда-то не туда смотрел(исходники от 1.24 и от 1.25), но "код распаковщика" у UPX на ассемблере.
Поправте если ошибаюсь

Всего записей: 510 | Зарегистр. 31-03-2004 | Отправлено: 10:09 01-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WELLROCK
вот поэтому я давно не юзаю Aspack

Цитата:
возможны разные варианты лучшего сжатия

на текущий момент мой выбор - Pecompact(для файлов >100кб) и FSG,MEW - для мелочи (в т.ч. для моей программы).
PEcompact вообще красавец по настройкам, ему бы малюсенький код распаковщика как опцию приделать и был бы лучшим.

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 10:43 01-12-2004 | Исправлено: vito333, 10:45 01-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoKC0DeR
Да я не совсем то сказал, что хотел =)  
Я имел ввиду packer.cpp, packhead.cpp и т.п.

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 11:09 01-12-2004
Varenik



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
vito333
Только UPX - бесплатный, а PECompact - нет  

----------
Если нравится, считайте, что получилось…

Всего записей: 1767 | Зарегистр. 21-07-2001 | Отправлено: 06:52 02-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На _http://www.wasm.ru/toollist.php?list=8
есть PeCompact 2.40 retail by CollakeSoftware

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 07:25 02-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Varenik
ну, тут не поспоришь
WELLROCK
мы в одном шаге от Варезника

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 16:05 02-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извеняюсь. Я как-то не подумал

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 19:28 02-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WELLROCK
какие релизы свои ты жмешь, если не секрет?

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 20:01 02-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vito333
http://www.rockteam.org
 
 
Добавлено
Я имею ввиду патчи конечно

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 04:38 03-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WELLROCK
а манифесты у тебя не пропадают? я вот пожал свою прогу - тут же сообщают, пропал стиль ХР.
 
Добавлено
хотел автору отписать - не могу сайт увидеть

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 06:56 03-12-2004 | Исправлено: vito333, 07:00 03-12-2004
WELLROCK



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Честно говоря я с манифестами жать не пробовал.
В моих прогах из ресурсов только битмап, иконка ну и сам диалог =)
А сайтвот http://northfox.uw.hu

Всего записей: 728 | Зарегистр. 08-11-2004 | Отправлено: 07:31 03-12-2004
vito333



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WELLROCK
а ты попробуй
а на сайт - не могу, попробую позже с другого компа

Всего записей: 3324 | Зарегистр. 13-05-2002 | Отправлено: 07:34 03-12-2004
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Оптимизация размера программ (EXE)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru