Ru-Board.club
← Вернуться в раздел «Программы»

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

Автор: spider91
Дата сообщения: 15.04.2009 12:48
есть два вопроса:

1. как зделать чтоб во время процедур и установки DirectX и других програм окно инсталяора можно было двигать?

2.как растянуть картинку вверху (WizardSmallImageFile) чтоб она была во всю длину инсталятора и как поменять цвет текста (который должен быть поверх той самой картинки) на белый?

помогите пожалуйста хоть кто нибудь.
Автор: AleSasha
Дата сообщения: 15.04.2009 13:21
spider91
Цитата:
как растянуть картинку вверху (WizardSmallImageFile) чтоб она была во всю длину инсталятора

WizardForm.WizardSmallBitmapImage.Left:=0;
WizardForm.WizardSmallBitmapImage.Width:=WizardForm.ClientWidth;
Автор: Qarma
Дата сообщения: 15.04.2009 13:28
spider91

Цитата:
2.как растянуть картинку вверху (WizardSmallImageFile) чтоб она была во всю длину инсталятора и как поменять цвет текста (который должен быть поверх той самой картинки) на белый?

Вродк бы так...
[more]WizardForm.WizardSmallBitmapImage.Left:=0;
WizardForm.WizardSmallBitmapImage.Width:=497;
WizardForm.WizardSmallBitmapImage.Height:=58;
WizardForm.PageDescriptionLabel.Width:=300;
WizardForm.PageNameLabel.Width:=300;
end ;
begin
PageNameLabel := TLabel.Create(WizardForm);
with PageNameLabel do
begin
Left := ScaleX(45);
Top := ScaleY(10);
Width := ScaleX(300);
Height := ScaleY(14);
AutoSize := False;
WordWrap := True;
Font.Color := clwhite;
Font.Style := [fsBold];
Transparent := True;
Parent := WizardForm.MainPanel;
end;

PageDescriptionLabel := TLabel.Create(WizardForm);
with PageDescriptionLabel do
begin
Left := ScaleX(45);
Top := ScaleY(25);
Width := ScaleX(475);
Height := ScaleY(30);
AutoSize := False;
WordWrap := True;
Font.Color := clwhite;
Transparent := True;
Parent := WizardForm.MainPanel;
end;

with WizardForm do
begin
PageNameLabel.Hide;
PageDescriptionLabel.Hide;
with MainPanel do
begin
with WizardSmallBitmapImage do
begin
Left := ScaleX(0);
Top := ScaleY(0);
Width := Mainpanel.Width;
Height := MainPanel.Height;
end;[/more]
Автор: spider91
Дата сообщения: 15.04.2009 13:43
AleSasha


спасиьо но получилось не очень

http://s60.radikal.ru/i168/0904/c8/e003addfa3f7.jpg

как убрать белые поля на картинке?

Добавлено:
Qarma


а какое значение присвоить PageNameLabel?

пишет unknown identifier PageNameLabel
Автор: Don_Juan
Дата сообщения: 15.04.2009 13:58
spider91

Вот, держи [more=код..][code]

var PageNameLabel, PageDescriptionLabel: TLabel;

procedure InitializeWizard();
begin
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
PageNameLabel:= TLabel.Create( WizardForm );
PageNameLabel.Left:= WizardForm.PageNameLabel.Left;
PageNameLabel.Top:= WizardForm.PageNameLabel.Top;
PageNameLabel.Transparent:= True;
PageNameLabel.Font.Style:= [fsBold];
PageNameLabel.Font.Color:= clWhite;
PageNameLabel.Parent:= WizardForm.MainPanel;
PageDescriptionLabel:= TLabel.Create( WizardForm );
PageDescriptionLabel.Left:= WizardForm.PageDescriptionLabel.Left;
PageDescriptionLabel.Top:= WizardForm.PageDescriptionLabel.Top;
PageDescriptionLabel.Transparent:= True;
PageDescriptionLabel.Font.Color:= clWhite;
PageDescriptionLabel.Parent:= WizardForm.MainPanel;
WizardForm.WizardSmallBitmapImage.Left:= ScaleX(0);
WizardForm.WizardSmallBitmapImage.Width:=WizardForm.ClientWidth;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
PageNameLabel.Caption:= WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption:= WizardForm.PageDescriptionLabel.Caption;
end;[/more]
Автор: spider91
Дата сообщения: 15.04.2009 14:05
Don_Juan
большое спасибо. теперь все хорошо отображается

Добавлено:
а как боротся с неподвижностью во время процедур и установки кодеков?
Автор: Qarma
Дата сообщения: 15.04.2009 14:19
Просто возьму и выложу свой скрипт.....

[more]
[Setup]
AppName=Lost Planet Colonies
AppVerName=Lost Planet Colonies
DefaultDirName=D:\Games\Lost Planet Colonies
OutputBaseFilename=Setup
Compression=lzma/ultra64
SolidCompression=yes
DiskSpanning=true
DiskSliceSize=1100000000
InternalCompressLevel=ultra64
OutputDir=D:\test\lp_ce
WizardImageFile=D:\test\lp.bmp
WizardSmallImageFile=D:\test\lp_small.bmp
DisableProgramGroupPage=true
DefaultGroupName=Lost Planet Colonies
VersionInfoVersion=1.0.0.0
DirExistsWarning=no
DisableReadyPage=true
AppVersion=1.0.0.0
UninstallDisplayName=Lost Planet Colonies


[Languages]
Name: rus; MessagesFile: compiler:\Languages\Russian.isl


[LangOptions]
WelcomeFontSize=10

[Run]
Filename: "{app}\ZZPack1.exe"; WorkingDir: "{app}\nativePC\ZZPack1"; Parameters: "-x -y -s2 -d."; StatusMsg: "Идет распаковка данных, подождите пожалуйста..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack1.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack1_2.exe"; WorkingDir: "{app}\nativePC\ZZPack1"; Parameters: "-x -y -s2 -d."; StatusMsg: "Идет распаковка данных, подождите пожалуйста..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack1_2.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack2.exe"; WorkingDir: "{app}\nativePC\ZZPack2"; Parameters: "-x -y -s2 -d."; StatusMsg: "Идет распаковка данных, подождите пожалуйста..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack2.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack2_2.exe"; WorkingDir: "{app}\nativePC\ZZPack2"; Parameters: "-x -y -s2 -d."; StatusMsg: "Идет распаковка данных, подождите пожалуйста..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack2.exe"; Flags: runhidden runasoriginaluser

[Icons]
Name: "{group}\Lost Planet Colonies"; Filename: "{app}\LPCLauncher.exe"; WorkingDir: "{app}";

Name: "{group}\Удалить игру"; Filename: "{uninstallexe}";
Name: "{userdesktop}\Lost Planet Colonies"; Filename: "{app}\LPCLauncher.exe"; WorkingDir: "{app}";

[Files]
Source: "D:\Games\Lost Planet Colonies\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs
Source: "D:\test\NOCOMP\*"; DestDir: "{app}"; Flags: nocompression
Source:"D:\test\logo.bmp";DestDir:{tmp};Flags: dontcopy nocompression


[Code]
//////////////
var
PageNameLabel, PageDescriptionLabel: TLabel;
DesktopIcon: TCheckBox;
LogoImage:TBitmapImage;
LogoPanel: TPanel;
LogoLabel: TLabel;
const
NeedSize = 7760;

var
FreeMB, TotalMB: Cardinal;

NeedSpaceLabel, FreeSpaceLabel: TLabel;
ExtractFile:TNewStaticText;

/////////

function MakeDesktopIcon: Boolean;
begin
Result:=DesktopIcon.Checked;
end;

procedure GetFreeSpaceCaption(Sender: TObject);
var
Path: String;

begin
Path := ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);

if FreeMB > 1024 then
FreeSpaceLabel.Caption := 'Доступно место на диске: ' + FloatToStr(round(FreeMB/1024*100)/100) + ' GB'
else
FreeSpaceLabel.Caption := 'Доступно место на диске: ' + IntToStr(FreeMB)+ ' MB';

if FreeMB < NeedSize then
WizardForm.NextButton.Enabled := false
else
WizardForm.NextButton.Enabled := true;
end;


//////////
procedure LogoLabelOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://kirovmedia.ru/forum', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
type
TProc=procedure(HandleW, msg, idEvent, TimeSys: LongWord);
var
TimerID: LongWord;
pfunc: LongWord;
Label1:tlabel;


procedure InitializeWizard();

var
WLabel1, WLabel2: TLabel;
FLabel1, FLabel2: TLabel;
begin
DesktopIcon := TCheckBox.Create(WizardForm);
DesktopIcon.Parent := WizardForm.SelectDirPage;
DesktopIcon.Caption := 'Добавить ярлык на рабочий стол';
DesktopIcon.Left := ScaleX(0);
DesktopIcon.Top := ScaleY(WizardForm.DirEdit.Top + 35);
DesktopIcon.Width := ScaleX(400);
DesktopIcon.Height := ScaleY(15);
DesktopIcon.TabOrder := 0;
DesktopIcon.Checked := True;



////////////
FLabel2 :=TLabel.Create(WizardForm);
FLabel2.Top := ScaleY(76);
FLabel2.Left := ScaleX(176);
FLabel2.Width := ScaleX(301);
FLabel2.Height := ScaleY(53);
FLabel2.AutoSize := False;
FLabel2.WordWrap := True;
FLabel2.Font.Color:= clblack;
FLabel2.ShowAccelChar := False;
FLabel2.Caption := 'Программа установлена на Ваш компьютер.' #13#13
'Нажмите «Завершить», чтобы выйти из программы установки.';
FLabel2.Transparent := True;
FLabel2.Parent := WizardForm.FinishedPage



WizardForm.WelcomeLabel1.Hide;
WizardForm.WelcomeLabel2.Hide;
WizardForm.WizardBitmapImage.Width := WizardForm.Width;
WizardForm.WizardBitmapImage.Height := WizardForm.Height;

WLabel1 := TLabel.Create(WizardForm);
WLabel1.Left := ScaleX(176);
WLabel1.Top := ScaleY(16);
WLabel1.Width := ScaleX(301);
WLabel1.Height := ScaleY(54);
WLabel1.AutoSize := False;
WLabel1.WordWrap := True;
WLabel1.Font.Size := 12;
WLabel1.Font.Style := [fsBold];
WLabel1.Font.Color:= clblack;
WLabel1.ShowAccelChar := False;
WLabel1.Caption := WizardForm.WelcomeLabel1.Caption;
WLabel1.Transparent := True;
WLabel1.Parent := WizardForm.WelcomePage;

WLabel2:=TLabel.Create(WizardForm);
WLabel2.Top := ScaleY(76);
WLabel2.Left := ScaleX(176);
WLabel2.Width := ScaleX(301);
WLabel2.Height := ScaleY(234);
WLabel2.AutoSize := False;
WLabel2.WordWrap := True;
WLabel2.Font.Color:= clblack;
WLabel2.ShowAccelChar := False;
WLabel2.Caption := WizardForm.WelcomeLabel2.Caption;
WLabel2.Transparent := True;
WLabel2.Parent := WizardForm.WelcomePage;


WizardForm.WizardBitmapImage2.Width := WizardForm.Width;
WizardForm.WizardBitmapImage2.Height := WizardForm.Height;

FLabel1 := TLabel.Create(WizardForm);
FLabel1.Left := ScaleX(176);
FLabel1.Top := ScaleY(16);
FLabel1.Width := ScaleX(301);
FLabel1.Height := ScaleY(54);
FLabel1.AutoSize := False;
FLabel1.WordWrap := True;
FLabel1.Font.Size := 12;
FLabel1.Font.Style := [fsBold];
FLabel1.Font.Color:= clblack;
FLabel1.ShowAccelChar := False;
FLabel1.Caption := WizardForm.FinishedHeadingLabel.Caption;
FLabel1.Transparent := True;
FLabel1.Parent := WizardForm.FinishedPage;


begin
WizardForm.WelcomeLabel1.Hide;
WizardForm.WelcomeLabel2.Hide;
WizardForm.FinishedHeadingLabel.Hide;
WizardForm.FinishedLabel.Hide;
WizardForm.WizardBitmapImage.Width := WizardForm.Width;
WizardForm.WizardBitmapImage.Height := WizardForm.Height;

WLabel1 := TLabel.Create(WizardForm);
WLabel1.Left := ScaleX(176);
WLabel1.Top := ScaleY(16);
WLabel1.Width := ScaleX(301);
WLabel1.Height := ScaleY(100);
WLabel1.AutoSize := False;
WLabel1.WordWrap := True;
WLabel1.Font.Size := 12;
WLabel1.Font.Style := [fsBold];
WLabel1.Font.Color:= clblack;
WLabel1.ShowAccelChar := False;
WLabel1.Caption := WizardForm.WelcomeLabel1.Caption;
WLabel1.Transparent := True;
WLabel1.Parent := WizardForm.WelcomePage;

WLabel2 :=TLabel.Create(WizardForm);
WLabel2.Top := ScaleY(76);
WLabel2.Left := ScaleX(176);
WLabel2.Width := ScaleX(301);
WLabel2.Height := ScaleY(234);
WLabel2.AutoSize := False;
WLabel2.WordWrap := True;
WLabel2.Font.Color:= clblack;
WLabel2.ShowAccelChar := False;
WLabel2.Caption := WizardForm.WelcomeLabel2.Caption;
WLabel2.Transparent := True;
WLabel2.Parent := WizardForm.WelcomePage;

WizardForm.WizardBitmapImage2.Width := WizardForm.Width;
WizardForm.WizardBitmapImage2.Height := WizardForm.Height;

FLabel1 := TLabel.Create(WizardForm);
FLabel1.Left := ScaleX(176);
FLabel1.Top := ScaleY(16);
FLabel1.Width := ScaleX(301);
FLabel1.Height := ScaleY(54);
FLabel1.AutoSize := False;
FLabel1.WordWrap := True;
FLabel1.Font.Size := 12;
FLabel1.Font.Style := [fsBold];
FLabel1.Font.Color:= clblack;
FLabel1.ShowAccelChar := False;
FLabel1.Caption := WizardForm.FinishedHeadingLabel.Caption;
FLabel1.Transparent := True;
FLabel1.Parent := WizardForm.FinishedPage;

FLabel2 :=TLabel.Create(WizardForm);
FLabel2.Top := ScaleY(76);
FLabel2.Left := ScaleX(176);
FLabel2.Width := ScaleX(301);
FLabel2.Height := ScaleY(77);
FLabel2.AutoSize := False;
FLabel2.WordWrap := True;
FLabel2.Font.Color:= clblack;
FLabel2.ShowAccelChar := False;
FLabel2.Caption := 'Программа установлена на Ваш компьютер.' #13#13
'Нажмите «Завершить», чтобы выйти из программы установки.';
FLabel2.Transparent := True;
FLabel2.Parent := WizardForm.FinishedPage;
end;
//////////


////////
begin

WizardForm.DiskSpaceLabel.Hide;
NeedSpaceLabel := TLabel.Create(WizardForm);
with NeedSpaceLabel do

begin
Parent := WizardForm.SelectDirPage;
Left := ScaleX(0);
Top := ScaleY(198);
Width := ScaleX(209);
Height := ScaleY(13);



Caption := 'Требуется место на диске: 7,57 GB' ;
end;
////////////
begin
begin
WizardForm.WizardSmallBitmapImage.Left:=0;
WizardForm.WizardSmallBitmapImage.Width:=497;
WizardForm.WizardSmallBitmapImage.Height:=58;
WizardForm.PageDescriptionLabel.Width:=300;
WizardForm.PageNameLabel.Width:=300;
end ;
begin
PageNameLabel := TLabel.Create(WizardForm);
with PageNameLabel do
begin
Left := ScaleX(45);
Top := ScaleY(10);
Width := ScaleX(300);
Height := ScaleY(14);
AutoSize := False;
WordWrap := True;
Font.Color := clwhite;
Font.Style := [fsBold];
Transparent := True;
Parent := WizardForm.MainPanel;
end;

PageDescriptionLabel := TLabel.Create(WizardForm);
with PageDescriptionLabel do
begin
Left := ScaleX(45);
Top := ScaleY(25);
Width := ScaleX(475);
Height := ScaleY(30);
AutoSize := False;
WordWrap := True;
Font.Color := clwhite;
Transparent := True;
Parent := WizardForm.MainPanel;
end;

with WizardForm do
begin
PageNameLabel.Hide;
PageDescriptionLabel.Hide;
with MainPanel do
begin
with WizardSmallBitmapImage do
begin
Left := ScaleX(0);
Top := ScaleY(0);
Width := Mainpanel.Width;
Height := MainPanel.Height;
end;
end;
end;
end;
end;

////////////IntToStr(NeedSize) + ' GB'
FreeSpaceLabel := TLabel.Create(WizardForm);
with FreeSpaceLabel do
begin
Parent := WizardForm.SelectDirPage;
Left := ScaleX(0);
Top := ScaleY(216);
Width := ScaleX(209);
Height := ScaleY(13);
end;




WizardForm.DirEdit.OnChange := @GetFreeSpaceCaption;
WizardForm.DirEdit.Text := WizardForm.DirEdit.Text + #0;
end;

/////////////////
begin
LogoPanel := TPanel.Create(WizardForm);
with LogoPanel do
begin
Parent := WizardForm;
Left := ScaleX(8);
Top := ScaleY(327);
Width := ScaleX(120);
Height := ScaleY(28);
BevelOuter := bvNone;
end;

LogoImage := TBitmapImage.Create(WizardForm);
with LogoImage do
begin
Parent := LogoPanel;
Left := ScaleX(0);
Top := ScaleY(0);
AutoSize:=true;
ReplaceColor:=clFuchsia;
ReplaceWithColor:=clBtnFace;
ExtractTemporaryFile('logo.bmp');
Bitmap.LoadFromFile(ExpandConstant('{tmp}\logo.bmp'));
end;

LogoLabel := TLabel.Create(WizardForm);
with LogoLabel do
begin
Parent := LogoPanel;
Width := LogoPanel.Width;
Height := LogoPanel.Height;
Transparent:=True;
Cursor := crHand;
OnClick:=@LogoLabelOnClick;
end;
end;
end;



procedure CurPageChanged(CurPageID: Integer);

begin

PageNameLabel.Caption := WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption := WizardForm.PageDescriptionLabel.Caption;

if CurPageID = wpSelectDir

then begin
WizardForm.NextButton.Caption:='Установить';
if FreeMB < NeedSize
then WizardForm.NextButton.Enabled:=False;

end;
end;

[/more]
Автор: spider91
Дата сообщения: 15.04.2009 15:04
Qarma

а там есть чтото связаное с моим вопросом?
если да то я не понял
Автор: Qarma
Дата сообщения: 15.04.2009 15:08
spider91
Да, там верхняя и картинка которая была сбоку - растянуты
Цвет надписей там тоже поменять можно
Автор: Yoldosh
Дата сообщения: 15.04.2009 15:30
накладиваю текстуру на кнопок инсталятора но в некторих кнопках текстури нету можете помочь чтобы в кнопках отмеченних в красном была видна текстура
Автор: DeKaNszn
Дата сообщения: 15.04.2009 15:50
Yoldosh

вид этих кнопок можно изменить только изменив визуальный стиль ОС
Автор: Qarma
Дата сообщения: 15.04.2009 16:01
У меня возникла проблема со своим же скриптом.....при начале установки инсталлер просто повисает, якобы создавая темповую дирректорию....в ней логотип, думаю проблема в нём, если да, то как исправить это??
Автор: Yoldosh
Дата сообщения: 15.04.2009 16:02
DeKaNszn
Может есть какой нибудь другой способ
Автор: doombuster
Дата сообщения: 15.04.2009 16:03
Qarma
Логотип в секции [Files] поставить первым
И флаг - solidbreak
Автор: Qarma
Дата сообщения: 15.04.2009 16:05
doombuster


Цитата:
Qarma
Логотип в секции [Files] поставить первым

Спасибо, уже догадался =)
Автор: doombuster
Дата сообщения: 15.04.2009 16:29
Yoldosh
Есть только одно решение - забубенить свое оформление с помощью ISSkin (http://isskin.codejock.com/) Но это уже совсем другой уровень знаний. И с первого раза не разберёшся. Ищи по форуму, как это можно сделать. Сложно, но возможно. А лучше не забивай пока голову, шлифуй обычные скрипты
Автор: DeKaNszn
Дата сообщения: 15.04.2009 16:59
Yoldosh

попробуй ISSkin
Сложность будет только в создании стиля(но и там достаточно несложно)
Автор: Qarma
Дата сообщения: 15.04.2009 17:00
Как сделать чтобы архивы распаковывались по очереди, тоесть распаковывается сначала один архив, потом удаляется, потом второй так же и тд
Код:

[more][Run]
Filename: "{app}\ZZPack1.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack1.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack1_2.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack1_2.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack2.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack2.exe"; Flags: runhidden runasoriginaluser
Filename: "{app}\ZZPack2_2.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q ZZPack2_2.exe"; Flags: runhidden runasoriginaluser
[/more]
Автор: DeKaNszn
Дата сообщения: 15.04.2009 17:04
Qarma

http://forum.ru-board.com/topic.cgi?forum=5&topic=29117&start=1120#21

Добавлено:

Цитата:
Как сделать чтобы архивы распаковывались по очереди, тоесть распаковывается сначала один архив, потом удаляется, потом второй так же и тд


написать bat файл
и его запускать
Автор: Qarma
Дата сообщения: 15.04.2009 17:08

Цитата:
написать bat файл
и его запускать

Не силён в батниках, что он должен содержать?

Добавлено:
И как его запустить в инно?
Автор: msatmb
Дата сообщения: 15.04.2009 17:18
Qarma
В шапке есть примеры вот один из них
[more=BatRun]
[Files]
Source: compiler:InnoCallback.dll; Flags: dontcopy
Source: test.bat; DestDir: {tmp}; AfterInstall: Unpack(); Flags: ignoreversion

[Code]
type
TProc = procedure(HandleW, msg, idEvent, TimeSys: LongWord);

var
TimerID: LongWord;

function WrapTimerProc(callback:TProc; paramcount:integer):longword; external 'wrapcallback@files:innocallback.dll stdcall';
function SetTimer(hWnd: LongWord; nIDEvent, uElapse: LongWord; lpTimerFunc: LongWord): LongWord; external 'SetTimer@user32.dll stdcall';
function KillTimer(hWnd: LongWord; nIDEvent: LongWord): LongWord; external 'KillTimer@user32.dll stdcall';

procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
begin
with WizardForm.ProgressGauge do
Position:= (Position + 1) mod Max;
end;

procedure Unpack();
var
ResultCode: Integer; pfunc: LongWord;
begin
WizardForm.ProgressGauge.Position:= 0;
WizardForm.ProgressGauge.Max:= 100;

pfunc:= WrapTimerProc(@OnTimer, 4);
TimerID:= SetTimer(0, 0, 50, pfunc);
Exec(ExpandConstant('{tmp}\test.bat'), '', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
end;

procedure DeinitializeSetup();
begin
KillTimer(0, TimerID);
end;
[/more]
Теперь осталось в test.bat прописать все то что ты хочешь сделать
Автор: Qarma
Дата сообщения: 15.04.2009 17:20
msatmb
А что прописать нужно? Я же написал выше ^^, что в батниках нечего не понимаю.

Добавлено:
Помогите, срочно надо сделать инсталлер игры
Автор: doombuster
Дата сообщения: 15.04.2009 17:56
Qarma
А зачем такой огород? Архивы у тебя наверное сжаты по самое немогу) Вот и не пакуй их в инно, а просто дай команду на распаковку из {src}
[Run]
Filename: {src}\ZZPack1.exe; WorkingDir: {src}; Parameters: Parameters: "-y -o""{app}"""; StatusMsg: Установка чего-то; Flags: waituntilterminated

Насчет флага затрудняюсь сказать.

Вроде если фриарком паковать, а потом распаковывать, то архивам можно задавать любое расширение (bin, exe, и т.д.)и арк его распакует, чтоб обычному юзеру и в голову не пришло, что это просто архив) Незнаю с 7зипом такое прокатывает, или нет.

ПОДРЕДАКТИРОВАЛ)))
Автор: Qarma
Дата сообщения: 15.04.2009 18:34
doombuster
У меня инсталлятор разбит на 2 двд, так что данный участок скрипта не прокатит....



Добавлено:
Если можно решить ситуацию батником....помогите

Добавлено:
Вот скрипт репака cdmen'а от игры FEAR 2 [more][Setup]
AppName=F.E.A.R. 2 - Project Origin
AppVerName=F.E.A.R. 2 - Project Origin v1.0 R-E
DefaultDirName=C:\Games\FEAR 2 Project Origin
DefaultGroupName=F.E.A.R. 2 - Project Origin
Compression=lzma/ultra64
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=3
DiskSliceSize=1560000000
ExtraDiskSpaceRequired=12314196992
RestartIfNeededByRun=no
WizardImageFile=compiler:WizardImage1.bmp
WizardSmallImageFile=compiler:WizardImage3.bmp
SetupIconFile=C:\INNO\Output\autorun.ico

[Components]
Name: "rus"; Description: "&#208;&#243;&#241;&#241;&#234;&#224;&#255; &#226;&#229;&#240;&#241;&#232;&#255;"; Flags: exclusive
Name: "eng"; Description: "English version"; Flags: exclusive

[Types]
Name: "custom"; Description: "&#194;&#251;&#225;&#238;&#240;&#238;&#247;&#237;&#224;&#255; &#243;&#241;&#242;&#224;&#237;&#238;&#226;&#234;&#224;"; Flags: iscustom

[Files]
Source: "D:\SOURCE\TMP\*"; DestDir: "{tmp}"; Flags: dontcopy
Source: "D:\SOURCE\MAIN\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs sortfilesbyextension
Source: "D:\SOURCE\NOCOMP\*"; DestDir: "{app}"; Flags: ignoreversion createallsubdirs recursesubdirs nocompression

[Languages]
Name: "ru"; MessagesFile: "compiler:Languages\Games.isl"

[LangOptions]
WelcomeFontSize=10

[Icons]
Name: "{group}\F.E.A.R. 2 Project Origin"; Filename: "{app}\FEAR2.exe"; WorkingDir: "{app}";
Name: "{group}\F.E.A.R. 2 Project Origin - Safe Mode"; Filename: "{app}\FEAR2.exe"; Parameters: "-safemode"; WorkingDir: "{app}";
Name: "{group}\View ReadMe file"; Filename: "{app}\Readme.txt";
Name: "{group}\Uninstall Game"; Filename: "{uninstallexe}";
Name: "{userdesktop}\F.E.A.R. 2"; Filename: "{app}\FEAR2.exe"; WorkingDir: "{app}"; Tasks: desktopicon

[Registry]
Root: HKCU; Subkey: "SOFTWARE\Monolith Productions"; Flags: uninsdeletekeyifempty
Root: HKCU; Subkey: "SOFTWARE\Monolith Productions\FEAR2"; Flags: uninsdeletekey
Components: rus; Root: HKCU; Subkey: "SOFTWARE\Monolith Productions\FEAR2\1.00.0000"; ValueType: string; ValueName: "LANGUAGE"; ValueData: "ru"; Flags: uninsdeletekey
Components: eng; Root: HKCU; Subkey: "SOFTWARE\Monolith Productions\FEAR2\1.00.0000"; ValueType: string; ValueName: "LANGUAGE"; ValueData: "en"; Flags: uninsdeletekey
Root: HKLM; Subkey: "SOFTWARE\Monolith Productions, Inc."; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Monolith Productions\F.E.A.R. 2 Project Origin"; Flags: uninsdeletekey
Root: HKLM; Subkey: "SOFTWARE\Monolith Productions\F.E.A.R. 2 Project Origin\1.00.0000"; Flags: uninsdeletekey
Root: HKLM; Subkey: "SOFTWARE\FEAR2Game"; ValueType: string; ValueName: "AppPath"; ValueData: "{app}"; Flags: uninsdeletekey

[Run]
Filename: "{app}\GameDataSP1.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q GameDataSP1.exe"; Flags: runhidden runasoriginaluser

Filename: "{app}\GameDataSP2.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#228;&#224;&#237;&#237;&#251;&#245;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q GameDataSP2.exe"; Flags: runhidden runasoriginaluser

Filename: "{app}\GameSounds.exe"; WorkingDir: "{app}"; Parameters: "-x -y -s2 -d."; StatusMsg: "&#200;&#228;&#229;&#242; &#240;&#224;&#241;&#239;&#224;&#234;&#238;&#226;&#234;&#224; &#224;&#243;&#228;&#232;&#238;&#244;&#224;&#233;&#235;&#238;&#226;, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q GameSounds.exe"; Flags: runhidden runasoriginaluser



Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer01.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 3% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer01.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer01.Arch01"" -r ""Layer01.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 6% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer01.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer02.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 9% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer02.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer02.Arch01"" -r ""Layer02.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 12% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer02.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer03.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 15% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer03.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer03.Arch01"" -r ""Layer03.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 18% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer03.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer04.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 21% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer04.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer04.Arch01"" -r ""Layer04.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 24% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer04.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer05.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 27% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer05.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer05.Arch01"" -r ""Layer05.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 30% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer05.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer06.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 33% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer06.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer06.Arch01"" -r ""Layer06.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 36% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer06.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer07.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 39% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer07.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer07.Arch01"" -r ""Layer07.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 42% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer07.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer08.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 45% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer08.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer08.Arch01"" -r ""Layer08.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 48% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer08.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer09.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 51% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer09.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer09.Arch01"" -r ""Layer09.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 54% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer09.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer10.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 57% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer10.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer10.Arch01"" -r ""Layer10.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 60% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer10.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer11.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 63% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer11.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer11.Arch01"" -r ""Layer11.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 66% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer11.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer12.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 69% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer12.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer12.Arch01"" -r ""Layer12.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 71% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer12.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer13.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 75% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer13.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer13.Arch01"" -r ""Layer13.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 80% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer13.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer14.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 85% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer14.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer14.Arch01"" -r ""Layer14.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 90% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer14.pcf"; Flags: runhidden runasoriginaluser
Filename: "{app}\rep.exe"; WorkingDir: "{app}"; Parameters: "Layer15.pcf.rep"; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 95% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer15.pcf.rep"; Flags: runminimized runasoriginaluser
Filename: "{app}\precomp.exe"; WorkingDir: "{app}"; Parameters: "-o""Layer15.Arch01"" -r ""Layer15.pcf"""; StatusMsg: "&#194;&#238;&#241;&#241;&#242;&#224;&#237;&#224;&#226;&#235;&#232;&#226;&#224;&#254;&#242;&#241;&#255; &#232;&#227;&#240;&#238;&#226;&#251;&#229; &#224;&#240;&#245;&#232;&#226;&#251;, 99% &#226;&#251;&#239;&#238;&#235;&#237;&#229;&#237;&#238;..."; Flags: runminimized runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C del /F /Q Layer15.pcf rep.exe msvcr80.dll packjpg_dll.dll zlib1.dll precomp.exe"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\fx\interface\video\monotitle.vib game\materials\_global\cinematics\titles\monotitles.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\fx\interface\video\potitle.vib game\materials\_global\cinematics\titles\potitles.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\fx\interface\video\wbtitle.vib game\materials\_global\cinematics\titles\wbtitles.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\fx\interface\video\monotitle.vib game\interface\menu\teaser_standby.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\360legalsplash.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\credits.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\demoend.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\legal_360_nonus.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\legal_pc_nonus.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\legalsplashnonus.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\lobby.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\interface\videos\summary.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\wbglogo2.vib game\interface\videos\wbglogo.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\video\e3\demo_introtitles.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\esrb.vib game\video\e3\esrb_po_legal.vib"; Flags: runhidden runasoriginaluser
Filename: "cmd.exe"; WorkingDir: "{app}"; Parameters: "/C copy /b game\interface\videos\legalsplash.vib game\video\e3\interval00.vib"; Flags: runhidden runasoriginaluser
Filename: "{src}\Redist\vcredist_x86.exe"; WorkingDir: "{src}\Redist"; Parameters: "/Q"; Check: not IsWin64; StatusMsg: "&#211;&#241;&#242;&#224;&#237;&#238;&#226;&#234;&#224; VCPP Redistributable, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;...";
Filename: "{src}\Redist\DirectX\dxsetup.exe"; Parameters: "/silent"; WorkingDir: "{src}\Redist\DirectX"; StatusMsg: "&#206;&#225;&#237;&#238;&#226;&#235;&#229;&#237;&#232;&#229; &#234;&#238;&#236;&#239;&#238;&#237;&#229;&#237;&#242;&#238;&#226; DirectX, &#239;&#238;&#228;&#238;&#230;&#228;&#232;&#242;&#229; &#239;&#238;&#230;&#224;&#235;&#243;&#233;&#241;&#242;&#224;...";

[UninstallDelete]
Type: filesandordirs; Name: "{app}"

[Tasks]
Name: "desktopicon"; Description: "&#209;&#238;&#231;&#228;&#224;&#242;&#252; &#255;&#240;&#235;&#251;&#234; &#237;&#224; &#240;&#224;&#225;&#238;&#247;&#229;&#236; &#241;&#242;&#238;&#235;&#229;";

[Code]
const
BACKGROUND=6;
TIMER=16;

const SmallWidth = 238;

function isxbb_AddImage(Image: PChar; Flags: Cardinal): Integer;
external 'isxbb_AddImage@files:isxbb.dll stdcall';

function isxbb_Init(hWnd: Integer): Integer;
external 'isxbb_Init@files:isxbb.dll stdcall';

function isxbb_StartTimer(Seconds: Integer; Flags: Cardinal): Integer;
external 'isxbb_StartTimer@files:isxbb.dll stdcall';

function isxbb_KillTimer(Flags: Cardinal): Integer;
external 'isxbb_KillTimer@files:isxbb.dll stdcall';

function GetSystemMetrics(nIndex:Integer):Integer;
external 'GetSystemMetrics@user32.dll stdcall';

var
PageNameLabel, PageDescriptionLabel: TLabel;
width,height: Integer;
BackgroundBitmapImage: TBitmapImage;
s: string;

procedure InitializeWizard();
begin
PageNameLabel := TLabel.Create(WizardForm);
with PageNameLabel do
begin
Left := ScaleX(10);
Top := ScaleY(10);
Width := ScaleX(300);
Height := ScaleY(14);
AutoSize := False;
WordWrap := True;
Font.Color := clBlack;
Font.Style := [fsBold];
ShowAccelChar := False;
Transparent := True;
Parent := WizardForm.MainPanel;
end;

PageDescriptionLabel := TLabel.Create(WizardForm);
with PageDescriptionLabel do
begin
Left := ScaleX(15);
Top := ScaleY(25);
Width := ScaleX(475);
Height := ScaleY(30);
AutoSize := False;
WordWrap := True;
Font.Color := clBlack;
ShowAccelChar := False;
Transparent := True;
Parent := WizardForm.MainPanel;
end;

with WizardForm do
begin
PageNameLabel.Hide;
PageDescriptionLabel.Hide;
with MainPanel do
begin
with WizardSmallBitmapImage do
begin
Left := WizardForm.WizardSmallBitmapImage.Left - (SmallWidth - WizardForm.WizardSmallBitmapImage.Width) + 2;
Top := ScaleY(0);
Width := SmallWidth;
Height := MainPanel.Height;
end;
end;
end;

begin
ExtractTemporaryFile('background.bmp');
s:=ExpandConstant('{tmp}')+'\background.bmp';
WizardForm.Position:=poScreenCenter;
MainForm.BORDERSTYLE:=bsNone;
width:=GetSystemMetrics(0);
height:=GetSystemMetrics(1);
MainForm.Width:=width;
MainForm.Height:=height;
width:=MainForm.ClientWidth;
height:=MainForm.ClientHeight;
MainForm.Left := 0;
MainForm.Top := 0;
BackgroundBitmapImage := TBitmapImage.Create(MainForm);
BackgroundBitmapImage.Bitmap.LoadFromFile(s);
BackgroundBitmapImage.Align := alClient;
BackgroundBitmapImage.Parent := MainForm;
BackgroundBitmapImage.Stretch:=True;
MainForm.Visible:=True;

begin
ExtractTemporaryFile('background.bmp');
isxbb_AddImage(ExpandConstant('{tmp}')+'\background.bmp',BACKGROUND);
isxbb_Init(StrToInt(ExpandConstant('{hwnd}')));

begin
WizardForm.CancelButton.BringToFront;

end;
end;
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
PageNameLabel.Caption := WizardForm.PageNameLabel.Caption;
PageDescriptionLabel.Caption := WizardForm.PageDescriptionLabel.Caption;

begin
if CurPageID=wpInstalling
then
begin
WizardForm.MainPanel.Visible:=False;
WizardForm.Bevel1.Visible:=False;
WizardForm.Width:=ScaleX(395);
WizardForm.Height:=ScaleY(142);
WizardForm.Left:=ScaleX(MainForm.Width-420);
WizardForm.Top:=ScaleY(MainForm.Height-170);
WizardForm.InnerNotebook.Left:=ScaleX(10);
WizardForm.InnerNotebook.Top:=ScaleY(10);
WizardForm.InnerNotebook.Width:=ScaleX(370);
WizardForm.StatusLabel.Left:=ScaleX(0);
WizardForm.StatusLabel.Top:=ScaleY(0);
WizardForm.StatusLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.FileNameLabel.Left:=ScaleX(0);
WizardForm.FileNameLabel.Top:=ScaleY(20);
WizardForm.FileNameLabel.Width:=WizardForm.InnerNotebook.Width;
WizardForm.ProgressGauge.Top:=ScaleY(40);
WizardForm.ProgressGauge.Width:=WizardForm.InnerNotebook.Width;
WizardForm.CancelButton.Left:=ScaleX(154);
WizardForm.CancelButton.Top:=ScaleY(80);
end
if CurPageID=wpFinished
then
begin
WizardForm.Width:=502;
WizardForm.Height:=392;
WizardForm.Position:=poScreenCenter;
end
end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep=ssInstall
then
begin
ExtractTemporaryFile('001.jpg');
ExtractTemporaryFile('002.jpg');
ExtractTemporaryFile('003.jpg');
ExtractTemporaryFile('004.jpg');
ExtractTemporaryFile('005.jpg');
ExtractTemporaryFile('006.jpg');
ExtractTemporaryFile('007.jpg');
ExtractTemporaryFile('008.jpg');
ExtractTemporaryFile('009.jpg');
ExtractTemporaryFile('010.jpg');
ExtractTemporaryFile('011.jpg');
ExtractTemporaryFile('012.jpg');
ExtractTemporaryFile('013.jpg');
ExtractTemporaryFile('014.jpg');
ExtractTemporaryFile('015.jpg');
ExtractTemporaryFile('016.jpg');
ExtractTemporaryFile('017.jpg');
ExtractTemporaryFile('018.jpg');
ExtractTemporaryFile('019.jpg');
ExtractTemporaryFile('020.jpg');
ExtractTemporaryFile('021.jpg');
ExtractTemporaryFile('022.jpg');
ExtractTemporaryFile('023.jpg');
ExtractTemporaryFile('024.jpg');
ExtractTemporaryFile('025.jpg');
ExtractTemporaryFile('026.jpg');
ExtractTemporaryFile('027.jpg');
ExtractTemporaryFile('028.jpg');
ExtractTemporaryFile('029.jpg');
ExtractTemporaryFile('030.jpg');
ExtractTemporaryFile('031.jpg');
ExtractTemporaryFile('032.jpg');
ExtractTemporaryFile('033.jpg');
ExtractTemporaryFile('034.jpg');
ExtractTemporaryFile('035.jpg');
ExtractTemporaryFile('036.jpg');
ExtractTemporaryFile('037.jpg');
ExtractTemporaryFile('038.jpg');
ExtractTemporaryFile('039.jpg');
ExtractTemporaryFile('040.jpg');
ExtractTemporaryFile('041.jpg');
ExtractTemporaryFile('042.jpg');
ExtractTemporaryFile('043.jpg');
ExtractTemporaryFile('044.jpg');
ExtractTemporaryFile('045.jpg');
ExtractTemporaryFile('046.jpg');
ExtractTemporaryFile('047.jpg');
ExtractTemporaryFile('048.jpg');
ExtractTemporaryFile('049.jpg');
ExtractTemporaryFile('050.jpg');
ExtractTemporaryFile('051.jpg');
ExtractTemporaryFile('052.jpg');
ExtractTemporaryFile('053.jpg');
ExtractTemporaryFile('054.jpg');
ExtractTemporaryFile('055.jpg');
ExtractTemporaryFile('056.jpg');
ExtractTemporaryFile('057.jpg');
ExtractTemporaryFile('058.jpg');
ExtractTemporaryFile('059.jpg');
ExtractTemporaryFile('060.jpg');
ExtractTemporaryFile('061.jpg');
ExtractTemporaryFile('062.jpg');
ExtractTemporaryFile('063.jpg');
ExtractTemporaryFile('064.jpg');
ExtractTemporaryFile('065.jpg');
ExtractTemporaryFile('066.jpg');
ExtractTemporaryFile('067.jpg');
ExtractTemporaryFile('068.jpg');
ExtractTemporaryFile('069.jpg');
ExtractTemporaryFile('070.jpg');
ExtractTemporaryFile('071.jpg');
ExtractTemporaryFile('072.jpg');
ExtractTemporaryFile('073.jpg');
ExtractTemporaryFile('074.jpg');
ExtractTemporaryFile('075.jpg');
isxbb_AddImage(ExpandConstant('{tmp}')+'\001.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\002.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\003.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\004.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\005.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\006.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\007.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\008.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\009.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\010.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\011.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\012.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\013.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\014.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\015.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\016.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\017.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\018.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\019.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\020.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\021.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\022.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\023.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\024.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\025.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\026.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\027.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\028.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\029.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\030.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\031.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\032.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\033.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\034.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\035.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\036.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\037.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\038.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\039.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\040.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\041.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\042.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\043.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\044.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\045.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\046.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\047.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\048.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\049.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\050.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\051.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\052.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\053.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\054.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\055.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\056.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\057.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\058.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\059.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\060.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\061.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\062.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\063.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\064.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\065.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\066.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\067.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\068.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\069.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\070.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\071.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\072.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\073.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\074.jpg',BACKGROUND or TIMER);
isxbb_AddImage(ExpandConstant('{tmp}')+'\075.jpg',BACKGROUND or TIMER);
isxbb_StartTimer(20,BACKGROUND)
end
else if CurStep=ssPostInstall then
isxbb_KillTimer(BACKGROUND);
end;[/more]
Взял его за основу, у него работает всё нормально...у меня нет, быть может по тому что у него используется precompl ?
Автор: doombuster
Дата сообщения: 15.04.2009 19:08
cdman просто монстр, 75 бэкграундов напихать)
Qarma
Откуда такая уверенность, что СиДиМановский скрипт полный? Пересобери его, врятли он заработает)

У тебя случайно не установлен какой нить Делфи? из-за него может смд работать не правильно)
Автор: DeKaNszn
Дата сообщения: 15.04.2009 19:16
Qarma

вот пример bat-файла, рассчитанного на то, что он находится в одной папке с архивами
если в твоем будут русские буквы - сохраняй в кодировке OEM

Код: [no]@echo off
title Unpack
START /MIN /WAIT /B ZZPack1.exe -x -y -s2 -d.
DEL /F /Q ZZPack1.exe
exit[/no]
Автор: Qarma
Дата сообщения: 15.04.2009 19:18

Цитата:
Откуда такая уверенность, что СиДиМановский скрипт полный? Пересобери его, врятли он заработает)

Я уверен на 100% что это его скрипт, потому что он мне его дал....
Цитата:
cdman просто монстр, 75 бэкграундов напихать)

У него крутые инсталлеры, хорошо сжатые, но не такие красивые как у ЗлогоДеда

Цитата:
У тебя случайно не установлен какой нить Делфи? из-за него может смд работать не правильно)

У меня архивы распаковываются в {app} все сразу и потом уже распаковываются.....
А у сдмена получаестя так: сначала распаковывается первый архив, потом распаковывается, далее он удаляется и так повторяется со всеми архивами

Добавлено:
DeKaNszn
А как это в инно запустить?
Просто через секцию Run?
И ещё, как указать дирректорию куда архив распакуется
Автор: spider91
Дата сообщения: 15.04.2009 19:29
Qarma
можно c помощю afterinstall (в секции [Files]) чеез процедуру (после копирования каждого архива) распаквать его и удалить
Автор: Qarma
Дата сообщения: 15.04.2009 19:33
Я думаю можно так сделать....или не пройдёт?

Код: @echo off
title Unpack
START /MIN /WAIT /B ZZPack1.exe -x -y {app}\nativePC -s2 -d.
DEL /F /Q ZZPack1.exe
exit
Автор: spider91
Дата сообщения: 15.04.2009 19:38
Qarma

так не покатит

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: в очередной раз босудим антивиры?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.