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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Profrager



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

Цитата:
Скажем прикручивать таймер  

давно хочу приделать) но пока не до него  

Цитата:
или избавляться от манипуляций с record.inf?

как EmZADE говорит используй на свой вкус либо ручное, либо автоматическое распределение процентов каждой операции на прогрессбар. С ручным никаких records.inf не требуется

Цитата:
И ещё вопрос - как к твоему скрипту применить систему компонентов (ну когда 2 и более локализаций к игре), что если каждый перевод будет в своем отдельном *.bin файле, как это правильно прописать?

этот вопрос скорее к vint56, K9000, или другим скриптерам

Цитата:
Да я имел ввиду вообще всё это как-то модернизировать

у меня пока идей нет как еще больше автоматизировать процесс или улучшить его. Если будут идеи - готов выслушать
 
Добавлено:
P.S. избавился от багов arc и 7z. В последнем случае, оказывается от перемены мест слагаемых сумма изменяется
Осталось отловить что у TechneS не так

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 11:29 11-06-2010 | Исправлено: Profrager, 11:34 11-06-2010
K9000

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1ne2wo
Наверное, как-то так:

Код:
 
if someComponentSelected then ISUnarcExtract(...)
 

 
Добавлено:
Только вот про record.inf придется забыть, т.к. состав архивов меняется. Или как вариант сделать два ( =( ) record.inf и копировать в зависимости от компонентов

Всего записей: 341 | Зарегистр. 05-05-2010 | Отправлено: 11:45 11-06-2010
Profrager



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

Цитата:
Только вот про record.inf придется забыть, т.к. состав архивов меняется. Или как вариант сделать два ( =( ) record.inf и копировать в зависимости от компонентов

надо будет подумать как это сделать в dll, чтобы в скрипте гемора не было

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 11:49 11-06-2010
1ne2wo



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
K9000, Profrager, спасибо, тогда буду ждать подобной реализации в ISDone.dll v 0.4, т.к. штука необходимая

Всего записей: 133 | Зарегистр. 10-09-2009 | Отправлено: 11:58 11-06-2010
Profrager



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
K9000
такой вот вопрос: в Inno выбор одновременно нескольких компонентов возможен, или только один из нескольких?

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 12:06 11-06-2010
msatmb



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Profrager
Возможен.
 
PS: что-то не работает у меня распаковка arc.... постоянно выбивает кучу ошибок

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 12:13 11-06-2010
Profrager



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

Цитата:
что-то не работает у меня распаковка arc.... постоянно выбивает кучу ошибок

знаем, знаем, уже исправил. Жду еще от TechneS баг-репорт. Потом выпущу 0.3.1 версию.
 
всем
Допишите плиз в скрипт из моего примера, чтобы было на выбор 3 компонента, и в зависимости от них запускался на распаковку один или несколько архивов. Просто чтобы мне понять как оно работает в Inno. А то вроде есть идея

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 12:18 11-06-2010 | Исправлено: Profrager, 12:20 11-06-2010
K9000

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

Код:
 
[Tasks]  
Name: freearc; Description: "FreeArc unpack"  
Name: srep; Description: "Srep unpack"  
Name: precomp; Description: "Precomp unpack"  
Name: sevenzip; Description: "7zip unpack"  
[Code]
...
repeat
       if IsTaskSelected('freearc') then if not ISUnarcExtract  (OveralPct, 0, ExpandConstant('{src}\CODMW2.arc'), ExpandConstant('{app}'),                false,callback, '',   '' ) then begin Error; break; end;  
       if IsTaskSelected('srep') then if not ISSRepExtract   (OveralPct, 0, ExpandConstant('{app}\CODMW2.srep'),ExpandConstant('{app}\CODMW2.pcf'), '', true, callback           ) then begin Error; break; end;  
       if IsTaskSelected('precomp') then if not ISPrecompExtract(OveralPct, 0, ExpandConstant('{app}\CODMW2.pcf'), ExpandConstant('{app}\CODMW2.7z'),      true, callback           ) then begin Error; break; end;  
       if IsTaskSelected('sevenzip') then if not IS7ZipExtract   (OveralPct, 0, ExpandConstant('{app}\CODMW2.7z'),  ExpandConstant('{app}'),                true, callback, ''       ) then begin Error; break; end;  
until true;
...
 

Всего записей: 341 | Зарегистр. 05-05-2010 | Отправлено: 12:52 11-06-2010 | Исправлено: K9000, 12:54 11-06-2010
msatmb



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Что-то у меня и 7z не хочет работать. Сначала говорит что не верно выбран входной файл, а потом плюхает ошибку http://floomby.ru/content/GXKCLem8G0/ и еще парочку таких-же

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 12:57 11-06-2010
TechneS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Такс вот весь код ISDone ничего не менял кроме путей  
Подробнее...
Вот отдельно секция

Код:
StartRecord(ExpandConstant('{src}\records.inf'));
    repeat
       if not ISUnarcExtract  (OveralPct, 0, ExpandConstant('{src}\RepacK\1.RepacK'), ExpandConstant('{app}'),            false,callback, '',   '' ) then begin Error; break; end;
       if not ISSRepExtract   (OveralPct, 0, ExpandConstant('{app}\1.srp'),    ExpandConstant('{app}\1.pcf'),        '',  true, callback           ) then begin Error; break; end;
       if not ISPrecompExtract(OveralPct, 0, ExpandConstant('{app}\1.pcf'),    ExpandConstant('{app}\1.7z'),              true, callback           ) then begin Error; break; end;
       if not IS7ZipExtract   (OveralPct, 0, ExpandConstant('{app}\1.7z'),     ExpandConstant('{app}'),                   true, callback, ''       ) then begin Error; break; end;
    until true; //   ^             ^      ^                      ^                                  ^                 ^    ^              ^     ^
    StopRecord;
 
Получается так я пакую нужные мне файлы 7зип этот архив переименовываю в 1.7зип, потом обрабатываю прекомпом (простым) также переименовываю в 1.pcf, затем обрабатываю срепом меняю имя на 1.srp в скрипте также изменил расширение, и уже потом запаковываю арком меняю имя на 1.RepacK в скрипте тоже это указываю, всё запускаю установка идёт извлечение арк архивов всё норм, идёт обработка среп норм, начинается обработка прекомпа вылетает ошибка я уже писал какая, ок не нажимаю, сразу же захожу в папку куда устанавливается допустим игра проверяю лежит файл 1.pcf проверяю пути в скрипте всё норм, захожу в папку темп там находятся все файлы для извлечения прекомп файлов, вот в принципе и всё

Всего записей: 44 | Зарегистр. 18-04-2010 | Отправлено: 13:06 11-06-2010 | Исправлено: TechneS, 13:12 11-06-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TechneS precomp какой  у тебя стойт если 0.38 он отключен включен 0.40  
Source: Include\precomp04.exe; DestDir: {tmp}; Flags: deleteafterinstall
;Source: Include\precomp038.exe; DestDir: {tmp}; Flags: deleteafterinstall
;Source: Include\zlib1.dll; DestDir: {tmp}; Flags: deleteafterinstall

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 13:14 11-06-2010
Profrager



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

Цитата:
Что-то у меня и 7z не хочет работать. Сначала говорит что не верно выбран входной файл, а потом плюхает ошибку http://floomby.ru/content/GXKCLem8G0/ и еще парочку таких-же

вот с этим я уже давно борюсь, а когда чего-то добавляю, они снова возникают. Буду по мере возможности избавляться.
А раз написано что входной файл не верно задан, значит оно так и есть.
И это у тебя первая распаковка 7z архива в скрипте, т.е. до этого 7zip'ом не распаковывал ничего?
TechneS

Цитата:
обрабатываю прекомпом (простым)

простым это каким?
 
Добавлено:
слушайся vint56'а, он правильно говорит)
 
 
Добавлено:
TechneS
и как раз секцию [Files] не показал в сообщении

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 13:16 11-06-2010 | Исправлено: Profrager, 13:21 11-06-2010
TechneS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
vint56
Я и 0.40 отключал и 0.38 и оба их включал результат один
Profrager  
да я впринципе жал 0.40 и 0.38 пробывал и через Packers Show обрабатывал, и IsPrecomp обрабатывал ну так малоли, и как токо не чередовал ошибка и всё
P.S я же написал что в темп все файлы для извлечения прекомпа на момент установки присутствовали

Всего записей: 44 | Зарегистр. 18-04-2010 | Отправлено: 13:21 11-06-2010 | Исправлено: TechneS, 13:23 11-06-2010
Profrager



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TechneS
тьфу...надо будет по-другому эту ошибку обозвать...типа неверный PCF-формат
В общем у тебя неправильный PCF файл, поддерживаются 0,4 и 0,38 версии, ты скорее всего паковал ISPrecomp.exe
моя dll'ка проверяет заголовок файла, там должна быть аббревиатура "PCF" и в хексах номер версии

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 13:28 11-06-2010 | Исправлено: Profrager, 13:32 11-06-2010
TechneS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Profrager
да нет же я же говорю что ISPrecomp я использовал так ради проверки ну малоли, а покавал я всё в 0.40 и также пробывал в 0.38, те же архивы тестил на 1 версии всё норм но на этой ошибка вылетает

Всего записей: 44 | Зарегистр. 18-04-2010 | Отправлено: 13:33 11-06-2010 | Исправлено: TechneS, 13:34 11-06-2010
Profrager



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TechneS
этот код я не менял со времени 0,1версии...
У тебя тотал коммандер есть? или любой хекс редактор. Просто интересно какие 7 байт в начале твоего PCF-файла

Всего записей: 888 | Зарегистр. 22-05-2010 | Отправлено: 13:37 11-06-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TechneS попробуй вот так  
if not ISSRepExtract   (OveralPct, 0, ExpandConstant('{app}\CODMW2.pcf.srep'),ExpandConstant('{app}\CODMW2.pcf'), '', true, callback           ) then begin Error; break; end;

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 13:37 11-06-2010
TechneS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Profrager
Сейчас ради интереса сделаю чисто распаковку прекомпа проверю, потом отпишусь
vint56
Ок, сейчас попробую

Всего записей: 44 | Зарегистр. 18-04-2010 | Отправлено: 13:38 11-06-2010 | Исправлено: TechneS, 13:39 11-06-2010
msatmb



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

Цитата:
И это у тебя первая распаковка 7z архива в скрипте, т.е. до этого 7zip'ом не распаковывал ничего?  

После этих слов посмотрел внимательнее. Действительно во всем виноваты руки
 
PS: интересно получается. архив arc с одним файлом распаковался, а с кучей мелких не хочет...

Всего записей: 178 | Зарегистр. 15-04-2007 | Отправлено: 13:41 11-06-2010
vint56



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TechneS я за парился у тебя srep нормально работает  
 
 
Добавлено:
TechneS
да я впринципе жал 0.40 и 0.38 пробывал и через Packers Show в Packers Show нету precomp 0.38 как ты делал через батник

Всего записей: 1277 | Зарегистр. 07-10-2008 | Отправлено: 13:41 11-06-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