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

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

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49

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

msatmb



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
При создании больших инсталяций в InnoSetup можно значительно уменьшить их размер, воспользовавшись более мощной упаковкой, чем встроенная. Особенностям применения внешних упаковщиков с InnoSetup посвящена данная тема
 
Варианты выбора:
 
RAR: упаковка в общем хуже чем встроенная, но есть куча доп. алгоритмов (тексты, мультимедиа), поэтому может давать выигрыш на некоторых типах данных. Распаковка: только через SFX
 
7-zip: тот же алгоритм упаковки, что и встроенный (lzma), но за счёт доп. алгоритмов bcj2, delta, lzma2, ppmd и большего словаря может обеспечить лучшее сжатие. Для наилучшего сжатия рекомендуется: 64-битная еерсия, 6гб ОЗУ, Ultra7z Optimizer. Распаковка: через SFX или dll от Expeditor
Модуль распаковки архивов 7z 1.01 [18.12.2008] от ExpeditorR
 
FreeArc: тот же базовый алгоритм упаковки (lzma), но наличие множества доп. алгоритмов может обеспечить большее сжатие. Распаковка: через SFX или dll
Модуль распаковки архивов FreeArc [10.07.2009] от Bulat_Ziganshin
 
NanoZip: наилучшее сжатие в редиме -cc (распаковка 1mb/s), оптимальный режим -cO (распаковка 5mb/s). Распаковка: только через SFX
 


Все остальное в родственных темах
 
Inno Setup (создание инсталяционных пакетов)
 
Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - обсуждение того, какими утилитами/способами лучше сжимать, чтобы получить как можно меньший размер инсталятора.
 
FreeArc - бесплатный open-source архиватор для Windows и Linux, сочетающий высокую степень сжатия и большой набор возможностей

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 08:31 11-11-2009 | Исправлено: juvaforza, 20:49 26-04-2011
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vsokol1980 я спрашивал в каком порядке ты запаковал свой архив  
arc+rep+7zip или arc+7zip+rep

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 10:33 16-05-2010
vsokol1980



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
arc+rep+7zip

Всего записей: 9 | Зарегистр. 15-05-2010 | Отправлено: 11:16 16-05-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот почему ошибка в скрипте написано ты используеш 7zip а вскрипте просто zip  
Exec(ExpandConstant('{app}\rep.exe'), '-d -delete nativePC.zip.rep nativePC.zip', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode); просто zip а должно 7zip потому закрывается  
Exec(ExpandConstant('{app}\rep.exe'), '-d -delete nativePC.7zip.rep nativePC.7zip', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode);

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 12:13 16-05-2010 | Исправлено: vint56, 12:24 16-05-2010
vsokol1980



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
пробовал
с другими значениями то же самое
 

Цитата:
WizardForm.StatusLabel.Caption:='Èäåò âîññòîíîâëåíèÿ bin.7z ';
        Exec(ExpandConstant('{app}\rep.exe'), '-d -delete bin.7z.rep bin.7z', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode);
        WizardForm.StatusLabel.Caption:='Ðàñïàêîâêà ôàéëîâ bin.7z';
        app:=ExpandConstant('{app}')+'\7z.exe';
        rep:=ExpandConstant('{app}')+'\bin.7z';
        dest:=ExpandConstant('{app}\');
        Exec(app, 'x "'+ rep + '" -y -o"'+ dest + '"', '', SW_HIDE, ewWaitUntilTerminated, res);
        WizardForm.StatusLabel.Caption:='Èäåò Óäàëåíèå âðåìåíûõ ôàéëîâ ';
        DeleteFile(ExpandConstant('{app}\bin.7z'))
        DeleteFile(ExpandConstant('{app}\7z.exe'))
        DeleteFile(ExpandConstant('{app}\rep.exe'))


Всего записей: 9 | Зарегистр. 15-05-2010 | Отправлено: 12:34 16-05-2010 | Исправлено: vsokol1980, 12:35 16-05-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vsokol1980 http://rghost.ru/1631912  

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 15:40 16-05-2010
vsokol1980



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
большое спасибо
всё распоковывает
остались кое какие мелкие ошибки  
посмотри пожалуйста
http://rghost.ru/1634428/image.png

Всего записей: 9 | Зарегистр. 15-05-2010 | Отправлено: 20:46 16-05-2010
Shegorat



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
2ALL
FreeArcExtract+DiskPromts v.2.5

Список изменений:
* Сделана проверка, распакован ли уже архив (архивы больше не распаковываются дважды/трижды и т.д)
* Исправлены некоторые ошибки
* Изменена строка состояния архивов
* Добавлен скрипт с ISPrecomp
 
Скачать FreeArcExtract+DiskPromts v.2.5

----------
Krinkels.org - создание инсталляционных пакетов.
Как много дел считались невозможными, пока они не были осуществлены.

Всего записей: 695 | Зарегистр. 09-06-2009 | Отправлено: 11:23 19-05-2010
Bulat_Ziganshin

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shegorat
надеюсь, ты использовал свежий unarc.dll из http://freearc.org/download/testing/FreeArc-portable-0.61-alpha-win32.zip ?  он умеет переписывать r/o файлы и поддерживает dispack

Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 11:28 19-05-2010
Shegorat



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Bulat_Ziganshin
Нет, альфу я еще не качал, и поэтому в архиве лежит старая версия unarc.dll. В будущем перезалью архив с новой версией unarc.dll

----------
Krinkels.org - создание инсталляционных пакетов.
Как много дел считались невозможными, пока они не были осуществлены.

Всего записей: 695 | Зарегистр. 09-06-2009 | Отправлено: 11:37 19-05-2010
msatmb



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shegorat
Это только у меня, или как, но создал при помощи ISPrecomp файлик. Он 11гигов весит. запаковываю его Freearc`ом. Использую твой скрипт FreeArcExtract+DiskPromts v.2.5, архив распаковывается а на рекомпрессии быстро моргнет и сразу страница "завершения". Причем pcf-файл удаляется и появляется "рекомпрессионный" файл нулевой длины. Строчки #define IsPrecomp  "90" раскоментировал

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 16:31 19-05-2010 | Исправлено: msatmb, 16:32 19-05-2010
Shegorat



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

Цитата:
Это только у меня, или как, но создал при помощи ISPrecomp файлик. Он 11гигов весит. запаковываю его Freearc`ом. Использую твой скрипт FreeArcExtract+DiskPromts v.2.5, архив распаковывается а на рекомпрессии быстро моргнет и сразу страница "завершения". Причем pcf-файл удаляется и появляется "рекомпрессионный" файл нулевой длины. Строчки #define IsPrecomp  "90" раскоментировал  

Не знаю, у меня все нормально, у vint56 тоже. Попробуй запаковать пакером который лежит в папке ISPrecompFiles. А то что PCF-файл удаляется неудивительно, он удаляется по завершении работы прекомпа.

----------
Krinkels.org - создание инсталляционных пакетов.
Как много дел считались невозможными, пока они не были осуществлены.

Всего записей: 695 | Зарегистр. 09-06-2009 | Отправлено: 17:40 19-05-2010
comd



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Попробовал новый скрипт FreeArcExtract+DiskPromts v.2.5. Баг с зависанием перед распаковкой архивов остался. Хотя и происходить стало реже.
Вот так выглядит это зависание:
   
Всего архивов у меня 51. Окно инсталлятора можно закрыть только через диспетчер задач.

Всего записей: 12 | Зарегистр. 25-04-2007 | Отправлено: 17:41 19-05-2010 | Исправлено: comd, 17:45 19-05-2010
DemonAk



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

Цитата:
Попробовал новый скрипт FreeArcExtract+DiskPromts v.2.5. Баг с зависанием перед распаковкой архивов остался

Да у меня такое же наблюдается изредка, думал что я один такой и что это связано с касперским)).

Всего записей: 316 | Зарегистр. 08-11-2007 | Отправлено: 18:34 19-05-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
msatmb у ISPrecomp были проблемы с большими файлами больше 1 гига  

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 19:58 19-05-2010
msatmb



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vint56
были и остались или были и исправились?

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 21:16 19-05-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
msatmb они остались  

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 14:01 20-05-2010 | Исправлено: vint56, 14:04 20-05-2010
Vo1T



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

Цитата:
... у ISPrecomp были проблемы
vint56, проблемы от precomp.dll ... оригинальной DLL с сайта Шнадера ... весь косяк в том что даже была создана тема на одном закрытом форуме в которой тестировалось на файлах более 2 Гб ... тест закончился удачно - precomp.exe был обновлён, а precomp.dll нет и Шнадер на него забил ... ну а сейчас и на exe-версию ... давно уже небыло обновлений, хотя проблемы с ним всё ещё имеют место быть

Всего записей: 312 | Зарегистр. 20-08-2008 | Отправлено: 17:55 21-05-2010 | Исправлено: Vo1T, 17:56 21-05-2010
Alexander64217



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ подскажите алгоритм для сжатия. а то как то не очень он жмёт файлы. и какой параметр есть чтоб он не добавлял файлы которые не сжимаются в архив? заранее спасибо.

Всего записей: 48 | Зарегистр. 15-04-2010 | Отправлено: 05:27 22-05-2010
Profrager



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Выкладываю несколько наработок в области Inno+Srep+Precomp+Freearc
 
Делал для себя, но вот решил выложить чуть измененный unarc.dll версии 0,666 для InnoSetup, который ищет файлик arc.ini не в "C:\", а в папке винды. Сделано для юзеров, у которых windows находится на диске, отличном от C:, а он сам (диск С:\) отсутствует в системе.
 
unarc.dll
 
for testing
http://rapidshare.com/files/392154189/unarc.zip
или
http://ifolder.ru/17900935
 
Добавлено:
На этом форуме видел скрипт и dll'ку для визуального отображения на прогрессбаре InnoSetup'а распаковки precomp'ом. Но его можно применять, если precomp'ом обрабатываются файлы до основной упаковки данных, да и версия, применяемая там 0.38, что не дает возможности эффективно обрабатывать вложенные ZIPы. Если же архивы созданы с параметрами что-то типа -mprecomp+rep+lzma, как делаю я, то тут возникает проблема при установке этого всего с помощью Inno и unarc.dll в виде черного окошка коммандной строки с выполныющейся там precomp04.exe (или precomp038.exe, не суть). Это не очень приглядно. Да, это окошко можно скрыть, но тогда будет выглядеть как будто установщик повис, что не раз упоминалось в этой и близлежащих по смыслу темах данного форума.
 
По сему, опять же для себя, но выкладываю на всеобщее обозрение, сделал програмулину, которая используется при распаковке вместо штатного precomp04.exe и выводит на экране небольшое окошко с прогрессбаром и оставшимся временем текущей операции восстановления файлов.  
 
Это просто оболочка для precomp04.exe и packjpg_dll.dll, которая извлекает их в текущий каталог, затем запускает precomp04 со всеми параметрами переданными ей самой и отлавливает % выполнения операции, отображая ее на прогрессбаре.
 
added
Сделал чтобы прога хавала файлы от обоих версий: 0,38 и 0,4. Версию выбирает автоматом по входному файлу. Использовать можно ТОЛЬКО для распаковки данных. Все dll'ки находятся внутри, так что не надо таскать zlib1.dll и packjpg_dll.dll рядом, они сами распакуются при запуске и удалятся после завершения процесса.
 
Precomp 0.38/0.4 версия test01
 
http://rapidshare.com/files/392679532/PrecompTEST01.zip  
http://openfile.ru/611748/  
http://rghost.ru/1740828
 
 
Добавлено:
Сделал такой же прогрессбар для srep'а v1.5 . Включил туда автоматическое определение разрядности винды (32/64) и использование srep'а оптимизированного под текущую версию.
 
SRep  версия test02
 
http://rapidshare.com/files/393002755/srepTEST02.zip  
http://openfile.ru/612444/  
http://rghost.ru/1747188
 
 
Добавлено:
Сделал dll аналогичную той, которую написал Vo1t для отображения процесса извлечения precomp'а на прогрессбаре InnoSetup'а. Но с использованием чтения данных с консольных precomp версий 0.38 и 0,4, соответственно с их достоинствами и недостатками. Какую использовать версию precomp'а dll выбирает сама, основываясь на входном pcf-файле.
 
Файлы для репака обрабатывать обычным precomp'ом нужной версии.
 
Пример скрипта прилагается.
 
P.S. tnx to Vo1t
 
added
Исправил багу с пробелами в пути к входному и выходному файлу.
 
ISPrecomp2 версия test02  
 
http://rghost.ru/1758549
http://rapidshare.com/files/393502860/ISPrecomp2TEST02.zip

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 23:18 27-05-2010 | Исправлено: Profrager, 19:01 31-05-2010
Profrager



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

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 23:28 29-05-2010 | Исправлено: Profrager, 23:29 29-05-2010
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup плюс внешние упаковщики


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru