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

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

Автор: r1977
Дата сообщения: 28.11.2010 23:47
Помогите[more] [/more]
Автор: riperoc1
Дата сообщения: 29.11.2010 03:16
r1977
у тебя походу pcf файл был создан precomp версии 038
Автор: InHead
Дата сообщения: 29.11.2010 05:18
У кого есть вот такой скрип инсталятора , выложите пли3 [more]http://kraspix.ru/images/82595673025571085697.jpg[/more] Буду очень признателен )
Автор: FunnyRabbit
Дата сообщения: 29.11.2010 07:19
InHead
Sherogat не раз выкладывал скрипт ...Учимся пользоваться поиском...
[more]
#define NeedSize "15000"

[Setup]
AppName=Napoleon. Total War
AppVerName=Napoleon. Total War
DefaultDirName={pf}\Napoleon. Total War
DisableReadyPage=true

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

[Files]
Source: compiler:ISSkin.dll; DestDir: {tmp}; Flags: dontcopy;
Source: Tiger.cjstyles; DestDir: {tmp}; Flags: dontcopy;
Source: Image1.bmp; DestDir: {tmp}; Flags: dontcopy;
Source: Image2.bmp; DestDir: {tmp}; Flags: dontcopy;
Source: Image3.bmp; DestDir: {tmp}; Flags: dontcopy;
Source: Image4.bmp; DestDir: {tmp}; Flags: dontcopy;

[CustomMessages]
Rus.Welcome=Вас приветствует Мастер установки {#SetupSetting("AppName")}.%nПрограмма установит {#SetupSetting("AppName")} на Ваш компьтер.
Rus.SelectDir=Программа установит игру {#SetupSetting("AppName")} в следующую папку.%nЕсли вы хотите выбрать другую папку, нажмите «Обзор».%nНажмите «Установить», чтобы начать установку игры {#SetupSetting("AppName")}.
Rus.Installing=Пожалйуста, подождите, пока игра {#SetupSetting("AppName")} утсновится на Ваш компьютер.
Rus.Finished=Установка игры {#SetupSetting("AppName")} завершена.%nВы можете запустить игру с помощью%n соответствующего ярлыка на «Рабочем столе» или из меню «Пуск».
Rus.FreeSize=Доступно места на диске:
Rus.NeedSize=Требуется места на диске:

[code]
var
BackPanel, WizardPanel, StatusPanel, ImagePanel: TPanel;
CaptionLabel: TLabel; BmpFile: TBitmapImage;
NeedSpaceLabel,FreeSpaceLabel: TLabel;
FreeMB, TotalMB: Cardinal; NeedSize: Integer;

procedure LoadSkin(lpszPath: String; lpszIniFileName: String); external 'LoadSkin@files:isskin.dll stdcall';
procedure UnloadSkin(); external 'UnloadSkin@files:isskin.dll stdcall';
function ShowWindow(hWnd: Integer; uType: Integer): Integer; external 'ShowWindow@user32.dll stdcall';

Function NumToStr(Float: Extended): String;
Begin
Result:= Format('%.2n', [Float]); StringChange(Result, ',', '.');
while ((Result[Length(Result)] = '0') or (Result[Length(Result)] = '.')) and (Pos('.', Result) > 0) do
SetLength(Result, Length(Result)-1);
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 := ExpandConstant('{cm:FreeSize} ')+ NumToStr(round(FreeMB/1024*100)/100) + ' Гб' else
FreeSpaceLabel.Caption := ExpandConstant('{cm:FreeSize} ')+ IntToStr(FreeMB)+ ' Мб';
if FreeMB < NeedSize then
WizardForm.NextButton.Enabled := False else
WizardForm.NextButton.Enabled := True;
end;

procedure GetNeedSpaceCaption;
begin
if NeedSize > 1024 then
NeedSpaceLabel.Caption := ExpandConstant('{cm:NeedSize} ')+ NumToStr(round(NeedSize/1024*100)/100) + ' Гб' else
NeedSpaceLabel.Caption := ExpandConstant('{cm:NeedSize} ')+ IntToStr(NeedSize)+ ' Мб';
end;

function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('Tiger.cjstyles');
LoadSkin(ExpandConstant('{tmp}\Tiger.cjstyles'), '');
Result := True;
end;

procedure DeinitializeSetup();
begin
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
UnloadSkin();
end;

procedure InitializeWizard();
begin
NeedSize:= {#NeedSize};

ExtractTemporaryFile('Image1.bmp')
ExtractTemporaryFile('Image2.bmp')
ExtractTemporaryFile('Image3.bmp')
ExtractTemporaryFile('Image4.bmp')

WizardForm.ClientWidth:= ScaleX(800);
WizardForm.ClientHeight:= ScaleY(620);
WizardForm.Position:= poScreenCenter;

WizardForm.InnerNotebook.Hide;
WizardForm.OuterNotebook.Hide;
WizardForm.Font.Name:= 'Georgia';

BackPanel:= TPanel.Create(WizardForm)
BackPanel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(800), ScaleY(618))
BackPanel.Color:= clWhite
BackPanel.BorderStyle:= bsNone
BackPanel.ParentBackground:= False
BackPanel.ParentColor:= False
BackPanel.Parent:= WizardForm

StatusPanel:= TPanel.Create(WizardForm)
StatusPanel.SetBounds(ScaleX(2), ScaleY(2), ScaleX(796), ScaleY(18))
StatusPanel.BorderStyle:= bsNone
StatusPanel.ParentBackground:= False
StatusPanel.ParentColor:= False
StatusPanel.Font.Color:= clWhite
StatusPanel.Font.Size:= 12
StatusPanel.Font.Style:= [fsBold]
StatusPanel.Font.Name:= 'Times New Roman'
StatusPanel.Alignment:= taCenter
StatusPanel.Parent:= WizardForm

ImagePanel:= TPanel.Create(WizardForm)
ImagePanel.SetBounds(ScaleX(2), ScaleY(21), ScaleX(796), ScaleY(484))
ImagePanel.BorderStyle:= bsNone
ImagePanel.ParentBackground:= False
ImagePanel.ParentColor:= False
ImagePanel.Parent:= WizardForm

BmpFile:= TBitmapImage.Create(WizardForm)
BmpFile.Stretch:= True;
BmpFile.SetBounds(ScaleX(0),ScaleY(0), ScaleX(796), ScaleY(484))
BmpFile.Parent:= ImagePanel

WizardPanel:= TPanel.Create(WizardForm)
WizardPanel.SetBounds(ScaleX(2), ScaleY(506), ScaleX(796), ScaleY(110))
WizardPanel.Alignment:= taCenter;
WizardPanel.BorderStyle:= bsNone
WizardPanel.ParentBackground:= False
WizardPanel.ParentColor:= False
WizardPanel.Parent:= WizardForm

CaptionLabel:= TLabel.Create(WizardForm);
CaptionLabel.SetBounds(ScaleX(100), ScaleY(5), ScaleX(590), ScaleY(100));
CaptionLabel.AutoSize:= False;
CaptionLabel.WordWrap:= True;
CaptionLabel.Transparent:= True;
CaptionLabel.Font.Color:= $5F8BA2
CaptionLabel.Font.Size:= 11
CaptionLabel.Font.Style:= [fsBold]
CaptionLabel.Alignment:= taCenter;
CaptionLabel.Parent:= WizardPanel;

NeedSpaceLabel:= TLabel.Create(WizardForm);
NeedSpaceLabel.SetBounds(ScaleX(5),ScaleY(70),ScaleX(300),ScaleY(20))
NeedSpaceLabel.Transparent:= True;
NeedSpaceLabel.Font.Style:= [fsBold]
NeedSpaceLabel.Parent:= WizardPanel

FreeSpaceLabel:= TLabel.Create(WizardForm);
FreeSpaceLabel.SetBounds(ScaleX(250), ScaleY(70), ScaleX(300),ScaleY(20))
FreeSpaceLabel.Transparent:= True;
FreeSpaceLabel.Font.Style:= [fsBold]
FreeSpaceLabel.Parent:= WizardPanel

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

WizardForm.DirBrowseButton.Parent:= WizardForm
WizardForm.DirBrowseButton.Left:= ScaleX(455)
WizardForm.DirBrowseButton.Top:= ScaleY(590)
WizardForm.DirBrowseButton.Font.Size:= 8
WizardForm.DirBrowseButton.Font.Style:= [fsBold]

WizardForm.DirEdit.Parent:= WizardForm
WizardForm.DirEdit.Left:= ScaleX(5)
WizardForm.DirEdit.Top:= ScaleY(590)
WizardForm.DirEdit.Width:= ScaleX(445)
WizardForm.DirEdit.Font.Size:= 8
WizardForm.DirEdit.Font.Style:= [fsBold]

WizardForm.ProgressGauge.Parent:= WizardForm
WizardForm.ProgressGauge.Left:= ScaleX(5)
WizardForm.ProgressGauge.Top:= ScaleY(590)
WizardForm.ProgressGauge.Width:= ScaleX(450)

WizardForm.StatusLabel.Parent:= WizardPanel
WizardForm.StatusLabel.SetBounds(ScaleX(5), ScaleY(52), ScaleX(300), ScaleY(20))
WizardForm.StatusLabel.Font.Style:= [fsBold]

WizardForm.FilenameLabel.Parent:= WizardPanel
WizardForm.FilenameLabel.SetBounds(ScaleX(5), ScaleY(68), ScaleX(450), ScaleY(20))
WizardForm.FilenameLabel.Font.Style:= [fsBold]

WizardForm.CancelButton.BringToFront;
WizardForm.CancelButton.Left:= ScaleX(715)
WizardForm.CancelButton.Top:= ScaleY(590)
WizardForm.CancelButton.Font.Size:= 8
WizardForm.CancelButton.Font.Style:= [fsBold]

WizardForm.NextButton.BringToFront;
WizardForm.NextButton.Left:= ScaleX(630)
WizardForm.NextButton.Top:= ScaleY(590)
WizardForm.NextButton.Font.Size:= 8
WizardForm.NextButton.Font.Style:= [fsBold]

WizardForm.BackButton.BringToFront;
WizardForm.BackButton.Left:= ScaleX(545)
WizardForm.BackButton.Top:= ScaleY(590)
WizardForm.BackButton.Font.Size:= 8
WizardForm.BackButton.Font.Style:= [fsBold]
end;

procedure CurPageChanged(CurPageID: Integer);
begin
WizardForm.DirEdit.Hide; WizardForm.DirBrowseButton.Hide;
WizardForm.Progressgauge.Hide; WizardForm.StatusLabel.Hide;
WizardForm.FilenameLabel.Hide; FreeSpaceLabel.Hide;
NeedSpaceLabel.Hide;
case CurPageID of
wpWelcome:
begin
CaptionLabel.Caption:= ExpandConstant('{cm:Welcome}')
StatusPanel.Caption:= 'Приветствие'
BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image1.bmp'))
end;
wpSelectDir:
begin
WizardForm.DirEdit.Show; WizardForm.DirBrowseButton.Show;
FreeSpaceLabel.Show; NeedSpaceLabel.Show;
CaptionLabel.Caption:= ExpandConstant('{cm:SelectDir}')
StatusPanel.Caption:= 'Подготовка к установке'
WizardForm.NextButton.Caption:= 'Установить'
BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image2.bmp'))
GetNeedSpaceCaption; if FreeMB < NeedSize then WizardForm.NextButton.Enabled:=False;
end;
wpInstalling:
begin
WizardForm.Progressgauge.Show; WizardForm.StatusLabel.Show;
WizardForm.FilenameLabel.Show;
CaptionLabel.Caption:= ExpandConstant('{cm:Installing}')
StatusPanel.Caption:= 'Установка'
BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image3.bmp'))
end;
wpFinished:
begin
CaptionLabel.Caption:= ExpandConstant('{cm:Finished}')
StatusPanel.Caption:= 'Завершение'
BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image4.bmp'))
end;
end;
end;[/more]
Автор: InHead
Дата сообщения: 29.11.2010 08:37
FunnyRabbit
А есть готовый!!? ) Чтоб уже прекреплен был ISDone, FreeArc . Чтоб можно уже было отпиратся на готовый )
Автор: FunnyRabbit
Дата сообщения: 29.11.2010 10:45
InHead
Неа....От готового сам бы не отказался )))
Там вроде фриарк есть ) Точно не помню...
Автор: Shegorat
Дата сообщения: 29.11.2010 11:01
FunnyRabbit
InHead

Цитата:
А есть готовый!!? ) Чтоб уже прекреплен был ISDone, FreeArc . Чтоб можно уже было отпиратся на готовый )

А это и есть готовый скрипт . Здесь "украшены" все необходимые страницы. Только FreeArc'а/ISDone нет. Или вам нужно сразу архивом со всеми файлами, а также батником для упаковки?
Автор: riperoc1
Дата сообщения: 29.11.2010 11:17
InHead
я непонимаю так сложно две части соеденить
Автор: vasyakrn1
Дата сообщения: 29.11.2010 11:46
Вот прикольние инно скрипти дл игр.
Описание будет поже
скачивайте с депосита заменив spam_detected на depositfiles точка com

или переидите по силке
http://inno.at.ua/board/avtomobili/shiny_i_pokryshki/deposit/2-1-0-1


http://depositfiles.com/files/zg6cjyw5l
http://depositfiles.com/files/79gs19vtw
http://depositfiles.com/files/xfmxhcz92
http://depositfiles.com/files/4dox549cs
http://depositfiles.com/files/pg9z7dvt7
http://depositfiles.com/files/am2kbc5ba
http://depositfiles.com/files/m5ro4hxsv
http://depositfiles.com/files/lif12bh4z
http://depositfiles.com/files/kdr3yzx96
http://depositfiles.com/files/jvntpwkkk
http://depositfiles.com/files/q1uo2bu4d
http://depositfiles.com/files/w9z97ceez
http://depositfiles.com/files/atp8uob1e
http://depositfiles.com/files/bs5gr3ms7
http://depositfiles.com/files/s6hdzvoxf
Автор: InHead
Дата сообщения: 29.11.2010 11:55
Shegorat
Да сразу архивом )
Автор: FunnyRabbit
Дата сообщения: 29.11.2010 12:00
vasyakrn1
ПривеД вирусы
Можераторы или кто может удалять сообщение,снесите топик что выше и дайте бан плохому человеку
Автор: vasyakrn1
Дата сообщения: 29.11.2010 12:05
сайт http://inno.at.ua/ беде змінено на http://inno.vasya.ua/
Автор: Shegorat
Дата сообщения: 29.11.2010 12:14
FunnyRabbit

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

Дык банили его уже, видишь ник сменил, и дата регистрации сегодня.
InHead

Цитата:
Да сразу архивом )

Может завтра, пока все файлы соберу и прикручу FreeArc...
Автор: vasyakrn1
Дата сообщения: 29.11.2010 12:37
FunnyRabbit я ивиняюся не качайте
http://depositfiles.com/files/zg6cjyw5l
http://depositfiles.com/files/79gs19vtw
http://depositfiles.com/files/xfmxhcz92
http://depositfiles.com/files/pg9z7dvt7
Автор: InHead
Дата сообщения: 29.11.2010 13:23
Shegorat
Окей давай завтра )
Автор: vasyaetoyaept
Дата сообщения: 29.11.2010 13:52
Shegorat
InHead
ну я прикрепил к этому скрипту исдон но там не видно прогресс бар
как исправлю выложу
Автор: Dark91
Дата сообщения: 29.11.2010 13:53
как из распаковки убрать:
Автор: vasyaetoyaept
Дата сообщения: 29.11.2010 14:01
Dark91
в секции [CustomMessages]
найди
russian.ExtractedFile=Извлекается файл:
и сделай так
russian.ExtractedFile=
Автор: Dark91
Дата сообщения: 29.11.2010 14:08
vasyaetoyaept
нужно чтобы data.pcf не показывался, также как data.dat
Автор: vasyaetoyaept
Дата сообщения: 29.11.2010 14:13
тогда ищи в скрипт (cm:Extractedfiles)
Автор: nik1967
Дата сообщения: 29.11.2010 15:02
Dark91
Найди и закомментируй
Код: LabelCurrFileName.Caption:=MinimizePathName(ExpandConstant('{cm:ExtractedFile} ')+CurrentFile, LabelCurrFileName.Font, LabelCurrFileName.Width);
Автор: vasyaetoyaept
Дата сообщения: 29.11.2010 15:28
Mafia II v 1.0
Довольно простой скрипт с новым ISDon'ом v 0.5L
Скачать
отдельно спасибо troyan'у за помощь в создании скрипта и sherogat'у (на его основе наполеона)
скриншоты
Автор: Shegorat
Дата сообщения: 29.11.2010 16:45
vasyaetoyaept

Цитата:
Mafia II v 1.0
Довольно простой скрипт с новым ISDon'ом v 0.5L
Скачать
отдельно спасибо troyan'у за помощь в создании скрипта

Не забудь указать, что сделан на основе моего примера Napoleon: Total War.
P.S Я так понимаю что мне скрипт собирать не требуется?
Автор: FunnyRabbit
Дата сообщения: 29.11.2010 17:22
Знает ли кто ,как реализовать доп эффекты для текста
Например как тут
[more] [/more]
Ведь системные требования врятли для каждого компа в фотошопе нарисуют :D
Автор: 13Friday
Дата сообщения: 29.11.2010 17:45
Shegorat
Спасибо!
Не подскажеш как пропустить вот эту страницу
И убрать это сообщение


sjwrec
Я с украины и у меня интернет GPRS через мобилку ifolder пишет вот это
На данный момент иностранный трафик у этого файла превышает российский.
Автор: vint56
Дата сообщения: 29.11.2010 17:59
13Friday вот как убрать сообщения если папка сушествует
DirExistsWarning=no
Как отключить станицу ReadyPage
DisableReadyPage=True
Автор: Shegorat
Дата сообщения: 29.11.2010 18:01
13Friday
1)DisableReadyPage=True
2)DirExistsWarning=False

FunnyRabbit

Цитата:
Знает ли кто ,как реализовать доп эффекты для текста

Скорее всего это шрифт такой. Если ты зальешь куда-нибудь setup.exe, могу поковырять, что да как.
Автор: Edison00007
Дата сообщения: 29.11.2010 18:07
FunnyRabbit
Картинки вставляют с помощью botva2
системные требования - HWREQ
а кнопки в фотошопе рисуют, а также шрифты разные используют

А как вставить в инсталятор стиль окна?
Автор: 13Friday
Дата сообщения: 29.11.2010 18:57
vint56
Shegorat
Cпс!
Ещё вопросик где в MsgBox при запуске игры дописать [more=WorkingDir..][Run]
Filename: "{reg:HKLM\Software\GSC Game World\STALKER-STCS,InstallPath|{pf}\STALKER-STCS}\bin\xrEngine.exe"; WorkingDir: "{reg:HKLM\Software\GSC Game World\STALKER-STCS,InstallPath|{pf}\STALKER-STCS}"; Description: "&{cm:LaunchProgram,С.Т.А.Л.К.Е.Р. - Чистое Небо}"; Flags: nowait postinstall skipifsilent

[Code]
var
AppDir: string; ResultCode: Integer;
procedure ReadEntries();
begin
    RegQueryStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\GSC Game World\STALKER-STCS', 'InstallUserNodvd', AppDir);
end;

function InitializeSetup(): Boolean;
var
Exe: string;
begin
Exe:='xrEngine.exe';
if (RegValueExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\GSC Game World\STALKER-STCS', 'InstallUserNodvd')) then
begin
ReadEntries;
case (MsgBox('Запустить Игру - ' + ExpandConstant('С.Т.А.Л.К.Е.Р. - Чистое Небо ?'), mbConfirmation, MB_YESNO or MB_DEFBUTTON3)) of
IDYES:
begin
if (FileExists(AddBackslash(AppDir) + Exe)) then
begin
Exec(AddBackslash(AppDir) + Exe, '', ExtractFilePath(AddBackslash(AppDir) + Exe), SW_SHOW, ewNoWait, ResultCode);
end else begin
MsgBox('Невозможно запустить Игру - ' + ExpandConstant('С.Т.А.Л.К.Е.Р. - Чистое Небо') + ', т.к. исполняемые файлы игры не найдены.', mbCriticalError, MB_OK or MB_DEFBUTTON1);
end
Result:=False;
end
IDNO:
begin
Result:=False;
end
end
end else begin
Result:=True;
end
end;[/more]
Автор: A19EXXX
Дата сообщения: 29.11.2010 19:08
Inno ISCmplr Setup 5.4.0 build 101129
Скачать (1.6 Mb) | Зеркало

Страницы: 12345678910111213

Предыдущая тема: µTorrent / uTorrent


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