Новый участник
Сообщения: 24
Благодарности: 1
|
Профиль
|
Отправить PM
| Цитировать
Прошу помощи у меня возникла проблема, в скрипте не работает бекап файлов:
в папку Backup файлы копируются, а при деинсталляции подмененные файлы просто удаляются, из бекапа не восстанавливаются. Вот мой скрипт, даю его с небольшими сокращениями и жду помощи.
читать дальше »
Код: 
#define TIME_FOR_VIEW 4
#include "SHFileOperation.iss"
[Setup]
AppName=The Sims™ 3
UninstallDisplayName={#SetupSetting("AppName")}
AppVerName=1.0.631
DefaultDirName={code:GetInstallPath}
UninstallFilesDir={pf}\InstallShield Installation Information\{{C05D8CDB-417D-4335-A38C-A0659EDFD6B8}
DefaultGroupName=Electronic Arts\The Sims™ 3
AppID={{C05D8CDB-417D-4335-A38C-A0659EDFD6B8}
Compression=lzma/ultra64
InternalCompressLevel=ultra64
DiskSliceSize=1561610132
ReserveBytes=0
MinVersion=0,5.01.2600sp1
AppVersion=1.0.631
VersionInfoVersion=1.0.631
VersionInfoCompany=Electronic Arts, Inc.
VersionInfoCopyright=Copyright © 2005-2009 Electronic Arts Inc.
AppPublisherURL=http://www.TheSims3.com
AppCopyright=Copyright © 2005-2009 Electronic Arts Inc.
AppPublisher=Electronic Arts
VersionInfoTextVersion=2009-06-19-1744 (by codebuilder on SIMS-BUILD141)
SetupIconFile=E:\Мои документы\Мои Проекты\EA Games\Electronic Arts\Sims3.ico
UninstallDisplayIcon={app}\Game\Bin\eauninstall.ico
ComponentsListTVStyle=true
ComponentsListBtnImageFile=btnimage.bmp
LanguageDetectionMethod=none
ShowLanguageDialog=no
DirExistsWarning=no
UserInfoPage=false
SolidCompression=true
DiskSpanning=true
TimeStampsInUTC=true
AlwaysShowDirOnReadyPage=true
AlwaysShowGroupOnReadyPage=true
ShowTasksTreeLines=true
AlwaysUsePersonalGroup=true
FlatComponentsList=false
AllowNoIcons=true
AllowRootDirectory=true
RestartIfNeededByRun=false
DisableDirPage=false
DisableProgramGroupPage=true
ChangesEnvironment=true
[Types]
Name: full; Description: Полная установка
Name: custom; Description: Выборочная установка; Flags: iscustom
Name: compact; Description: Компактная установка
[Components]
Name: sims3; Description: Установить патчь ''NoCD'' для The Sims™ 3; Types: compact custom full
Name: resce; Description: Установить файл ''Resource.cfg''; Types: compact custom full
Name: sicoca; Description: Перезагрузить скины, удалив файл кэша; Types: compact custom full; Flags: disablenouninstallwarning
Name: bdshop; Description: Создание персонажей в The Sims 3; Types: full; Flags: checkablealone Collapsed
Name: bdshop\ncssnr; Description: Обнаженное тело в разделах ''Ночное белье'' и ''Купальные костюмы''; Types: full; Flags: exclusive
Name: bdshop\ntabfma; Description: Обнаженное тело во всех разделах игры The Sims 3; Types: full; Flags: exclusive
Name: bdshop\wom; Description: Обнаженное тело взрослой женщины; Flags: checkablealone; Types: full
Name: bdshop\wom\bbcm; Description: Прорисованная женская грудь; Types: full
Name: bdshop\wom\nbnbtr; Description: Невидимый бюстгальтер и топлес для женщин; Types: full; Flags: checkablealone Collapsed
Name: bdshop\wom\nbnbtr\nudetop; Description: Топлес для женского тела; Types: full
Name: bdshop\wom\nbnbtr\nude; Description: Бюстгальтер без бретелек; Types: full; Flags: checkablealone Collapsed
Name: bdshop\wom\nbnbtr\nude\braal; Description: Невидимый бюстгальтер (обычный бюстгальтер будет недоступен); Types: full; Flags: exclusive
Name: bdshop\wom\nbnbtr\nude\bram; Description: Бюстгальтер без бретелек в разделе ''Ночное белье''; Types: full; Flags: exclusive
Name: bdshop\itdtsr; Description: Текстуры тела с блеском кожи и лобковыми волосами; Types: full; Flags: exclusive
Name: bdshop\itdstsr; Description: Текстуры тела с блеском кожи без лобковых волос; Types: full; Flags: exclusive checkablealone Collapsed
Name: bdshop\itdstsr\insksh; Description: Натуральный блеск кожи; Types: full
Name: bdshop\itdstsr\motefama; Description: Мужское лицо в деталях; Types: full
Name: bdshop\itdstsr\motefafe; Description: Женское лицо в деталях; Types: full
Name: bdshop\itdstsr\iywdet; Description: Женское тело в деталях; Types: full; Flags: checkablealone
Name: bdshop\itdstsr\iywdet\ffuba; Description: Женское тело, грудь без сосков; Types: full; Flags: exclusive
Name: bdshop\itdstsr\iywdet\fnion; Description: Женское тело, грудь с сосками; Types: full; Flags: exclusive
Name: bdshop\itdstsr\iywmal; Description: Мужское тело в деталях; Types: full; Flags: checkablealone
Name: bdshop\itdstsr\iywmal\mwiha; Description: Мужское тело с сосками и волосами на теле; Types: full; Flags: exclusive
Name: bdshop\itdstsr\iywmal\mfuba; Description: Мужское тело с сосками, без волос на теле; Types: full; Flags: exclusive
Name: gmmod; Description: Моды для игры The Sims 3; Types: full; Flags: checkablealone Collapsed
Name: gmmod\mdem; Description: Обнаженное тело взрослого мужчины; Types: full; Flags: checkablealone Collapsed
Name: gmmod\mdem\mesh1; Description: Взрослый мужчина без волос на теле; Types: full; Flags: exclusive
Name: gmmod\mdem\mesh0; Description: Взрослый мужчина с волосами на теле; Types: full; Flags: exclusive
Name: gmmod\mdem\dmenr; Description: Пенис для взрослого мужского тела; Types: full; Flags: checkablealone Collapsed
Name: gmmod\mdem\dmenr\mesh2; Description: Пенис в состоянии эрекции; Types: full; Flags: exclusive
Name: gmmod\mdem\dmenr\mesh3; Description: Замена основной части тела; Types: full; Flags: exclusive
Name: gmmod\mdem\dmenr\mesh4; Description: Замена всего мужского тела; Types: full; Flags: exclusive
Name: gmmod\inteen; Description: INTEEN 3 MOD с обновлением; Types: full; Flags: checkablealone Collapsed
Name: gmmod\inteen\enab; Description: INTEEN 3 MOD - включить романтические опции; Types: full
Name: gmmod\inteen\updat; Description: Обновление для INTEEN 3 MOD; Types: full
Name: gmmod\inteen\tabmp; Description: Taboo Mod + Polygamy - включает полигамию; Types: full
Name: gmmod\inteen\ubta; Description: Uber Taboo + Polygamy - полигамные связи со всеми; Types: full
Name: gmmod\alamft; Description: Материнство для подростков; Types: full
Name: gmmod\alamft; Description: Woohoo + беременность и брак для подростков; Types: full
Name: gmmod\unpt; Description: Патч Антицензор; Types: full
Name: sims; Description: Готовые персонажи для The Sims 3; Types: full; Flags: checkablealone Collapsed
Name: sims\pahi; Description: Пэрис Хилтон; Types: full
[Tasks]
Name: src; Description: Сохранить резервную копию файлов; Components: sims3 gmmod\inteen\tabmp gmmod\inteen\ubta gmmod\inteen\updat gmmod\unpt
[Files]
Source: InnoCallback.dll; Flags: dontcopy
Source: images\Image_*.bmp; Flags: dontcopy
Source: descctrl.dll; DestDir: {tmp}; Flags: dontcopy
Source: {app}\Game\Bin\eauninstall.ico; DestDir: {app}\Game\Bin; Flags: uninsneveruninstall external dontcopy
Source: ..\Electronic Arts\The Sims 3\Resource.cfg; DestDir: {app}; Flags: ignoreversion; Components: resce
; Бекап файлов в папке с игрой
; Source: {app}\Game\Bin\gameplay.package; DestDir: {app}\Game\Bin; Flags: external ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\inteen\tabmp gmmod\inteen\ubta gmmod\inteen\updat
; Source: {app}\Game\Bin\Shaders_Win32.precomp; DestDir: {app}\Game\Bin; Flags: external ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\unpt
; Source: {app}\Game\Bin\TS3.exe; DestDir: {app}\Game\Bin; Flags: external ignoreversion; BeforeInstall: CreateBackup; Components: sims3
; Taboo Mod + Polygamy enables the same as INTEEN 3
Source: ..\Sims 3\Game Mods\Inteen 3\Taboo__Polygamy_UPDATED\Sanati's no jealousy mod (to be used in conjunction with TeenPregnancy mod).package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\inteen\tabmp
Source: ..\Sims 3\Game Mods\Inteen 3\Taboo__Polygamy_UPDATED\TeenPregnancyNoJealousy (needs Sanati's no jealousy mod to work).package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\inteen\tabmp
Source: ..\Sims 3\Game Mods\Inteen 3\Taboo__Polygamy_UPDATED\gameplay.package; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\inteen\tabmp
; Uber Taboo + Polygamy is the same as Taboo + Polygamy
Source: ..\Sims 3\Game Mods\Inteen 3\Uber_Taboo__Polygamy_UPDATED\TeenPregnancyVers3.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\inteen\ubta
Source: ..\Sims 3\Game Mods\Inteen 3\Uber_Taboo__Polygamy_UPDATED\gameplay.package; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\inteen\ubta
; INTEEN 3 MOD - UPDATED
Source: ..\Sims 3\Game Mods\Inteen 3\Inteen_3_-_UPDATED\TeenPregnancyVers3.package; DestDir: {app}\Mods\Packages; Flags: replacesameversion; Components: gmmod\inteen\updat
Source: ..\Sims 3\Game Mods\Inteen 3\Inteen_3_-_UPDATED\gameplay.package; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\inteen\updat
Source: ..\Sims 3\Game Mods\The Uncensored Patch\Shaders_Win32.precomp; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\unpt
Source: ..\Sims 3\TS3.exe; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: sims3
; All Adult Maternity For Teens
Source: ..\Sims 3\Game Mods\Teen Woohoo + Pregnancy-Marriage\gameplay.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\alamft
; Это не в бекапе INTEEN 3 MOD - d3dx9_31.dll
Source: ..\Sims 3\Game Mods\Inteen 3\d3dx9_31\d3dx9_31.dll; DestDir: {app}\Game\Bin; Flags: ignoreversion; Components: gmmod\inteen\enab
Source: ..\Sims 3\Game Mods\Inteen 3\d3dx9_31\d3dx9_31.dll; DestDir: {app}\Game\Bin; Flags: ignoreversion; Components: gmmod\inteen\updat
Source: ..\Sims 3\Game Mods\Inteen 3\d3dx9_31\d3dx9_31.dll; DestDir: {app}\Game\Bin; Flags: ignoreversion; Components: gmmod\inteen\tabmp
Source: ..\Sims 3\Game Mods\Inteen 3\d3dx9_31\d3dx9_31.dll; DestDir: {app}\Game\Bin; Flags: ignoreversion; Components: gmmod\alamft
; Nude Bra and Nude Body Top Replacement
Source: ..\Sims 3\Body Shop\Body Types\Nude Bra and Nude Body Top Replacement\MTS_Inks71_nudebraAlphaHide.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: bdshop\wom\nbnbtr\nude\braal
Source: ..\Sims 3\Body Shop\Body Types\Nude Bra and Nude Body Top Replacement\MTS_Inks71_nudeBraMesh.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: bdshop\wom\nbnbtr\nude\bram
Source: ..\Sims 3\Body Shop\Body Types\Nude Bra and Nude Body Top Replacement\MTS_Inks71_nudeTop0.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: bdshop\wom\nbnbtr\nudetop
=======разрыв кода========
Source: ..\Sims 3\Game Mods\Teen Woohoo + Pregnancy-Marriage\TeenMarriage.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\alamft
Source: ..\Sims 3\Game Mods\Teen Woohoo + Pregnancy-Marriage\TeenPregnancyNoJealousy (needs Sanati's no jealousy mod to work).package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\alamft
Source: ..\Sims 3\Game Mods\Teen Woohoo + Pregnancy-Marriage\TeenPregnancyVers3.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\alamft
Source: ..\Sims 3\Sims\Celebrities & Real People\Female\Paris Hilton (sims3)\Paris Hilton_v2.Sims3Pack; DestDir: {userdocs}\Electronic Arts\The Sims 3\Downloads; Flags: ignoreversion uninsneveruninstall; Components: sims\pahi
[Icons]
Name: {group}\{cm:UninstallProgram,addons The Sims™ 3}; Filename: {uninstallexe}; WorkingDir: {app}\Game\Bin; IconFilename: {app}\Game\Bin\eauninstall.ico; IconIndex: 0
[InstallDelete]
Name: {userdocs}\Electronic Arts\The Sims 3\simCompositorCache.package; Type: files; Components: sicoca
Name: {app}\Mods.*; Type: dirifempty
Name: {app}\Mods\*.*; Type: dirifempty
Name: {app}\Mods\Packages.*; Type: dirifempty
Name: {app}\Resource.cfg; Type: files
Name: {app}\Game\Bin\d3dx9_31.dll; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudeTop0.package; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudeBraMesh.package; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudebraAlphaHide.package; Type: files
=======разрыв кода========
Name: {app}\Mods\Packages\tm-NudeFormalTop.package; Type: files
Name: {app}\Mods\Packages\tm-NudeSleepBottom.package; Type: files
Name: {app}\Mods\Packages\gameplay.package; Type: files
[Languages]
Name: ru; MessagesFile: compiler:Languages\Russian.isl
[CustomMessages]
UninstallProgram=Удалить %1
[Registry]
Root: HKCU; Subkey: Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder; Flags: deletekey noerror
[Run]
Filename: {app}\Game\Bin\Sims3Launcher.exe; Description: {cm:LaunchProgram,программу запуска игры The Sims™ 3} и установить дополнения; WorkingDir: {app}\Game\Bin; Flags: nowait skipifdoesntexist postinstall skipifsilent hidewizard
[UninstallDelete]
Name: {app}\Game\Bin\d3dx9_31.dll; Type: files
Name: {app}\Mods.*; Type: dirifempty
Name: {app}\Mods\*.*; Type: dirifempty
Name: {app}\Mods\Packages.*; Type: dirifempty
Name: {app}\Resource.cfg; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudeTop0.package; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudeBraMesh.package; Type: files
Name: {app}\Mods\Packages\MTS_Inks71_nudebraAlphaHide.package; Type: files
Name: {app}\Mods\Packages\afbottomnude_jonha.package; Type: files
Name: {app}\Mods\Packages\aftopnude_jonha.package; Type: files
Name: {app}\Mods\Packages\ambottomnude_jonha.package; Type: files
===========разрыв кода===========
Name: {app}\Mods\Packages\tm-NudeFormalTop.package; Type: files
Name: {app}\Mods\Packages\tm-NudeSleepBottom.package; Type: files
Name: {app}\Mods\Packages\gameplay.package; Type: files
[Code]
// Бекап файлов
function MoveFile(const srcFile, destFile: PChar): Integer;
external 'MoveFileA@kernel32.dll stdcall';
procedure CreateBackup;
var
srcFile, destFile: string;
basePath, shortPath: string;
begin
if IsTaskSelected('src') then
begin
basePath := ExpandConstant('{app}\Game\Bin');
srcFile := ExpandConstant(CurrentFileName);
shortPath := srcFile;
StringChangeEx(shortPath, basePath, '', True);
destFile := ExpandConstant('{app}\Game\Bin\Backup') + shortPath;
ForceDirectories(ExtractFilePath(destFile));
MoveFile(PChar(srcFile), PChar(destFile));
end;
end;
procedure CurUninstallStepChanged1(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then
begin
MoveDir(ExpandConstant('{app}\Game\Bin\Backup\'), ExpandConstant('{app}\Game\Bin\Backup'));
RemoveDir(ExpandConstant('{app}\Game\Bin\Backup\'));
end;
end;
// Скрипт устанавливает зеленый цвет выбора компонентов и различные эффекты
// Как изменять строки в секции [Components] (при выборе компонентов)
// WizardForm.ComponentsList.ItemFontStyle[5] - порядковый номер строки компонентов, отражает название компонента в секции [Components]
// [fsBold] - полужирный шрифт
// [fsItalic] - курсив шрифта
// [fsUnderline] - подчеркнутый шрифт
// [fsStrikeOut] - зачеркнутый шрифт
// WizardForm.ComponentsList.SubItemFontStyle[5] - порядковый номер размера компонента
// Flags: Collapsed - говорит компилятору, что по умолчанию эти компоненты свернуты
procedure InitializeWizard2();
begin
WizardForm.ComponentsList.ItemFontStyle[0] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[1] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[2] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[3] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[6] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[10] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[14] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[18] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[21] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[24] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[25] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[28] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[32] := [fsBold];
WizardForm.ComponentsList.ItemFontStyle[40] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[0] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[1] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[2] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[3] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[6] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[10] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[14] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[18] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[21] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[24] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[25] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[28] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[32] := [fsBold];
WizardForm.ComponentsList.SubItemFontStyle[40] := [fsBold];
end;
//Запуск программы, проверка ключа в реестре
function GetInstallPath( AppID: String ): String;
var Path: String;
begin
Path:= '';
if not RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{C05D8CDB-417D-4335-A38C-A0659EDFD6B8}','InstallLocation', Path) then
RegQueryStringValue(HKLM, 'SOFTWARE\Sims\The Sims 3','Install Dir', Path);
Result := Path;
end;
function InitializeSetup() : Boolean;
begin
Result := True;
if (FileSearch('Game\Bin\TS3.exe', ExpandConstant('{code:GetInstallPath}')) = '') then
begin
MsgBox('Для установки этого дополнения требуется предварительная установка игры {#SetupSetting("AppName")}.' #13#13
'Установите {#SetupSetting("AppName")}, после этого продолжите установку дополнения.' ,mbCriticalError , mb_Ok);
Result:= False;
exit;
end
end;
// Слайд-шоу в окне инсталлятора
type
TProc = procedure(HandleW, msg, idEvent, TimeSys: 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';
var
TimerID: LongWord;
currTime: Integer;
SplashImage: TBitmapImage;
procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
begin
currTime := currTime + 1;
case currTime of
{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_2.bmp')) end;
2*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_3.bmp')) end;
3*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_4.bmp')) end;
// 4*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_5.bmp')) end;
// 5*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_6.bmp')) end;
// 6*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_7.bmp')) end;
// 7*{#TIME_FOR_VIEW}: begin SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_8.bmp')) end;
end;
if CurrTime = 3*{#TIME_FOR_VIEW} then CurrTime := -1;
// if CurrTime = 7*{#TIME_FOR_VIEW} then CurrTime := -1;
end;
procedure DeInitializeSetup();
begin
KillTimer(0, TimerID);
end;
procedure InitializeWizard3;
begin
ExtractTemporaryFile('Image_1.bmp');
ExtractTemporaryFile('Image_2.bmp');
ExtractTemporaryFile('Image_3.bmp');
ExtractTemporaryFile('Image_4.bmp');
// ExtractTemporaryFile('Image_5.bmp');
// ExtractTemporaryFile('Image_6.bmp');
// ExtractTemporaryFile('Image_7.bmp');
// ExtractTemporaryFile('Image_8.bmp');
currTime := 0;
SplashImage := TBitmapImage.Create(WizardForm);
SplashImage.Top := 0;
SplashImage.Left := 0;
SplashImage.Width := WizardForm.MainPanel.Width;
SplashImage.Height := WizardForm.Bevel.Top;
SplashImage.Parent := WizardForm.InnerPage;
SplashImage.Stretch := True;
SplashImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\Image_1.bmp'));
SplashImage.Hide;
WizardForm.ProgressGauge.Parent := WizardForm;
WizardForm.ProgressGauge.Top := WizardForm.CancelButton.Top + ScaleY(12);
WizardForm.ProgressGauge.Left := ScaleX(10);
WizardForm.ProgressGauge.Width := WizardForm.MainPanel.Width - ScaleX(20);
WizardForm.ProgressGauge.Height := 16;
WizardForm.ProgressGauge.Hide;
WizardForm.FileNameLabel.Parent := WizardForm;
WizardForm.FileNameLabel.Top := WizardForm.ProgressGauge.Top - ScaleY(18);
WizardForm.FileNameLabel.Left := ScaleX(10);
WizardForm.FileNameLabel.Width := ScaleX(397);
WizardForm.FileNameLabel.Hide;
end;
procedure CurPageChanged3(CurPageID: Integer);
var
pfunc: LongWord;
begin
if (CurPageID = wpInstalling) then
begin
pfunc := WrapTimerProc(@OnTimer, 5);
TimerID := SetTimer(0, 0, 1000, pfunc);
WizardForm.PageNameLabel.Visible:=false
WizardForm.PageDescriptionLabel.Visible:=false
WizardForm.InnerNotebook.Hide;
WizardForm.Bevel1.Hide;
WizardForm.MainPanel.Hide;
WizardForm.PageNameLabel.Hide;
WizardForm.PageDescriptionLabel.Hide;
WizardForm.ProgressGauge.Show;
WizardForm.FileNameLabel.Show;
SplashImage.Show;
WizardForm.CancelButton.Enabled :=True
WizardForm.CancelButton.Top := WizardForm.Bevel.Top + ScaleY(100)
end else
begin
WizardForm.ProgressGauge.Hide;
SplashImage.Hide;
WizardForm.FileNameLabel.Hide;
if (CurPageID > wpInstalling) and (CurPageID < wpFinished) then
begin
WizardForm.InnerNotebook.Show;
WizardForm.Bevel1.Show;
WizardForm.MainPanel.Show;
WizardForm.PageNameLabel.Show;
WizardForm.PageDescriptionLabel.Show;
end;
If CurPageID=wpFinished then
end;
end;
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
CurUninstallStepChanged1(CurUninstallStep);
end;
procedure InitializeWizard();
begin
InitializeWizard2();
InitializeWizard3();
end
procedure CurPageChanged(CurPageID: Integer);
begin
CurPageChanged3(CurPageID);
end;
|