Inno Setup (создание инсталяционных пакетов). Часть 2

Статус
В этой теме нельзя размещать новые ответы.

SaintPaul

Участник
во-первых, распаковывать нужно теми же экзешниками, что и упаковывал. Далее. В arc.ini, если используешь не оригинальную подменную библиотеку packjpg_dll.dll, нужно отключить обработку прекомпом jpg потоков режимом -t-j . Что еще... Да много чего может быть.
 

deaddima

Новичок
Недавно задавал такой вопрос
Edit, ProgressBar,Label и так далее нужно самому создавать?
И как сделать так чтобы определённый элемент,скажем Edit появлялся на определённой странице:
А суть проблемы такая:
Использовал для скрытия страниц
Код:
WizardForm.OuterNotebook.Hide;
WizardForm.InnerNotebook.Hide;
Когда я создаю лейбл и ставлю родителем скажем WelcomePage то лейбл пропадает.
Что именно я делаю не так?
 

LexBell

Борода
Супер модератор
WizardForm.OuterNotebook.Hide;
скрывает вообще все. Остается голый WizardForm, соответственно, и WelcomePage тоже скрыта, поскольку она тоже нходится на OuterNotebook. Кстати, 2All,
WizardForm.InnerNotebook.Hide;
Эта строчка не нужна, поскольку InnerNotebook так-же находится на OuterNotebook
 

LexBell

Борода
Супер модератор
deaddima, Скачай скрипт Need for Speed™ Undercover - там как раз решение со скрытым OuterNotebook. Ни одной лишней строчки. посмотри и подумай - оно тебе нужно? Вряд-ли тебе это по зубам, мне почему-то кажется. Хотя... Копипаста - тоже сила :)
 
Последнее редактирование:

Adil

Старожил
Доброе утро

Кому не трудно можете дать скрипт как вставлять одно изображения в инсталлятор через botva2+b2p, т.е. что надо прописывать

в секции

var

initialyze wizard, setup и т.д.

А то ничего не понял

Заранее спс
 

shidow

Новичок
nazbek010,
[SOURCE="iss"]var
img: Longint;

function InitializeSetup:boolean;
begin
if not FileExists(ExpandConstant('{tmp}\b2p.dll')) then ExtractTemporaryFile('b2p.dll');
if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
Result:=True;
end;

procedure InitializeWizard;
begin
with WizardForm do begin
InnerNotebook.Hide;
OuterNotebook.Hide;
Bevel.Hide;
end;
img:=ImgLoad(WizardForm.Handle,ExpandConstant('{tmp}\background.png'),0,100,500,149,True,True);
ImgApplyChanges(WizardForm.Handle);
end;

procedure DeinitializeSetup;
begin
gdipShutDown;
end;[/SOURCE]
 
  • Like
Реакции: Adil

Suhov

Новичок
Код:
#ifdef Components
[Types]
Name: full; Description: Full installation; Flags: iscustom

[Components]
Name: Text; Description: {cm:version4}; Types: full;  Flags: fixed;
Name: Text\rus; Description: {cm:version3}; Flags: exclusive;
Name: Text\eng; Description:{cm:version2}; Flags: exclusive;
Name: Sound; Description: "{cm:version5}"; Flags: fixed;  Types: full; 
Name: voice\rus; Description: {cm:version3}; Flags: exclusive;
Name: voice\eng; Description: {cm:version2}; Flags: exclusive; 
#endif
Код:
    Comps1:=0; Comps2:=0; Comps3:=0;
#ifdef Components
    TmpValue:=1;
    if IsComponentSelected('text\rus') then Comps1:=Comps1+TmpValue;     //компонент 1
    TmpValue:=TmpValue*2;
    if IsComponentSelected('text\eng') then Comps1:=Comps1+TmpValue;     //компонент 2
    TmpValue:=TmpValue*2;
    if IsComponentSelected('voice\rus') then Comps1:=Comps1+TmpValue;    //компонент 3
    TmpValue:=TmpValue*2;
    if IsComponentSelected('voice\eng') then Comps1:=Comps1+TmpValue;    //компонент 4
//    .....
#endif
Код:
   repeat
      MyError:=true;
      if not ISDoneInitialize(ExpandConstant('{src}\records.inf'), $F777, Comps1,Comps2,Comps3, PCFVer, false, MainForm.Handle, {#NeedMem}, @ProgressCallback) then break;
      repeat

        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
         repeat
      MyError:=true;
      if not ISDoneInitialize(ExpandConstant('{src}\records.inf'), $F777, Comps1,Comps2,Comps3, PCFVer, false, MainForm.Handle, {#NeedMem}, @ProgressCallback) then break;
      repeat

        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data2.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data3.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data4.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       
        if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;


        if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;

почему при сочетания текста и озвучки архивы неправильно распаковываются?
 

vint56

Ветеран
Проверенный
nazbek010
1 Пример
 
  • Like
Реакции: Adil

Darck

Новичок
if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}'), false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
Так а за чем ты несколько раз прописал одно и тоже? надеюсь ты уже понял!
 
Последнее редактирование:

Suhov

Новичок
Darck,
Код:
 if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data2.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data3.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data4.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       
        if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
у меня так выглядит.. просто скопировал неправильно ><
 

Darck

Новичок
Попробуй так!
Код:
if not ISArcExtract ( 1, 10, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{app}'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
        if not ISArcExtract ( 2, 10, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{app}'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
if not ISArcExtract ( 3, 10, ExpandConstant('{src}\data7.bin'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{app}'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
        if not ISArcExtract ( 4, 10, ExpandConstant('{src}\data8.bin'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{app}'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
 

Suhov

Новичок
Darck, ошибка
зачем было делать ручную расстановку процентов на каждую операцию?
 

Mailchik

Старожил
Проверенный
Suhov, при тестовом прогоне устанавливаются все компоненты. так и должно быть.
 

Suhov

Новичок
Код:
    if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin\rus\*'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
       if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data5.bin\ang\*'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data6.bin\rus\*'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data6.bin\ang\*'), ExpandConstant('{app}'),  false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
как можно сделать чтобы такая распаковка работала?
 

Snoopak96

Старожил
Suhov,
Код:
        if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), 'rus', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), 'ang', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), 'rus', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), 'ang', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
Впрочем это в справке есть.
 

Winst@n

Участник
Проверенный
Suhov,
Ошибся. %))
 
Последнее редактирование:

Suhov

Новичок
Suhov,
Код:
        if not ISArcExtract ( 1, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), 'rus', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 2, 0, ExpandConstant('{src}\data5.bin'), ExpandConstant('{app}'), 'ang', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 3, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), 'rus', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
        if not ISArcExtract ( 4, 0, ExpandConstant('{src}\data6.bin'), ExpandConstant('{app}'), 'ang', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
[STRIKE]Впрочем это в справке есть.[/STRIKE]
 

Snoopak96

Старожил
Suhov,
на ISDone 0.6final, а не той которая на скрине, судя по параметрам в функции точно не последняя.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху