Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 7]
audiofeel
25-10-2014, 10:41
Первый или второй »
чего то я не понял.... почему "или" ??
sergey3695
25-10-2014, 13:22
audiofeel, потому что у тя в скрипте или так или так. Я то не знаю как именно там сделано. Оба варианта убирают рамки. Так работает анимация с формой без рамки?
audiofeel
25-10-2014, 14:38
потому что у тя в скрипте или так или так. »
у меня вообще ни как, нет у меня этого, что то я запутался.
Так работает анимация с формой без рамки? »
если ваш пример добавить в скрипт то анимации нет
sergey3695
25-10-2014, 16:35
Если взят за основу Windows Phone v1.0.1 то там в главном скрипте 562 строка bsNone;
Этож так трудно скомпилить это на 10-ке и посмотреть есть или нет анимации. Но не в ботве это дело.
[Setup]
AppName=My Program
AppVerName=My Program v.1.2
DefaultDirName={pf}\My Program
[Code ]
Procedure InitializeWizard();
begin
WizardForm.BorderStyle:= bsNone;
end;
Пздц :o
audiofeel
25-10-2014, 18:29
Пздц »
ну я вас не заставляю помогать и подсказывать и давать примеры, если не хотите пожалуйста, не надо
--------------------------------------------------
добавил
SetWindowLong(WizardForm.Handle, GWL_STYLE,
GetWindowLong(WizardForm.Handle, GWL_STYLE) and not WS_CAPTION);
убрал это, закомментировал BorderStyle := bsNone;
--------------------------------------------------
анимации нет, ни с BorderStyle := bsNone; ни с этим SetWindowLong(WizardForm.Handle, GWL_STYLE,
GetWindowLong(WizardForm.Handle, GWL_STYLE) and not WS_CAPTION);
sergey3695
25-10-2014, 19:37
audiofeel, я про то что анимации нет из-за bsNone. Нет рамки, нет и анимации. и не будет у тебя. не из-за ботвы это. так понятно.
ROMKA-1977
25-10-2014, 22:37
Подскажите можно ли в стандартном компиляторе отключить сообщение о нехватке места на диске. В шапке есть код но там для расширенной версии.
Подскажите можно ли в стандартном компиляторе отключить сообщение о нехватке места на диске. В шапке есть код но там для расширенной версии. »
Помощь и советы [часть 4] #657 (http://forum.oszone.net/post-1840102-657.html)
LagunaFAN
26-10-2014, 01:33
Доброй ночи, уважаемые знатоки!
Появилась необходимость работы с xml для скрипта. Пытаюсь адаптировать свой инсталл для установки в Origin.
Задача стоит такая. Есть файл local.xml, из которого нужно прочитать значение аттрибута value, (см. ниже, выделено и подчеркнуто) длина которого может меняться, а затем это значение вывести в строку выбора директории на соответствующей странице инсталлятора. Иначе, если файла не существует, вывести MsgBox с сообщением, что клиент не установлен. В интернетах нашел модуль (https://mega.co.nz/#!9R8wnBQB!Ctlac9wRS87zAcL1ypj1H7zGWJIiSN6BWXT13aKv63c) для работы с XML, но он работает с тегами, имеющими закрывающий тег и значениями в них. А тут, закрывающего тега нет и есть аттрибуты :(
<?xml version="1.0"?>
<Settings>
<Setting value="N:\Games\Origin\DownloadCache\Cache" key="CacheDir" type="10"/>
<Setting value="false" key="CacheDirRemoval" type="1"/>
<Setting value="N:\Games\Origin Games\" key="DownloadInPlaceDir" type="10"/>
</Settings>
Возможно ли такое осуществить в рамках Inno? Пожалуйста, помогите :(
LagunaFAN, Получить значение строки в текстовом файле (http://krinkels.org/threads/poluchit-znachenie-stroki-v-tekstovom-fajle.2236/)
ROMKA-1977
26-10-2014, 22:42
Помогите пож. со следующей ситуацией:
На странице InstallingPage прописал кнопку минимизации инстала (сворачивание в нижний правый угол) и кнпку возврата в исходный размер.
Проблема: после распаковки архивов при установке компонентов выведенных на странице SelectTasksPage кнопки "Min" и "Max" не кликабельны как и кнопка "Отмена" но отображаются они как кликабельные. Как сделать чтобы кнопки "Min" и "Max" отображались некликабельными как и кнопка "Отмена" ?
http://rghost.ru/58732663/image.png
Пример кода:
[Setup]
AppName=Name
VersionInfoVersion=5.0
AppVerName=VerName
DefaultDirName={pf}\My program
ShowTasksTreeLines=true
OutputDir=.
[Languages]
Name: Ru; MessagesFile: compiler:Languages\Russian.isl
[Tasks]
Name: Soft; Description: Установка дополнительного программного обеспечения; GroupDescription: Дополнительное программное обеспечение:; Flags: unchecked
Name: Soft/DirectX; Description: Microsoft DirectX; Flags: unchecked
Name: Soft/vcredist_x86; Description: Microsoft Visual С++ 2005 Redistributable; Flags: unchecked
Name: Soft/vcredist_x64; Description: Microsoft Visual С++ 2005 Redistributable x64; Flags: unchecked; Check: IsWin64
[Files]
Source: {win}\help\*; DestDir: {app}\Files; Flags: external recursesubdirs createallsubdirs;
[Run]
Filename: {src}\DirectX\DXSETUP.exe; Parameters: /silent; Tasks: Soft/DirectX; StatusMsg: Установка DirectX;
Filename: {src}\MVC++2005\vcredist_x86.exe; Tasks: Soft/vcredist_x86; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable;
Filename: {src}\MVC++2005\vcredist_x64.exe; Tasks: Soft/vcredist_x64; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable x64;
[code]
var
ResizeButton: TButton;
PageResized, Show: Boolean;
function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';
procedure MinimizeInstallPage();
begin
WizardForm.MainPanel.Hide;
WizardForm.Bevel1.Hide;
WizardForm.Width:= ScaleX(395);
WizardForm.Height:= ScaleY(142);
WizardForm.Left:= GetSystemMetrics(16)-ScaleX(420);
WizardForm.Top:= GetSystemMetrics(17)-ScaleX(150);
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(220);
WizardForm.CancelButton.Top:= ScaleY(80);
WizardForm.CancelButton.BringToFront;
ResizeButton.Left:= ScaleX(60);
ResizeButton.Top:= ScaleY(80);
ResizeButton.Caption:= 'Max.';
PageResized:= True;
end;
procedure ResumeInstallPage();
begin
WizardForm.Width:= ScaleX(503);
WizardForm.Height:= ScaleY(388);
WizardForm.Position:= poScreenCenter;
if Show then begin
WizardForm.MainPanel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(497), ScaleY(58));
WizardForm.MainPanel.Show;
WizardForm.Bevel1.Show;
end;
WizardForm.InnerNotebook.SetBounds(ScaleX(40), ScaleY(72), ScaleX(417), ScaleY(237));
WizardForm.StatusLabel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(417), ScaleY(16));
WizardForm.FilenameLabel.SetBounds(ScaleX(0), ScaleY(16), ScaleX(417), ScaleY(16));
WizardForm.ProgressGauge.SetBounds(ScaleX(0), ScaleY(42), ScaleX(417), ScaleY(21));
WizardForm.CancelButton.SetBounds(ScaleX(412), ScaleY(327), ScaleX(75), ScaleY(23));
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.Caption:= 'Min.';
PageResized:= False;
end;
procedure ResizeButtonOnClick(Sender: TObject);
begin
If PageResized then
ResumeInstallPage
else
MinimizeInstallPage;
end;
procedure InitializeWizard();
begin
ResizeButton:= TButton.Create(WizardForm);
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.OnClick:= @ResizeButtonOnClick;
ResizeButton.Caption:= 'Min.';
ResizeButton.Hide;
ResizeButton.Parent:= WizardForm;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
ResizeButton.Hide;
case CurPageID of
wpInstalling:
begin
Show:= true;
ResizeButton.Show;
end;
wpFinished:
begin
Show:= false;
ResumeInstallPage;
end;
end;
end;
Как сделать чтобы кнопки "Min" и "Max" отображались некликабельными как и кнопка "Отмена" ? »
procedure CurStepChanged(CurStep: TSetupStep);
begin
case CurStep of
ssPostInstall: _моя_кнопка.Enabled := WizardForm.NextButton.Enabled;
end;
end;
Dodakaedr
26-10-2014, 22:51
ROMKA-1977, В свойствах кнопки поставить Enabled := False;
procedure CurPageChanged(CurPageID: Integer);
begin
case CurPageID of
wpInstalling:
begin
Min.кнопка.Enabled := False;
end;
end;
end;
ROMKA-1977
26-10-2014, 23:40
Dodakaedr, saurn, оба варианта не подходят.
ROMKA-1977,
[Setup]
AppName=Name
VersionInfoVersion=5.0
AppVerName=VerName
DefaultDirName={pf}\My program
ShowTasksTreeLines=true
OutputDir=.
[Languages]
Name: Ru; MessagesFile: compiler:Languages\Russian.isl
[Tasks]
Name: Soft; Description: Установка дополнительного программного обеспечения; GroupDescription: Дополнительное программное обеспечение:; Flags: unchecked
Name: Soft/DirectX; Description: Microsoft DirectX; Flags: unchecked
Name: Soft/vcredist_x86; Description: Microsoft Visual С++ 2005 Redistributable; Flags: unchecked
Name: Soft/vcredist_x64; Description: Microsoft Visual С++ 2005 Redistributable x64; Flags: unchecked; Check: IsWin64
[Files]
Source: {win}\help\*; DestDir: {app}\Files; AfterInstall: BtnDisable(); Flags: external recursesubdirs createallsubdirs;
[Run]
Filename: {src}\DirectX\DXSETUP.exe; Parameters: /silent; Tasks: Soft/DirectX; StatusMsg: Установка DirectX;
Filename: {src}\MVC++2005\vcredist_x86.exe; Tasks: Soft/vcredist_x86; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable;
Filename: {src}\MVC++2005\vcredist_x64.exe; Tasks: Soft/vcredist_x64; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable x64;
[code]
var
ResizeButton: TButton;
PageResized, Show: Boolean;
function GetSystemMetrics(nIndex:Integer):integer; external 'GetSystemMetrics@user32.dll stdcall delayload';
procedure MinimizeInstallPage();
begin
WizardForm.MainPanel.Hide;
WizardForm.Bevel1.Hide;
WizardForm.Width:= ScaleX(395);
WizardForm.Height:= ScaleY(142);
WizardForm.Left:= GetSystemMetrics(16)-ScaleX(420);
WizardForm.Top:= GetSystemMetrics(17)-ScaleX(150);
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(220);
WizardForm.CancelButton.Top:= ScaleY(80);
WizardForm.CancelButton.BringToFront;
ResizeButton.Left:= ScaleX(60);
ResizeButton.Top:= ScaleY(80);
ResizeButton.Caption:= 'Max.';
PageResized:= True;
end;
procedure ResumeInstallPage();
begin
WizardForm.Width:= ScaleX(503);
WizardForm.Height:= ScaleY(388);
WizardForm.Position:= poScreenCenter;
if Show then begin
WizardForm.MainPanel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(497), ScaleY(58));
WizardForm.MainPanel.Show;
WizardForm.Bevel1.Show;
end;
WizardForm.InnerNotebook.SetBounds(ScaleX(40), ScaleY(72), ScaleX(417), ScaleY(237));
WizardForm.StatusLabel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(417), ScaleY(16));
WizardForm.FilenameLabel.SetBounds(ScaleX(0), ScaleY(16), ScaleX(417), ScaleY(16));
WizardForm.ProgressGauge.SetBounds(ScaleX(0), ScaleY(42), ScaleX(417), ScaleY(21));
WizardForm.CancelButton.SetBounds(ScaleX(412), ScaleY(327), ScaleX(75), ScaleY(23));
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.Caption:= 'Min.';
PageResized:= False;
end;
procedure ResizeButtonOnClick(Sender: TObject);
begin
If PageResized then
ResumeInstallPage
else
MinimizeInstallPage;
end;
procedure InitializeWizard();
begin
ResizeButton:= TButton.Create(WizardForm);
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.OnClick:= @ResizeButtonOnClick;
ResizeButton.Caption:= 'Min.';
ResizeButton.Hide;
ResizeButton.Parent:= WizardForm;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
ResizeButton.Hide;
case CurPageID of
wpInstalling:
begin
Show:= true;
ResizeButton.Show;
end;
wpFinished:
begin
Show:= false;
ResumeInstallPage;
end;
end;
end;
procedure BtnDisable();
begin
ResizeButton.Enabled := False;
end;
ROMKA-1977
27-10-2014, 01:13
saurn, при обычной упаковке всё OK. Но у меня упаковка не через секцию [Files] а в архивы .arc.
Но у меня упаковка не через секцию [Files] а в архивы .arc. »
В скрипте, что вы дали, нет ни строчки про распаковку архивов. Я ведь не могу знать каким способом вы осуществляете установку. Отключайте кнопку после того, как отработает процедура\функция распаковки последнего архива.
ROMKA-1977
27-10-2014, 01:57
Отключайте кнопку после того, как отработает процедура\функция распаковки последнего архива. » Если можно дайте пож. пример. Распаковка через ISDone v0.6.
ROMKA-1977, в стандартном примере к библиотеке распаковка архивов находится в блоке процедуры CurStepChanged, вызов функций ISDone осуществляется на шаге ssInstall. В окончании блока:
if CurStep = ssInstall then begin
// здесь распаковка архивов и вызов прочих функций.
//в самом низу блока строчки
HideControls;
WizardForm.CancelButton.Visible:=true;
WizardForm.CancelButton.Enabled:=false;
// здесь отключайте кнопку
ResizeButton.Enabled := False;
end;
ROMKA-1977
29-10-2014, 10:05
Подскажите что означает ошибка: Exception: External exception EEDFADE.
На странице InstallingPage прописал кнопку минимизации инстала (сворачивание в нижний правый угол) и кнпку возврата в исходный размер + код слайдшоу с применением isSlideShow.dll.
Проблема: isSlideShow работает нормально но после минимизации окна и далее возврата окна в исходное состояние вылетает ошибка: Exception: External exception EEDFADE с подсветкой строки: ShowImage(piclist.strings[CurrentPicture - 1], 1, 1000);
Пример кода:
[Setup]
AppName=Name
VersionInfoVersion=5.0
AppVerName=VerName
DefaultDirName={pf}\My program
ShowTasksTreeLines=true
OutputDir=.
[Languages]
Name: Ru; MessagesFile: compiler:Languages\Russian.isl
[Tasks]
Name: Soft; Description: Установка дополнительного программного обеспечения; GroupDescription: Дополнительное программное обеспечение:; Flags: unchecked
Name: Soft/DirectX; Description: Microsoft DirectX; Flags: unchecked
Name: Soft/vcredist_x86; Description: Microsoft Visual С++ 2005 Redistributable; Flags: unchecked
Name: Soft/vcredist_x64; Description: Microsoft Visual С++ 2005 Redistributable x64; Flags: unchecked; Check: IsWin64
[Files]
Source: {win}\help\*; DestDir: {app}\Files; AfterInstall: BtnDisable(); Flags: external recursesubdirs createallsubdirs;
Source: Image_1.png; DestDir: {tmp}; Flags: dontcopy
Source: Image_2.png; DestDir: {tmp}; Flags: dontcopy
Source: Image_3.png; DestDir: {tmp}; Flags: dontcopy
Source: isSlideShow.dll; DestDir: {tmp}; Flags: dontcopy
[Run]
Filename: {src}\DirectX\DXSETUP.exe; Parameters: /silent; Tasks: Soft/DirectX; StatusMsg: Установка DirectX;
Filename: {src}\MVC++2005\vcredist_x86.exe; Tasks: Soft/vcredist_x86; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable;
Filename: {src}\MVC++2005\vcredist_x64.exe; Tasks: Soft/vcredist_x64; Parameters: /q; StatusMsg: Установка Microsoft Visual С++ 2005 Redistributable x64;
[code]
///////////////////////// Кнопки "Min" и "Max" /////////////////////////
var
ResizeButton: TButton;
PageResized, Show: Boolean;
function GetSystemMetrics(nIndex:Integer):integer;
external 'GetSystemMetrics@user32.dll stdcall delayload';
procedure MinimizeInstallPage();
begin
WizardForm.MainPanel.Hide;
WizardForm.Bevel1.Hide;
WizardForm.Width:= ScaleX(395);
WizardForm.Height:= ScaleY(142);
WizardForm.Left:= GetSystemMetrics(16)-ScaleX(420);
WizardForm.Top:= GetSystemMetrics(17)-ScaleX(150);
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(220);
WizardForm.CancelButton.Top:= ScaleY(80);
WizardForm.CancelButton.BringToFront;
ResizeButton.Left:= ScaleX(60);
ResizeButton.Top:= ScaleY(80);
ResizeButton.Caption:= 'Max.';
PageResized:= True;
end;
procedure ResumeInstallPage();
begin
WizardForm.Width:= ScaleX(503);
WizardForm.Height:= ScaleY(388);
WizardForm.Position:= poScreenCenter;
if Show then begin
WizardForm.MainPanel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(497), ScaleY(58));
WizardForm.MainPanel.Show;
WizardForm.Bevel1.Show;
end;
WizardForm.InnerNotebook.SetBounds(ScaleX(40), ScaleY(72), ScaleX(417), ScaleY(237));
WizardForm.StatusLabel.SetBounds(ScaleX(0), ScaleY(0), ScaleX(417), ScaleY(16));
WizardForm.FilenameLabel.SetBounds(ScaleX(0), ScaleY(16), ScaleX(417), ScaleY(16));
WizardForm.ProgressGauge.SetBounds(ScaleX(0), ScaleY(42), ScaleX(417), ScaleY(21));
WizardForm.CancelButton.SetBounds(ScaleX(412), ScaleY(327), ScaleX(75), ScaleY(23));
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.Caption:= 'Min.';
PageResized:= False;
end;
procedure ResizeButtonOnClick(Sender: TObject);
begin
If PageResized then
ResumeInstallPage
else
MinimizeInstallPage;
end;
procedure InitializeWizard1();
begin
ResizeButton:= TButton.Create(WizardForm);
ResizeButton.SetBounds(ScaleX(20), ScaleY(327),ScaleX(75), ScaleY(23));
ResizeButton.OnClick:= @ResizeButtonOnClick;
ResizeButton.Caption:= 'Min.';
ResizeButton.Hide;
ResizeButton.Parent:= WizardForm;
end;
procedure CurPageChanged1(CurPageID: Integer);
begin
ResizeButton.Hide;
case CurPageID of
wpInstalling:
begin
Show:= true;
ResizeButton.Show;
end;
wpFinished:
begin
Show:= false;
ResumeInstallPage;
end;
end;
end;
procedure BtnDisable();
begin
ResizeButton.Enabled := False;
end;
///////////////////////// isSlideShow v1.03 /////////////////////////
type
TProc=procedure(HandleW, msg, idEvent, TimeSys: LongWord);
var
TimerID: LongWord;
CurrentPicture:integer;
PicList: TStringlist;
function WrapTimerProc(Callback:TProc; NumParam:integer): longword;
external 'WrapCallback@files:isslideshow.dll stdcall';
function SetTimer(hWnd, nIDEvent, uElapse, lpTimerFunc: LongWord): LongWord;
external 'SetTimer@user32.dll stdcall';
function KillTimer(hWnd, nIDEvent: LongWord): LongWord;
external 'KillTimer@user32.dll stdcall';
//function GetSystemMetrics(nIndex:Integer):Integer;
//external 'GetSystemMetrics@user32.dll stdcall';
procedure InitializeSlideShow(Hwnd:Thandle; l,t,w,h:integer;Animate:boolean; Stretch:integer);
external 'InitializeSlideShow@files:isslideshow.dll stdcall';
procedure DeinitializeSlideShow;
external 'DeinitializeSlideShow@files:isslideshow.dll stdcall';
procedure ShowImage(ipath:PAnsiChar; Effect:integer; SpeedTransition: integer);
external 'ShowImage@files:isslideshow.dll stdcall';
procedure InitializeWizard2();
begin
PicList:=tstringlist.Create;
ExtractTemporaryFile('Image_1.png');
ExtractTemporaryFile('Image_2.png');
ExtractTemporaryFile('Image_3.png');;
piclist.add(ExpandConstant('{tmp}') + '\Image_1.png');
piclist.add(ExpandConstant('{tmp}') + '\Image_2.png');
piclist.add(ExpandConstant('{tmp}') + '\Image_3.png');
end;
procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
begin
CurrentPicture:=CurrentPicture+1;
if CurrentPicture=piclist.count+1 then CurrentPicture:=1;
ShowImage(piclist.strings[CurrentPicture - 1], 1, 1000);
end;
procedure CurPageChanged2(CurPageID: Integer);
begin
If CurPageID=wpInstalling then
begin
InitializeSlideShow(WizardForm.InstallingPage.Handle, 0, 131, ScaleX(417), ScaleY(101), true, 2);
CurrentPicture:=1;
ShowImage(piclist.strings[CurrentPicture-1], 1, 1000);
TimerID:=SetTimer(0, 0, 3000, WrapTimerProc(@OnTimer, 4)); //задержка 3000 мс (3 секунды)
end;
if CurPageID=wpFinished then
begin
KillTimer(0, TimerID);
DeinitializeSlideShow;
end;
end;
procedure DeinitializeSetup();
begin
DeinitializeSlideShow;
KillTimer(0, TimerID);
end;
//////////////
procedure InitializeWizard();
begin
InitializeWizard1();
InitializeWizard2();
end;
procedure CurPageChanged(CurPageID: Integer);
begin
CurPageChanged1(CurPageID);
CurPageChanged2(CurPageID);
end;
Сборка:
http://rghost.ru/58771778
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC