Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 7]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 7]

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1274
Благодарности: 1030


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:

Показать/скрыть: Ссылки на примеры скриптов:

Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Скрипты Inno Setup. Помощь и советы [часть 6]

Отправлено: 11:48, 10-03-2014

 

Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


Покажите пример пожалуйста если у кого имеется, на отображение сколько распаковано файлов...

Как тут: http://rghost.ru/53844067

Отправлено: 16:42, 07-04-2014 | #321



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262

Профиль | Отправить PM | Цитировать


Как исправить эту ошибку? Скрипт с Ultimate Test Black.7z в шапке...

Последний раз редактировалось Dodakaedr, 07-06-2014 в 21:59.


Отправлено: 17:01, 07-04-2014 | #322


Пользователь


Сообщения: 110
Благодарности: 2

Профиль | Отправить PM | Цитировать


Stealthmax, спасибо большое все просто супер. Как я понял на этом примере который вы мне скинули не только описание компонентов а еще и изображение? Т.е. мне убрать мой скрипт на показ изображений к компонентом?

Отправлено: 17:08, 07-04-2014 | #323


Аватара для Dodakaedr

Ветеран


Сообщения: 863
Благодарности: 262

Профиль | Отправить PM | Цитировать


По исправлял появилась следующая....
Я так понимаю что все дело в unicode?

Последний раз редактировалось Dodakaedr, 07-06-2014 в 21:59.


Отправлено: 17:22, 07-04-2014 | #324


Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Dodakaedr, в описании ошибки кроется ее причина: "Не хватает знака ";" в строке 118". И таких ошибок, дальше по скрипту, будет тьма, так как юникодовая инно не допускает отсутствия точки с запятой, и после логической скобки end в особенности.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:24, 07-04-2014 | #325


Аватара для PRAVIY

Новый участник


Сообщения: 11
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте, совсем недавно начал изучать тему создания репаков.
При создании и оформлении своего первого инсталятора сталкнулся со следующей ошибкой.

После компиляции установочник не желает открываться, высвечивая статус "не отвечает". Долго пытался разобраться в чём дело, в итоге понял что конфликт идёт с частью скрипта отвечающем за всплывающее png изображение перед запуском установочника и с частью отвечающей за кликабельный логотип.
Примечательно то что этот же самый скрипт прекрасно компелируется и без проблем запускается если в [Files] вместо всей папки игры запаковать "пустышку" из нескольких файлов.
Уже кучу гайдов перерыл, решения так и не нашёл. Буду благодарен если кто сможет помочь разобраться.


Вот собственно сам скрипт:
читать дальше »

[Setup]
DiskSpanning=true
DiskSliceSize=1457664000
AppName=DOOM 3 - COOP
AppVerName=Doom 3 - Coop
AppPublisherURL=http://Coop-Land.ru/rookovodstva/356-rukovodstvo-zapuska-Doom-3-po-seti.html
AppSupportURL=http://Coop-Land.ru/rookovodstva/356-rukovodstvo-zapuska-Doom-3-po-seti.html
AppUpdatesURL=http://Coop-Land.ru/rookovodstva/356-rukovodstvo-zapuska-Doom-3-po-seti.html
DefaultDirName=Games\DOOM 3 - COOP
DefaultGroupName=DOOM 3 - COOP
AllowNoIcons=yes
OutputDir=D:\GAMES\SETUP\Созданные репаки
OutputBaseFilename=DOOM 3 - COOP
SetupIconFile=D:\GAMES\DOOM 3\lms4\Doom 3 Coop.ico
Compression=lzma/ultra64
SolidCompression=true
WizardImageFile=PIC\Fon.bmp
WizardSmallImageFile=PIC\Shapka.bmp
InternalCompressLevel=ultra64

[Languages]
Name: russian; MessagesFile: compiler:Default.isl

[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
Name: quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked

[Files]
Source: D:\GAMES\DOOM 3\LMS4\LMS4.bat; DestDir: {app}\LMS4; Flags: ignoreversion
;Source: D:\GAMES\DOOM 3\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
Source: PIC\logo.bmp; Flags: dontcopy
Source: DLL\CallbackCtrl.dll; Flags: dontcopy
Source: PIC\splash.png; Flags: dontcopy
Source: DLL\isgsg.dll; Flags: dontcopy

[Icons]
Name: {group}\DOOM 3 - COOP; Filename: {app}\LMS4\LMS4.bat; WorkingDir: {app}\LMS4; IconFileName: {app}\LMS4\Doom 3 Coop.ico
Name: {group}\{cm:UninstallProgram,DOOM 3 - COOP}; Filename: {uninstallexe}
Name: {commondesktop}\DOOM 3 - COOP; Filename: {app}\LMS4\LMS4.bat; WorkingDir: {app}\LMS4; IconFileName: {app}\LMS4\Doom 3 Coop.ico; Comment: "Запустить кооперативный режим Doom 3"; Tasks: desktopicon
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\DOOM 3 - COOP; Filename: {app}\LMS4\LMS4.bat; Tasks: quicklaunchicon

[Registry]
Root: HKLM; SubKey: SOFTWARE\id\Doom 3; ValueType: string; ValueName: CDKEY; ValueData: {app}; Flags: uninsdeletekey

[CustomMessages]
russian.Error2=Установка %nDoom 3 Coop Mod %nне завершена.
russian.Error3=%nВо время установки произошла ошибка, пожалуйста отключите сторонние программы и повторите попытку установки.%n%n%nНажмите «Завершить», чтобы выйти.
russian.WelcomeLabel1= Программа установит игру Doom 3 Coop Mod на Ваш компьютер.
russian.WelcomeLabel2= Нажмите «Далее», чтобы продолжить, или «Отмена», чтобы выйти.
russian.FinisLabel1=Игра %nDoom 3 Coop Mod%n установлена на Ваш компьютер.

[code]
var
PageNameLabel, PageDescriptionLabel, WelcomeLabel1,WelcomeLabel2,FLabel1, FLabel2, WLabel1, WLabel2, WelcomeLabel4,FinishedHeadingLabel, FinishedHeadingLabel1,WelcomeLabel3: TLabel;

/////////////////////////////// ФОНОВОЕ ИЗОБРАЖЕНИЕ ///////////////////////////////
procedure WizardImage();
begin
WizardForm.WizardBitmapImage.Width:= ScaleX(497);
WizardForm.WizardBitmapImage2.Width:= ScaleX(497);

WelcomeLabel1:= TLabel.Create(WizardForm);
WelcomeLabel1.Left := ScaleX(149);
WelcomeLabel1.Top := ScaleY(119);
WelcomeLabel1.Width := ScaleX(205);
WelcomeLabel1.Height := ScaleY(219);
WelcomeLabel1.AutoSize := False;
WelcomeLabel1.WordWrap := True;
WelcomeLabel1.Alignment := taCenter;
WelcomeLabel1.Font.Size := 12;
WelcomeLabel1.Font.Color:= clblack;
WelcomeLabel1.Font.Style:= [fsBold]
WelcomeLabel1.Font.Name:= 'Georgia'
WelcomeLabel1.ShowAccelChar := False;
WelcomeLabel1.Caption :=ExpandConstant('{cm:WelcomeLabel1}');
WelcomeLabel1.Transparent := True;
WelcomeLabel1.Parent := WizardForm.WelcomePage;

WLabel1 := TLabel.Create(WizardForm);
WLabel1.Left := ScaleX(148);
WLabel1.Top := ScaleY(118);
WLabel1.Width := ScaleX(205);
WLabel1.Height := ScaleY(219);
WLabel1.AutoSize := False;
WLabel1.WordWrap := True;
WLabel1.Alignment := taCenter;
WLabel1.Font.Size := 12;
WLabel1.Font.Color:= clwhite;
WLabel1.Font.Style:= [fsBold]
WLabel1.Font.Name:= 'Georgia'
WLabel1.ShowAccelChar := False;
WLabel1.Caption :=ExpandConstant('{cm:WelcomeLabel1}');
WLabel1.Transparent := True;
WLabel1.Parent := WizardForm.WelcomePage;

WelcomeLabel2:= TLabel.Create(WizardForm);
WelcomeLabel2.Left := ScaleX(149);
WelcomeLabel2.Top := ScaleY(184);
WelcomeLabel2.Width := ScaleX(210);
WelcomeLabel2.Height := ScaleY(234);
WelcomeLabel2.AutoSize := False;
WelcomeLabel2.WordWrap := True;
WelcomeLabel2.Alignment := taCenter;
WelcomeLabel2.Font.Size := 12;
WelcomeLabel2.Font.Color:= clblack;
WelcomeLabel2.Font.Style:= [fsBold]
WelcomeLabel2.Font.Name:= 'Georgia'
WelcomeLabel2.ShowAccelChar := False;
WelcomeLabel2.Caption :=ExpandConstant('{cm:WelcomeLabel2}');
WelcomeLabel2.Transparent := True;
WelcomeLabel2.Parent := WizardForm.WelcomePage;

WLabel2 :=TLabel.Create(WizardForm);
WLabel2.Left := ScaleX(148);
WLabel2.Top := ScaleY(183);
WLabel2.Width := ScaleX(210);
WLabel2.Height := ScaleY(234);
WLabel2.AutoSize := False;
WLabel2.WordWrap := True;
WLabel2.Alignment := taCenter;
WLabel2.Font.Size := 12;
WLabel2.Font.Style:= [fsBold]
WLabel2.Font.Color:= clwhite;
WLabel2.Font.Name:= 'Georgia'
WLabel2.ShowAccelChar := False;
WLabel2.Caption := ExpandConstant('{cm:WelcomeLabel2}');
WLabel2.Transparent := True;
WLabel2.Parent := WizardForm.WelcomePage;

FinishedHeadingLabel:= TLabel.Create(WizardForm);
FinishedHeadingLabel.Left := ScaleX(99);
FinishedHeadingLabel.Top := ScaleY(117);
FinishedHeadingLabel.Width := ScaleX(308);
FinishedHeadingLabel.Height := ScaleY(100);
FinishedHeadingLabel.AutoSize := False;
FinishedHeadingLabel.WordWrap := True;
FinishedHeadingLabel.Alignment := taCenter;
FinishedHeadingLabel.Font.Size := 12;
FinishedHeadingLabel.Font.Color:= clblack;
FinishedHeadingLabel.Font.Style:= [fsBold]
FinishedHeadingLabel.Font.Name:= 'Georgia'
FinishedHeadingLabel.ShowAccelChar := False;
FinishedHeadingLabel.Caption :=ExpandConstant('{cm:FinisLabel1}');
FinishedHeadingLabel.Transparent := True;
FinishedHeadingLabel.Parent := WizardForm.FinishedPage;

FLabel1 := TLabel.Create(WizardForm);
FLabel1.Left := ScaleX(98);
FLabel1.Top := ScaleY(116);
FLabel1.Width := ScaleX(308);
FLabel1.Height := ScaleY(100);
FLabel1.AutoSize := False;
FLabel1.Alignment := taCenter;
FLabel1.WordWrap := True;
FLabel1.Font.Size := 12;
FLabel1.Font.Name := 'Georgia'
FLabel1.Font.Color:= clwhite;
FLabel1.Font.Style:= [fsBold]
FLabel1.ShowAccelChar := False;
FLabel1.Caption := ExpandConstant('{cm:FinisLabel1}');
FLabel1.Transparent := True;
FLabel1.Parent := WizardForm.FinishedPage;

WizardForm.WelcomeLabel1.Hide;
WizardForm.WelcomeLabel2.Hide;

WizardForm.FinishedLabel.Hide;
WizardForm.FinishedHeadingLabel.Hide;
end;
/////////////////////////////////////////Ф.И.///////////////////////////////////////////



///////////////////////////////// ИЗОБРАЖЕНИЕ ШАПКИ ////////////////////////////////////
procedure WizardSmallImage();
begin
WizardForm.WizardSmallBitmapImage.SetBounds(ScaleX(0), ScaleY(0), WizardForm.MainPanel.Width, WizardForm.MainPanel.Height);

PageNameLabel:= TLabel.Create(WizardForm)
with WizardForm.PageNameLabel do
PageNameLabel.SetBounds(Left, Top, Width, Height);
PageNameLabel.Transparent:= True;
PageNameLabel.Font:= WizardForm.PageNameLabel.Font;
PageNameLabel.Font.Color:= clblack;
PageNameLabel.Parent:= WizardForm.MainPanel;

PageDescriptionLabel:= TLabel.Create(WizardForm);
with PageDescriptionLabel do
begin
Left:= WizardForm.PageDescriptionLabel.Left-12;
Top:= WizardForm.PageDescriptionLabel.Top;
Height:= WizardForm.PageDescriptionLabel.Height;
Width:= ScaleX(280);
AutoSize:= False;
WordWrap:= True;
Font.Name:= WizardForm.PageDescriptionLabel.Font.Name;
Transparent:= True;
Parent:= WizardForm.MainPanel;
end;

WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
end;
/////////////////////////////////////////И.Ш.///////////////////////////////////////////



////////////////////////////////// ВСПЛЫВАЮЩЕЕ ЛОГО ////////////////////////////////////
procedure ShowSplashScreen(p1:HWND;p2:string;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10:integer); external 'ShowSplashScreen@files:isgsg.dll stdcall delayload';

procedure Splash();
begin
ExtractTemporaryFile('Splash.png');
ShowSplashScreen(WizardForm.Handle,ExpandConstant('{tmp}')+'\Splash.png',1000,3000,1000,0,255,False, $FFFFFF,10);
end;
/////////////////////////////////////////В.Л.///////////////////////////////////////////



////////////////////////////////// КЛИКАБЕЛЬНОЕ ЛОГО ///////////////////////////////////
procedure LogoOnClick(Sender: TObject);
var ResCode: Integer;
begin
ShellExec('', 'http://Coop-Land.ru/rookovodstva/356-rukovodstvo-zapuska-Doom-3-po-seti.html', '' , '', SW_SHOW, ewNoWait, ResCode)
end;

procedure Logo();
var
BtnPanel: TPanel;
BtnImage: TBitmapImage;
begin
ExtractTemporaryFile('logo.bmp')

BtnPanel:=TPanel.Create(WizardForm)
with BtnPanel do begin
Left:=20
Top:=325
Width:=192
Height:=26
Cursor:=crHand
OnClick:=@logoOnClick
Parent:=WizardForm
end
BtnImage:=TBitmapImage.Create(WizardForm)
with BtnImage do begin
AutoSize:=True;
Enabled:=False;
Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo.bmp')
Parent:=BtnPanel
end
end;
/////////////////////////////////////////К.Л.///////////////////////////////////////////



procedure InitializeWizard;
begin
Splash();
Logo();
WizardImage();
WizardSmallImage();
WizardForm.CancelButton.BringToFront;
end;


Отправлено: 19:20, 07-04-2014 | #326


Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


Цитата PRAVIY:
Вот собственно сам скрипт: »
PRAVIY, С файлами залей скрипт куда нибудь гляну, а то методом подбора в лом весь вечер файлы подбирать...

Отправлено: 19:26, 07-04-2014 | #327


Аватара для PRAVIY

Новый участник


Сообщения: 11
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Ivan_009:
PRAVIY, С файлами залей скрипт куда нибудь гляну, а то методом подбора в лом весь вечер файлы подбирать... »
Не вопрос, вот версия с файлами "пустышками" http://yadi.sk/d/EzleIIsiLyHpC, если надо будет могу и с самой игрой залить.

Последний раз редактировалось PRAVIY, 07-04-2014 в 19:47.


Отправлено: 19:40, 07-04-2014 | #328


Старожил


Сообщения: 242
Благодарности: 128

Профиль | Отправить PM | Цитировать


PRAVIY Сначало временые файлы а потом все остальное
[Files]
Source: PIC\logo.bmp; Flags: dontcopy
Source: DLL\CallbackCtrl.dll; Flags: dontcopy
Source: PIC\splash.png; Flags: dontcopy
Source: DLL\isgsg.dll; Flags: dontcopy
Source: D:\GAMES\DOOM 3\LMS4\LMS4.bat; DestDir: {app}\LMS4; Flags: ignoreversion
;Source: D:\GAMES\DOOM 3\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs

Отправлено: 19:41, 07-04-2014 | #329


Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


Цитата vint56:
Сначало временые файлы а потом все остальное »
Собственно vint56, ты меня опередил...
PRAVIY, Вот пробуй: http://rghost.ru/53849516

Отправлено: 19:53, 07-04-2014 | #330



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 7]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 6] El Sanchez Автоматическая установка приложений 2494 10-03-2014 11:51
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34




 
Переход