Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

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

Ветеран


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


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

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


Изменения
Автор: Serega
Дата: 13-08-2011
Вложения
Тип файла: 7z Inno Setup [все вопросы] часть 1.7z
(1.34 Mb, 900 просмотров)
Тип файла: 7z Inno Setup [все вопросы] часть 2.7z
(3.12 Mb, 798 просмотров)
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
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] - Скачать;

  • InnoSetup Script Joiner - Программа для объединения нескольких скриптов InnoSetup в один;

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


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2

-------
Книги нужны, чтобы напоминать человеку, что его оригинальные мысли не так уж новы... Авраам Линкольн.


Отправлено: 00:28, 04-11-2010

 

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


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

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


Товарищи! Скинте скрипт чтоб можно было растянуть изображения на страницах приветсвия и завершения... (Сам искал ничего нормального не нашел, то в одном шрифт пропадает то в другом ошибка вылетает, в общем вся надежда вас господа!!)

Отправлено: 03:08, 03-02-2011 | #701



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

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


Аватара для Gnom_aka_Lexander

Ветеран


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

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


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

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Последний раз редактировалось Gnom_aka_Lexander, 15-02-2011 в 17:22.


Отправлено: 09:11, 03-02-2011 | #703


Аватара для Vamp1re

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


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

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


как мне сделать чтоб из установленной папки в процессе установки запускался bat-ник или ехе-шник?

Отправлено: 14:53, 03-02-2011 | #704


Аватара для R.i.m.s.k.y.

Ветеран


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

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


Цитата Vamp1re:
как мне сделать чтоб из установленной папки в процессе установки запускался bat-ник или ехе-шник? »
[Run]
Filename: {app}\bat.bat; WorkingDir: {app}; Flags: runhidden shellexec

shellexec можно убрать.


или так

[Files]
Source: bat.bat; DestDir: {app}\; AfterInstall: RunBat; Flags: нужные флаги
[_Code]
procedure RunBat();
var res : integer;
begin
Exec(Expandconstant('{app}\bat.bat'), ' /parametrs ',SW_HIDE,ewWaitUntilTerminated,res);
end;


Только учти, если ты будешь в [Files] Source: копировать целую папку, то AfterInstall: RunBat; будет выполняться над каждыым файлов в этой папке и ее подпапках. Так что если надо копировать папку, то сначала копируй ее без AfterInstall: RunBat; а потом отдельную строчку на один мелкий файлик.

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Последний раз редактировалось R.i.m.s.k.y., 03-02-2011 в 15:07.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:01, 03-02-2011 | #705


Аватара для Vamp1re

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


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

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


R.i.m.s.k.y., У меня чето не пашет ни первый способ ни второй.А в первом способе нужны какието параметры? ато етот батник дожнен распаковывать файлы сжатые: prcomp.exe; depack.exe; srep.exe

Отправлено: 19:28, 03-02-2011 | #706


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Vamp1re, в первром варианте добавь флаг постинсталл:
Код: Выделить весь код
[Run]
Filename: {app}\bat.bat; WorkingDir: {app}; Flags: runhidden postinstall
Ну, и может, runhidden удалить попробовать.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:09, 03-02-2011 | #707


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


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

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


Люди, пожалуйста, помогите. Вот в чем проблема, если создавать простой инсталятор, то у цвета остается форматирование(цвет и т.п), а если ставить свое изображение на все окно инсталятора, то выходит вот такое как на скрине

Отправлено: 20:37, 03-02-2011 | #708


Аватара для Gnom_aka_Lexander

Ветеран


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

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


ViHtarb, Скрипт нужно смотреть, а так, чтобы подложка была прозрачная - только на ботве можно сделать.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Отправлено: 20:49, 03-02-2011 | #709


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


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

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


вот сам скрипт
Скрипт



[Setup]
AppName=LGN Mod
AppVerName=LGN Mod v0.1
AppPublisher=LGN Team
AppPublisherURL=http://lgnteam.ipb2.ru/
AppSupportURL=http://lgnteam.ipb2.ru/
AppUpdatesURL=http://lgnteam.ipb2.ru/

DefaultDirName={reg:HKLM\SOFTWARE\GSC Game World\STALKER-COP,InstallPath}\gamedata
DefaultGroupName=LGN Mod v0.1

AllowNoIcons=yes

InfoBeforeFile=D:\Ìîè ôàéëû\Èãðû\ôàéëû\stalker\InfoBefore.rtf

OutputDir=D:\Ìîè ôàéëû\Èãðû\S.T.A.lker ÇîâÒåíèÑêàé\STALKER Call of Prypyat\ìîäû\My Mod\Legenda Mod v1.0

Compression=none

SetupIconFile=D:\Games\S.T.A.L.K.E.R. - Çîâ Ïðèïÿòè\stalker_cop.ico
WizardImageFile=D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\WizardImage22.bmp
WizardSmallImageFile=D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\WizardImage22.bmp

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


[Files]
Source: D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\ars\button.bmp; DestDir: {tmp}; Flags: dontcopy
Source: D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\ars\Normal.ani; DestDir: {tmp}; Flags: dontcopy
Source: D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\ars\Pointer.ani; DestDir: {tmp}; Flags: dontcopy
Source: D:\Êàðòèíêè\ðàáîòà\call of Pryp\install\WizardImage22.bmp; DestDir: {tmp}; Flags: dontcopy
Source: D:\Ìîè ôàéëû\Èãðû\S.T.A.lker ÇîâÒåíèÑêàé\STALKER Call of Prypyat\óðîêè\èíñòàëÿòîð\bassmod.dll; DestDir: "{tmp}"; Flags: dontcopy
Source: D:\Ìîè ôàéëû\Èãðû\ôàéëû\stalker\InfoBefore.rtf; DestDir: "{tmp}"; Flags: ignoreversion

[code]

const
ButtonWidth = 123; //Óêàçûâàåì ðàçìåð êíîïîê
ButtonHeight = 24;

bidBack = 0;
bidNext = 1;
bidCancel = 2;
bidDirBrowse = 3;
bidGroupBrowse = 4;

GCL_HCURSOR = (-12);
OCR_NORMAL = 32512;

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

function LoadCursorFromFile(FileName: String): Longint;
external 'LoadCursorFromFileA@user32 stdcall';

function SetClassLong(hWnd: HWND; Index, NewLong: Longint): Longint;
external 'SetClassLongA@user32 stdcall';

function SetCursor(Cursor: Longint): Longint;
external 'SetCursor@user32 stdcall';

function SetSystemCursor(Cursor, CurType: Longint): Longint;
external 'SetSystemCursor@user32 stdcall';

function GetCursor(): Longint;
external 'GetCursor@user32 stdcall';

Var
ButtonPanel: array [0..4] of TPanel;
ButtonImage: array [0..4] of TBitmapImage;
ButtonLabel: array [0..4] of TLabel;

//DiskSpaceLabel
WizardImage: TBitmapImage;
YesRadio,NoRadio: TRadioButton;
WelcomeLabel1,WelcomeLabel2,InfoBeforeClickLabel,SelectDirLabel,SelectDirBrowseLabel,ReadyLabel,Stat usLabel,FinishedHeadingLabel,FinishedLabel,YesRadioLabel,NoRadioLabel,
BeveledLabel: TLabel;
CheckBox: TCheckBox;
CheckBoxLabel: Tlabel;
ResultCode: Integer;

OldCursor, NewCursor, NewCursor1: Longint;

procedure ButtonLabelClick(Sender: TObject);
var
Button: TButton;
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
case TLabel(Sender).Tag of
bidBack: Button:=WizardForm.BackButton
bidNext: Button:=WizardForm.NextButton
bidCancel: Button:=WizardForm.CancelButton
bidDirBrowse: Button:=WizardForm.DirBrowseButton
bidGroupBrowse: Button:=WizardForm.GroupBrowseButton
else
Exit
end
Button.OnClick(Button)
end;

procedure ButtonLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if ButtonLabel[TLabel(Sender).Tag].Enabled then
ButtonImage[TLabel(Sender).Tag].Left:=-ButtonWidth
end;

procedure ButtonLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ButtonImage[TLabel(Sender).Tag].Left:=0
end;

procedure LoadButtonImage(AButton: TButton; AButtonIndex: integer);
var
Image: TBitmapImage;
Panel: TPanel;
Labl: TLabel;

begin
Panel:=TPanel.Create(WizardForm)
Panel.Left:=AButton.Left
Panel.Top:=AButton.Top
Panel.Width:=AButton.Width
Panel.Height:=AButton.Height
Panel.Tag:=AButtonIndex
Panel.Parent:=AButton.Parent
ButtonPanel[AButtonIndex]:=Panel

Image:=TBitmapImage.Create(WizardForm) //Ðèñóíîê êîòîðûé ëîæèòñÿ íà êíîïêó
Image.Width:=246 //Îáÿçàòåëüíî ïðîïèñàòü îðèãèíàëüíûé ðàçìåð ðèñóíêà
Image.Height:=24
Image.Enabled:=False
Image.Bitmap.LoadFromFile(ExpandConstant('{tmp}\button.bmp'))
Image.Parent:=Panel
ButtonImage[AButtonIndex]:=Image

with TLabel.Create(WizardForm) do begin
Tag:=AButtonIndex
Parent:=Panel
Width:=Panel.Width
Height:=Panel.Height
Transparent:=True
OnClick:=@ButtonLabelClick
OnDblClick:=@ButtonLabelClick
OnMouseDown:=@ButtonLabelMouseDown
OnMouseUp:=@ButtonLabelMouseUp
end

Labl:=TLabel.Create(WizardForm) //Òåêñò êíîïîê
Labl.Left:=40 //Óêàçûâàåì ïîëîæåíèå òåêñòà
Labl.Top:=5
Labl.Autosize:=True
Labl.Alignment:=taCenter
Labl.Tag:=AButtonIndex
Labl.Transparent:=True
Labl.Font.Color:=clWhite //Öâåò òåêñòà
Labl.Caption:=AButton.Caption
Labl.OnClick:=@ButtonLabelClick
Labl.OnDblClick:=@ButtonLabelClick
Labl.OnMouseDown:=@ButtonLabelMouseDown
Labl.OnMouseUp:=@ButtonLabelMouseUp
Labl.Parent:=Panel
ButtonLabel[AButtonIndex]:=Labl
end;

procedure UpdateButton(AButton: TButton;AButtonIndex: integer);
begin
ButtonLabel[AButtonIndex].Caption:=AButton.Caption
ButtonPanel[AButtonIndex].Visible:=AButton.Visible
ButtonLabel[AButtonIndex].Enabled:=Abutton.Enabled
end;

Procedure YesRadioOnClick (Sender: TObject);
begin
WizardForm.YesRadio.Checked:=True
end;

Procedure NoRadioOnClick (Sender: TObject);
begin
WizardForm.NoRadio.Checked:=True
end;

Procedure HideAll();
begin
WizardForm.MainPanel.Hide
WizardForm.BeveledLabel.Hide
WizardForm.OuterNotebook.Hide
WizardForm.InnerNotebook.Hide

WelcomeLabel1.Hide //çàãîëîâîê ïðèâåòñòâèÿ
WelcomeLabel2.Hide //Ïðèâåòñòâèå íèæå
InfoBeforeClickLabel.Hide //Çàãîëîâîê ñðàíèöè
WizardForm.InfoBeforeMemo.Hide //Èíôîðìàöèÿ î ìîäå
SelectDirLabel.Hide //çàãîëîâîê âûáîðà ïàïêè óñòàíîâêè
SelectDirBrowseLabel.Hide //îïèñàíèå ñòðàíèöè âûáîðà ïàïêè
WizardForm.DirEdit.Hide //äàííàÿ äèðåêòîðèÿ
WizardForm.DirBrowseButton.Hide //êíîïêà brows
//DiskSpaceLabel.Hide
ReadyLabel.Hide
WizardForm.ReadyMemo.Hide
StatusLabel.Hide
WizardForm.ProgressGauge.Hide
FinishedHeadingLabel.Hide
FinishedLabel.Hide
WizardForm.RunList.Hide

YesRadio.Hide
YesRadioLabel.Hide
NoRadio.Hide
NoRadioLabel.Hide
end;

Procedure InitializeSkin();
begin
ExtractTemporaryFile('WizardImage22.bmp')

WizardImage:=TBitmapImage.Create(WizardForm)
WizardImage.AutoSize:=True
WizardImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardImage22.bmp'))
WizardImage.Parent:=WizardForm

WizardForm.ClientWidth:=690
WizardForm.ClientHeight:=496
WizardForm.Font.Color:=$ffffff
WizardForm.Center

WizardForm.BackButton.Left:=193
WizardForm.BackButton.Top:=462
WizardForm.BackButton.Width:=80 //80
WizardForm.BackButton.Height:=23 //23

WizardForm.NextButton.Left:=275
WizardForm.NextButton.Top:=462
WizardForm.NextButton.Width:=80
WizardForm.NextButton.Height:=23

WizardForm.CancelButton.Left:=800
WizardForm.CancelButton.Top:=462
WizardForm.CancelButton.Width:=80
WizardForm.CancelButton.Height:=23

BeveledLabel:=TLabel.Create(WizardForm)
BeveledLabel.Left:=10
BeveledLabel.Top:=468
BeveledLabel.Font.Color:=clWhite
BeveledLabel.Transparent:=True
BeveledLabel.Caption:=WizardForm.BeveledLabel.Caption
BeveledLabel.Parent:=WizardForm

WizardForm.BeveledLabel.Left:=700

// wpWelcome
WelcomeLabel1:=TLabel.Create(WizardForm)
WelcomeLabel1.Left:=205
WelcomeLabel1.Top:=90
WelcomeLabel1.Width:=465
WelcomeLabel1.Height:=28
WelcomeLabel1.AutoSize:=False
WelcomeLabel1.WordWrap:=True
WelcomeLabel1.Transparent:=True
WelcomeLabel1.Font.Color:=$ffffff
WelcomeLabel1.Font.Style:=[fsBold]
WelcomeLabel1.Caption:=WizardForm.WelcomeLabel1.Caption
WelcomeLabel1.Parent:=WizardForm

WelcomeLabel2:=TLabel.Create(WizardForm)
WelcomeLabel2.Left:=205
WelcomeLabel2.Top:=130
WelcomeLabel2.Width:=465
WelcomeLabel2.Height:=200
WelcomeLabel2.AutoSize:=False
WelcomeLabel2.WordWrap:=True
WelcomeLabel2.Transparent:=True
WelcomeLabel2.Caption:=WizardForm.WelcomeLabel2.Caption
WelcomeLabel2.Parent:=WizardForm

// wpInfoBefore
InfoBeforeClickLabel:=TLabel.Create(WizardForm)
InfoBeforeClickLabel.Left:=205
InfoBeforeClickLabel.Top:=90
InfoBeforeClickLabel.Transparent:=True
InfoBeforeClickLabel.Caption:=WizardForm.InfoBeforeClickLabel.Caption
InfoBeforeClickLabel.Parent:=WizardForm

WizardForm.InfoBeforeMemo.Left:=205
WizardForm.InfoBeforeMemo.Top:=114
WizardForm.InfoBeforeMemo.Width:=465
WizardForm.InfoBeforeMemo.Height:=300
WizardForm.InfoBeforeMemo.Parent:=WizardForm

// wpSelectDir
SelectDirLabel:=TLabel.Create(WizardForm)
SelectDirLabel.Left:=205
SelectDirLabel.Top:=90
SelectDirLabel.Width:=465
SelectDirLabel.Height:=28
SelectDirLabel.AutoSize:=False
SelectDirLabel.WordWrap:=True
SelectDirLabel.Transparent:=True
SelectDirLabel.Caption:=WizardForm.SelectDirLabel.Caption
SelectDirLabel.Parent:=WizardForm

SelectDirBrowseLabel:=TLabel.Create(WizardForm)
SelectDirBrowseLabel.Left:=205
SelectDirBrowseLabel.Top:=120
SelectDirBrowseLabel.Width:=465
SelectDirBrowseLabel.Height:=28
SelectDirBrowseLabel.AutoSize:=False
SelectDirBrowseLabel.WordWrap:=True
SelectDirBrowseLabel.Transparent:=True
SelectDirBrowseLabel.Caption:=WizardForm.SelectDirBrowseLabel.Caption
SelectDirBrowseLabel.Parent:=WizardForm

WizardForm.DirEdit.Left:=205
WizardForm.DirEdit.Top:=380
WizardForm.DirEdit.Width:=370
WizardForm.DirEdit.Height:=21
WizardForm.DirEdit.Color:=$000000
WizardForm.DirEdit.Font.Color:=$ffffff
WizardForm.DirEdit.Parent:= WizardForm

WizardForm.DirBrowseButton.Width:=80
WizardForm.DirBrowseButton.Height:=23
WizardForm.DirBrowseButton.Parent:= WizardForm

//DiskSpaceLabel:=TLabel.Create(WizardForm)
//DiskSpaceLabel.Left:=205
//DiskSpaceLabel.Top:=415
//DiskSpaceLabel.Transparent:=True
//DiskSpaceLabel.Caption:=WizardForm.DiskSpaceLabel.Caption
//DiskSpaceLabel.Parent:=WizardForm

// wpReady
ReadyLabel:=TLabel.Create(WizardForm)
ReadyLabel.Left:=205
ReadyLabel.Top:=90
ReadyLabel.Width:=465
ReadyLabel.Height:=28
ReadyLabel.AutoSize:=False
ReadyLabel.WordWrap:=True
ReadyLabel.Transparent:=True
ReadyLabel.Parent:=WizardForm

WizardForm.ReadyMemo.Left:=205
WizardForm.ReadyMemo.Top:=124
WizardForm.ReadyMemo.Width:=465
WizardForm.ReadyMemo.Height:=300
WizardForm.ReadyMemo.Color:=$000000
WizardForm.ReadyMemo.Font.Color:=$ffffff
WizardForm.ReadyMemo.Parent:= WizardForm

// wpInstalling
StatusLabel:=TLabel.Create(WizardForm)
StatusLabel.Left:=205
StatusLabel.Top:=90
StatusLabel.Transparent:=True
StatusLabel.Caption:=WizardForm.Caption +'...'
StatusLabel.Parent:=WizardForm

WizardForm.ProgressGauge.Left:=205
WizardForm.ProgressGauge.Top:=120
WizardForm.ProgressGauge.Width:=465
WizardForm.ProgressGauge.Height:=21
WizardForm.ProgressGauge.Parent:= WizardForm

// wpFinished
FinishedHeadingLabel:=TLabel.Create(WizardForm)
FinishedHeadingLabel.Left:=205
FinishedHeadingLabel.Top:=90
FinishedHeadingLabel.Width:=465
FinishedHeadingLabel.Height:=28
FinishedHeadingLabel.AutoSize:=False
FinishedHeadingLabel.WordWrap:=True
FinishedHeadingLabel.Transparent:=True
FinishedHeadingLabel.Font.Color:=$ffffff
FinishedHeadingLabel.Font.Style:=[fsBold]
FinishedHeadingLabel.Caption:=WizardForm.FinishedHeadingLabel.Caption
FinishedHeadingLabel.Parent:=WizardForm

FinishedLabel:=TLabel.Create(WizardForm)
FinishedLabel.Left:=205
FinishedLabel.Top:=130
FinishedLabel.Width:=465
FinishedLabel.Height:=56
FinishedLabel.AutoSize:=False
FinishedLabel.WordWrap:=True
FinishedLabel.Transparent:=True
FinishedLabel.Caption:=WizardForm.FinishedLabel.Caption
FinishedLabel.Parent:=WizardForm

WizardForm.RunList.Left:=0
WizardForm.RunList.Top:=200
WizardForm.RunList.Width:=465
WizardForm.RunList.Height:=120
WizardForm.RunList.Color:=$000000
WizardForm.RunList.Font.Color:=$ffffff

YesRadio:=TRadioButton.Create(WizardForm)
YesRadio.Left:=205
YesRadio.Top:=290
YesRadio.Width:=13
YesRadio.Height:=13
YesRadio.Color:=$b58434
YesRadio.OnClick:=@YesRadioOnClick
YesRadio.Parent:=WizardForm

YesRadioLabel:=TLabel.Create(WizardForm)
YesRadioLabel.Left:=221
YesRadioLabel.Top:=290
YesRadioLabel.Transparent:=True
YesRadioLabel.Caption:=WizardForm.YesRadio.Caption
YesRadioLabel.Parent:=WizardForm

NoRadio:=TRadioButton.Create(WizardForm)
NoRadio.Left:=205
NoRadio.Top:=310
NoRadio.Width:=13
NoRadio.Height:=13
NoRadio.Color:=$b58434
NoRadio.OnClick:=@NoRadioOnClick
NoRadio.Parent:=WizardForm

NoRadioLabel:=TLabel.Create(WizardForm)
NoRadioLabel.Left:=221
NoRadioLabel.Top:=310
NoRadioLabel.Transparent:=True
NoRadioLabel.Caption:=WizardForm.NoRadio.Caption
NoRadioLabel.Parent:=WizardForm
end;

Procedure ShowPageComponents(CurPageID: Integer);
begin
Case CurPageID of

wpWelcome:
begin
WelcomeLabel1.Show
WelcomeLabel2.Show
end

wpInfoBefore:
begin
InfoBeforeClickLabel.Show
WizardForm.InfoBeforeMemo.Show
end

wpSelectDir:
begin
SelectDirLabel.Show
SelectDirBrowseLabel.Show
WizardForm.DirEdit.Show
WizardForm.DirBrowseButton.Show
//DiskSpaceLabel.Show
end

wpReady:
begin
ReadyLabel.Show
ReadyLabel.Caption:=WizardForm.ReadyLabel.Caption
WizardForm.ReadyMemo.Show
end

wpInstalling:
begin
StatusLabel.Show
WizardForm.ProgressGauge.Show
end

wpFinished:
begin
FinishedHeadingLabel.Show
FinishedLabel.Show
FinishedLabel.Caption:=WizardForm.FinishedLabel.Caption
WizardForm.RunList.hide
end
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
HideAll
ShowPageComponents(CurPageID)
UpdateButton(WizardForm.BackButton,bidBack)
UpdateButton(WizardForm.NextButton,bidNext)
UpdateButton(WizardForm.CancelButton,bidCancel)
UpdateButton(WizardForm.DirBrowseButton,bidDirBrowse)
end;

Procedure InitializeWizard();
var
width,height: Integer;
begin

ExtractTemporaryFile('WizardImage22.bmp')
ExtractTemporaryFile('button.bmp')
ExtractTemporaryFile('normal.ani')
ExtractTemporaryFile('pointer.ani')
ExtractTemporaryFile('InfoBefore.rtf')
ExtractTemporaryFile('BASSMOD.dll');

InitializeSkin

NewCursor:= LoadCursorFromFile(ExpandConstant('{tmp}\pointer.ani'));
NewCursor1:= LoadCursorFromFile(ExpandConstant('{tmp}\normal.ani'));
OldCursor:= SetClassLong(WizardForm.NextButton.Handle, GCL_HCURSOR, NewCursor);
OldCursor:= SetClassLong(WizardForm.Handle, GCL_HCURSOR, NewCursor1);
OldCursor:= SetClassLong(WizardForm.MainPanel.Handle, GCL_HCURSOR, NewCursor);

WizardForm.BackButton.Left:=249
WizardForm.BackButton.Width:=ButtonWidth
WizardForm.BackButton.Height:=ButtonHeight

WizardForm.NextButton.Left:=375
WizardForm.NextButton.Width:=ButtonWidth
WizardForm.NextButton.Height:=ButtonHeight

WizardForm.CancelButton.Left:=520
WizardForm.CancelButton.Width:=ButtonWidth
WizardForm.CancelButton.Height:=ButtonHeight

WizardForm.DirBrowseButton.Top:=379
WizardForm.DirBrowseButton.Left:=580
WizardForm.DirBrowseButton.Width:=ButtonWidth
WizardForm.DirBrowseButton.Height:=ButtonHeight

LoadButtonImage(WizardForm.BackButton,bidBack)
LoadButtonImage(WizardForm.NextButton,bidNext)
LoadButtonImage(WizardForm.CancelButton,bidCancel)
LoadButtonImage(WizardForm.DirBrowseButton,bidDirBrowse)
end;

procedure DeInitializeSetup();
begin
SetSystemCursor(OldCursor, OCR_NORMAL);
end;


Отправлено: 20:51, 03-02-2011 | #710



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Утилиты - [addon] Inno Setup CrOsP Наборы обновлений для Windows XP/2003/Windows 7 33 11-05-2011 16:03
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34
Inno Setup 5.3.6 OSZone Software Новости программного обеспечения 0 15-11-2009 17:30
Скрипты Inno Setup Compiler QAZAK Автоматическая установка приложений 7 15-01-2007 17:59
Inno Setup tradeukraine Вебмастеру 3 13-06-2006 20:39




 
Переход