Shegorat
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору #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 UserInfoPage=false DisableDirPage=true [Languages] Name: RUS; MessagesFile: compiler:Languages\Russian.isl [Types] Name: full; Description: Полная установка Name: custom; Description: Выборочная установка; Flags: iscustom Name: compact; Description: Компактная установка [Components] Name: sicoca; Description: Перезагрузить скины, удалив файл кэша; Types: compact custom full; Flags: disablenouninstallwarning Name: ts3; Description: Установить патчь ''NoCD'' для The Sims™ 3; Types: compact custom full Name: resce; Description: Установить файл ''Resource.cfg''; Types: compact custom full Name: unpt; Description: Установить патчь-антицензор; Types: compact custom full Name: bdshop; Description: Создание персонажей в The Sims 3; Types: full; Flags: checkablealone Collapsed Name: bdshop\ntabfma; Description: Обнаженное тело во всех разделах игры The Sims 3; Types: full; Flags: exclusive Name: bdshop\ncssnr; Description: Обнаженное тело в разделах ''Ночное белье'' и ''Купальные костюмы''; Types: full; Flags: exclusive Name: bdshop\wom; Description: Обнаженное тело взрослой женщины; Flags: checkablealone Collapsed; 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\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 Collapsed 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 Collapsed Name: bdshop\itdstsr\iywmal\mfuba; Description: Мужское тело с сосками, без волос на теле; Types: full; Flags: exclusive Name: bdshop\itdstsr\iywmal\mwiha; Description: Мужское тело с сосками и волосами на теле; Types: full; Flags: exclusive Name: bdshop\itdtsr; 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\mesh4; Description: Замена всего мужского тела; Types: full; Flags: exclusive Name: gmmod\mdem\dmenr\mesh3; Description: Замена основных частей тела; Types: full; Flags: exclusive Name: gmmod\mdem\dmenr\mesh2; 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; Flags: checkablealone Collapsed Name: gmmod\inteen\updat\tabmp; Description: Taboo Mod + Polygamy - включает полигамию; Types: full Name: gmmod\inteen\updat\ubta; Description: Uber Taboo + Polygamy - полигамные связи со всеми; Types: full Name: gmmod\alamft; Description: Материнство для подростков; Types: full Name: gmmod\alamft; Description: Woohoo + беременность и брак для подростков; Types: full Name: sims; Description: Готовые персонажи для The Sims 3; Types: full; Flags: checkablealone Collapsed Name: sims\pahi; Description: Пэрис Хилтон; Types: full [Files] Source: ISSkin.dll; DestDir: {app}; Flags: dontcopy Source: Vista.cjstyles; DestDir: {tmp}; Flags: dontcopy Source: get_hw_caps.dll; Flags: dontcopy Source: 1.bmp; DestDir: {tmp}; Flags: dontcopy Source: InnoCallback.dll; 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: gmmod\alamft gmmod\inteen\updat\ubta gmmod\inteen\updat\tabmp gmmod\inteen\enab gmmod\mdem\dmenr\mesh2 gmmod\mdem\dmenr\mesh3 gmmod\mdem\dmenr\mesh4 gmmod\mdem\mesh0 gmmod\mdem\mesh1 bdshop\itdtsr bdshop\itdstsr\iywmal\mwiha bdshop\itdstsr\iywmal\mfuba bdshop\itdstsr\iywdet\fnion bdshop\itdstsr\iywdet\ffuba bdshop\itdstsr\motefafe bdshop\itdstsr\motefama bdshop\itdstsr\insksh bdshop\wom\nbnbtr\nude\bram bdshop\wom\nbnbtr\nude\braal bdshop\wom\nbnbtr\nudetop bdshop\wom\bbcm bdshop\ncssnr bdshop\ntabfma gmmod\inteen\updat gmmod\inteen gmmod\mdem\dmenr gmmod\mdem bdshop\itdstsr\iywmal bdshop\itdstsr\iywdet bdshop\itdstsr bdshop\wom\nbnbtr\nude bdshop\wom\nbnbtr bdshop\wom ;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\updat\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\updat\tabmp ;Source: ..\Sims 3\Game Mods\Inteen 3\Taboo__Polygamy_UPDATED\gameplay.package; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: gmmod\inteen\updat\tabmp ;Source: ..\Sims 3\Game Mods\Inteen 3\Uber_Taboo__Polygamy_UPDATED\TeenPregnancyVers3.package; DestDir: {app}\Mods\Packages; Flags: ignoreversion; Components: gmmod\inteen\updat\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\updat\ubta ;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: unpt ;Source: ..\Sims 3\TS3.exe; DestDir: {app}\Game\Bin; Flags: ignoreversion; BeforeInstall: CreateBackup; Components: ts3 [Registry] Root: HKCU; Subkey: Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder; Flags: deletekey noerror [CustomMessages] RUS.BUT=Установить RUS.SPACE=Доступно места на диске: RUS.SPACE1=Требуется места на диске: RUS.DRT=Обновить DirectX RUS.UP=Идет обновление DirectX... RUS.UninstallProgram=Удалить %1 [Code] const NeedVideo= 256000000; //Видеопамять Byte NeedRAM= 1024; //Оперативная память Mb NeedProcessor= 2800; //Процессор, частота Mg NeedMemory= 2000; //Файл подкачки Mb var DirectX, RunProgram: TCheckBox; SelectDirLabel, SelectDirLabelBrowse, RunProgramLabel, DirectXLabel: TLabel; PageNameLabel, PageNameLabel1, PageNameLabel2, PageNameLabel3, PageNameLabel4, PageNameLabel5, PageNameLabel6, PageNameLabel7, PageNameLabel8: TLabel; PageDescriptionLabel, PageDescriptionLabel1, PageDescriptionLabel2, PageDescriptionLabel3, PageDescriptionLabel4, PageDescriptionLabel5, PageDescriptionLabel6, PageDescriptionLabel7, PageDescriptionLabel8: TLabel; StatusLabel, FilenameLabel, NeedSpaceLabel,FreeSpaceLabel: TLabel; WelcomeLabel1, WelcomeLabel2,FinishedLabel, FinishedHeadingLabel: TLabel; SelectStartMenuFolderLabel, SelectStartMenuFolderBrowseLabel, ReadyLabel, NoIconsLabel: TLabel; LicenseLabel1, LicenseAcceptedLabel, LicenseNotAcceptedLabel: Tlabel; InfoBeforeClickLabel, InfoAfterClickLabel: TLabel; NeedSize:Integer; FreeMB, TotalMB: Cardinal; BmpFile: TBitmapImage; SystemPequirementPage: TWizardPage; RequirementLabel1,RequirementLabel2, SelectComponentsLabel:TLabel; PageID,ResultCode: Integer; function GetLogicalDrives: DWORD; external 'GetLogicalDrives@kernel32.dll stdcall'; function GetDriveType(nDrive: String): Longint; external 'GetDriveTypeA@kernel32.dll stdcall'; function GetVideoCardName(): PChar; external 'hwc_GetVideoCardName@files:get_hw_caps.dll stdcall'; function GetSoundCardName(): PChar; external 'hwc_GetSoundCardName@files:get_hw_caps.dll stdcall'; function DetectHardware(): Integer; external 'hwc_DetectHardware@files:get_hw_caps.dll stdcall'; function GetHardDriveFreeSpace(hdd: integer): Integer; external 'hwc_GetHardDriveFreeSpace@files:get_hw_caps.dll stdcall'; function GetHardDriveName(hdd: integer): PChar; external 'hwc_GetHardDriveName@files:get_hw_caps.dll stdcall'; function GetHardDriveTotalSpace(hdd: integer): Integer; external 'hwc_GetHardDriveTotalSpace@files:get_hw_caps.dll stdcall'; function GetHardDrivesCount(): Integer; external 'hwc_GetHardDrivesCount@files:get_hw_caps.dll stdcall'; function GetSoundCards(): Integer; external 'hwc_GetSoundCards@files:get_hw_caps.dll stdcall'; function GetSystemPage(): Integer; external 'hwc_GetSystemPage@files:get_hw_caps.dll stdcall'; function GetSystemPhys(): Integer; external 'hwc_GetSystemPhys@files:get_hw_caps.dll stdcall'; function GetVidMemLocal(): Integer; external 'hwc_GetVidMemLocal@files:get_hw_caps.dll stdcall'; function GetVidMemNonLocal(): Integer; external 'hwc_GetVidMemNonLocal@files:get_hw_caps.dll stdcall'; function GetVideoCardDev(): Integer; external 'hwc_GetVideoCardDev@files:get_hw_caps.dll stdcall'; function GetVideoCardVen(): Integer; external 'hwc_GetVideoCardVen@files:get_hw_caps.dll stdcall'; function MoveFile(const srcFile, destFile: PChar): Integer; external 'MoveFileA@kernel32.dll stdcall'; function DelSp(const s:string):string;// функция удаления пробелов в начале строки var c, i: integer; stt, st, st1: string; begin c := 0; st := s; for i := 1 to Length(st) do begin stt := copy(st, i, 1); if (stt = ' ') and (c >= 1) then begin st1 := st1; c := c + 1; end else if (stt = ' ') and (c = 0) then begin c := c + 1; st1 := st1 + stt; end else if (stt <> ' ') then begin c := 0; st1 := st1 + stt; end end; Result:= st1; end; function CheckSystemPage(PreviousPageId: Integer): Integer; var ProcessorName:string; Processor,VideoCardPanel,AudioCardPanel,RAMPanel,PageFilePanel: TPanel; ProcessorNamePanel,VideoCardNamePanel,AudioCardNamePanel,RAMTotalPanel,PageFileTotalPanel: TPanel; ProcessorMHZ: Cardinal; VidRam:integer; begin RegQueryStringValue(HKLM, 'HARDWARE\DESCRIPTION\System\CentralProcessor\0','ProcessorNameString', ProcessorName); RegQueryDWordValue(HKLM, 'HARDWARE\DESCRIPTION\System\CentralProcessor\0','~MHz', ProcessorMHZ); GetVidMemLocal; GetSoundCards; SystemPequirementPage := CreateCustomPage(PreviousPageId,'Апаратное Обеспечение','Программа установки обнаружила следуюшие необходимые компоненты'); Processor := TPanel.Create(SystemPequirementPage); with Processor do begin Parent := SystemPequirementPage.Surface; Caption := ' Процессор'; Left := ScaleX(40); Top := ScaleY(102); Font.Color:= clBlack; alignment:=taLeftJustify; Width := ScaleX(121); Height := ScaleY(25); BevelInner := bvLowered; TabOrder := 0; end; ProcessorNamePanel := TPanel.Create(SystemPequirementPage); with ProcessorNamePanel do begin Parent := SystemPequirementPage.Surface; Caption :=DelSP(ProcessorName)+' '+IntToStr(ProcessorMHZ)+'MHz' ; //новое обработанное значение строки // Caption :=ProcessorName+' '+IntToStr(ProcessorMHZ)+'MHz' ; Left := ScaleX(168); Top := ScaleY(102); Font.Color:= clBlack; alignment:=taLeftJustify; Width := ScaleX(281); Height := ScaleY(25); BevelInner := bvLowered; Color :=$ccffcc; TabOrder := 1; end; if ProcessorMHZ<NeedProcessor then begin ProcessorNamePanel.Color:=clRed; RequirementLabel1.Caption:='Не все компоненты удовлетворяют требованиям игры.'; end; VideoCardPanel:=TPanel.Create(SystemPequirementPage); with VideoCardPanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' Видеоадаптер'; Left:=ScaleX(40); Font.Color:= clBlack; alignment:=taLeftJustify; Top:=Processor.Top+27; Width:=ScaleX(121); Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=0; end; VideoCardNamePanel:=TPanel.Create(SystemPequirementPage); with VideoCardNamePanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' '+GetVideoCardName; //+' ОЗУ-'+inttostr(round(GetVidMemLocal/1000000))+' МБ'; //Caption:=' ОЗУ-'+inttostr(GetVidMemLocal)+' МБ'; VidrAM:= GetVidMemLocal/1000000; if VidRam>127 then begin if VidRam<200 then Caption:=Caption+' 128 МB' else if VidRam<300 then Caption:=Caption+' 256 МB' else if VidRam<400 then Caption:=Caption+' 384 МB' else if VidRam<600 then Caption:=Caption+' 512 МB' else if VidRam<700 then Caption:=Caption+' 678 МB' else if VidRam<800 then Caption:=Caption+' 756 МB' else if VidRam<1000 then Caption:=Caption+' 884 МB' else if VidRam<1100 then Caption:=Caption+' 1024 МB' else if VidRam<1200 then Caption:=Caption+' 1152 МB' else if VidRam<1300 then Caption:=Caption+' 1280 МB'; end; Left:=ScaleX(168); Top:=VideoCardPanel.Top; Font.Color:= clBlack; alignment:=taLeftJustify; Width:=ScaleX(281); Height:=ScaleY(25); BevelInner:=bvLowered; Color :=$ccffcc; TabOrder:=1; end; if GetVidMemLocal<NeedVideo then //128MB begin RequirementLabel1.Caption:='Не все компоненты удовлетворяют требованиям игры.'; VideoCardNamePanel.Color:=clRed; end; AudioCardPanel:=TPanel.Create(SystemPequirementPage); with AudioCardPanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' Звуковая карта'; Left:=ScaleX(40); Top:=VideoCardPanel.Top+27; Font.Color:= clBlack; alignment:=taLeftJustify; Width:=ScaleX(121); Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=0; end; AudioCardNamePanel:=TPanel.Create(SystemPequirementPage); with AudioCardNamePanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' '+GetSoundCardName; Left:=ScaleX(168); Font.Color:= clBlack; alignment:=taLeftJustify; Top:=AudioCardPanel.Top; Width:=ScaleX(281); Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=1; Color :=$ccffcc; end; if GetSoundCards=0 then begin RequirementLabel1.Caption:='Не все компоненты удовлетворяют требованиям игры.'; AudioCardNamePanel.Color:=clRed; end; RAMPanel:=TPanel.Create(SystemPequirementPage); with RAMPanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' ОЗУ' Left:=40; Top:=AudioCardPanel.Top+27; Font.Color:= clBlack; alignment:=taLeftJustify; Width:=ScaleX(121); Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=0; end; RAMTotalPanel:=TPanel.Create(SystemPequirementPage); with RAMTotalPanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' '+IntToStr(GetSystemPhys+1) +' MB' Left:=AudioCardNamePanel.Left; Top:=RAMPanel.Top; Font.Color:= clBlack; alignment:=taLeftJustify; Width:=AudioCardNamePanel.Width; Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=1; Color :=$ccffcc; end; if GetSystemPhys+1<NeedRAM then begin RAMTotalPanel.Color:=clRed; RequirementLabel1.Caption:='Не все компоненты удовлетворяют требованиям игры.'; end; PageFilePanel:=TPanel.Create(SystemPequirementPage); with PageFilePanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' Файл подкачки'; alignment:=taLeftJustify; Left:=40; Top:=RAMPanel.Top+27; Font.Color:= clBlack; Width:=RAMPanel.Width; Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=0; end; PageFileTotalPanel:=TPanel.Create(SystemPequirementPage); with PageFileTotalPanel do begin Parent:=SystemPequirementPage.Surface; Caption:=' '+IntToStr(GetSystemPage)+' MB'; Left:=RAMTotalPanel.Left; Top:=PageFilePanel.Top; Font.Color:= clBlack; alignment:=taLeftJustify; Width:=RAMTotalPanel.Width; Height:=ScaleY(25); BevelInner:=bvLowered; TabOrder:=1; Color :=$ccffcc; end; if GetSystemPage<NeedMemory then begin PageFileTotalPanel.Color:=clRed; RequirementLabel1.Caption:='Не все компоненты удовлетворяют требованиям игры.'; end; Result := SystemPequirementPage.ID; end; procedure CreateBackup; var srcFile, destFile: string; basePath, shortPath: string; begin if IsComponentSelected('ts3') or IsComponentSelected('unpt')or IsComponentSelected('gmmod\inteen\updat\tabmp') or IsComponentSelected('gmmod\inteen\updat\ubta') or IsComponentSelected('gmmod\inteen\updat') 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; 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 InstallDirectX: Boolean; begin Result:= DirectX.Checked; end; function InstallRedist: Boolean; begin Result:=Redist.Checked; end; function CreateIcons: Boolean; begin Result:=Icons.Checked; end; function GroupIcons: Boolean; begin Result:=Group.Checked; end; function Run: Boolean; begin Result:=RunProgram.Checked; end; // задал процедуру, чтоб отмечался чебокс еси кликнуть по надписи lblCheckBox procedure RedistOnClick(Sender: TObject); begin if Redist.Checked = False then Redist.Checked:= True else Redist.Checked:= False; end; procedure DirectXLabelOnClick(Sender: TObject); begin if DirectX.Checked = False then DirectX.Checked:= True else DirectX.Checked:= False; end; procedure IconsOnClick(Sender: TObject); begin if Icons.Checked = False then Icons.Checked:= True else Icons.Checked:= False; end; procedure GroupOnClick(Sender: TObject); begin if Group.Checked = False then Group.Checked:= True else Group.Checked:= False; end; procedure RunProgramOnClick(Sender: TObject); begin if RunProgram.Checked = False then RunProgram.Checked:= True else RunProgram.Checked:= False; end; Procedure NoIconsLabelOnClick (Sender: TObject); begin WizardForm.NoIconsCheck.Checked:=Not(WizardForm.NoIconsCheck.Checked) end; procedure LicenceAcceptedRadioOnClick(Sender: TObject); begin WizardForm.NextButton.Enabled:=True end; procedure LicenceNotAcceptedRadioOnClick(Sender: TObject); begin WizardForm.NextButton.Enabled:=False end; Procedure YesRadioOnClick (Sender: TObject); begin WizardForm.LicenseAcceptedRadio.Checked:=True end; Procedure NoRadioOnClick (Sender: TObject); begin WizardForm.LicenseNotAcceptedRadio.Checked:=True end; // задал процедуру, чтоб отмечался чебокс еси кликнуть по надписи lblCheckBox //Свободное место 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:SPACE} ')+ FloatToStr(round(FreeMB/1024*100)/100) + ' GB' else FreeSpaceLabel.Caption := ExpandConstant('{cm:SPACE} ')+ IntToStr(FreeMB)+ ' MB'; 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:SPACE1} ')+ FloatToStr(round(NeedSize/1024*100)/100) + ' GB' else NeedSpaceLabel.Caption := ExpandConstant('{cm:SPACE1} ')+ IntToStr(NeedSize)+ ' MB'; end; //Свободное место procedure FilenameExt(); begin FilenameLabel.Caption:= ExpandConstant(ExtractFileDir(CurrentFilename)) + '\' + ExtractFilename(CurrentFilename); end; //Загрузка скина 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 InitializeSetup(): Boolean; begin ExtractTemporaryFile('Vista.cjstyles'); LoadSkin(ExpandConstant('{tmp}\Vista.cjstyles'), ''); 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; procedure DeinitializeSetup(); begin ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); UnloadSkin(); if (PageID=wpFinished) and (RunProgram.Checked) then Exec(ExpandConstant('{app}\Game\Bin\Sims3Launcher.exe'), '', '', SW_SHOWNORMAL, ewNoWait, ResultCode); if (PageID=wpFinished) and (DirectX.Checked) then Exec(ExpandConstant('{src}\DirectX\DXSETUP.exe'), '/silent', 'ExpandConstant(''{src}\DirectX\'')', SH_SHOWHIDE, ewNoWait, ResultCode) end; //Загрузка скина procedure InitializeWizard(); begin ExtractTemporaryFile('1.bmp'); CheckSystemPage(wpLicense); NeedSize:= 7980; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.WelcomePage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.LicensePage; BmpFile:= TBitmapImage.Create(SystemPequirementPage); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= SystemPequirementPage.Surface; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.InfoBeforePage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.SelectComponentsPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.SelectDirPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.InstallingPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.InfoAfterPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.FinishedPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.SelectProgramGroupPage; BmpFile:= TBitmapImage.Create(WizardForm); BmpFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\1.bmp')); BmpFile.SetBounds(0, 0, 497, 360); BmpFile.Stretch:= true BmpFile.Parent:= WizardForm.ReadyPage; with WizardForm do begin PageNameLabel.Hide; PageDescriptionLabel.Hide; WelcomeLabel1.Hide; WelcomeLabel2.Hide; DiskSpaceLabel.Hide; SelectDirBitmapImage.Hide; SelectDirBrowseLabel.Hide; SelectDirLabel.Hide; FinishedHeadingLabel.Hide; FinishedLabel.Hide; MainPanel.Hide FilenameLabel.Hide; StatusLabel.Hide; SelectStartMenuFolderLabel.Hide; SelectStartMenuFolderBrowseLabel.Hide; ReadyLabel.Hide; LicenseLabel1.Hide; InfoBeforeClickLabel.Hide; InfoAfterClickLabel.Hide; SelectComponentsLabel.Hide; ComponentsDiskSpaceLabel.Hide; end; with WizardForm do begin DirBrowseButton.Left:= DirBrowseButton.Left + ScaleX(40); DirBrowseButton.Top:= DirBrowseButton.Top + ScaleY(72); DirEdit.Left:= DirEdit.Left + ScaleX(40); DirEdit.Top:= DirEdit.Top + ScaleY(72); GroupBrowseButton.Left:= GroupBrowseButton.Left + ScaleX(40); GroupBrowseButton.Top:= GroupBrowseButton.Top + ScaleY(72); GroupEdit.Left:= GroupEdit.Left + ScaleX(40); GroupEdit.Top:= GroupEdit.Top + ScaleX(72); GroupEdit.Color:= ClBlack NextButton.BringToFront; BackButton.BringToFront; CancelButton.BringToFront; Font.Style:=[]; Font.Name:= 'MS Sans Serif'; DirEdit.Color:=clBlack; DirEdit.Font.Color:= clWhite; Font.Color:=clBlack; ProgressGauge.Top:=ScaleY(120); ProgressGauge.Left:=ScaleX(20); ProgressGauge.Width:=ScaleX(457); ReadyMemo.Left:=ScaleX(40); ReadyMemo.Top:= WizardForm.ReadyMemo.Top + ScaleY(72) ReadyMemo.Font.Color:= clBlack; ReadyMemo.ScrollBars:= ssVertical; //ssNone end; with WizardForm do begin InnerNotebook.Left := ScaleX(0); InnerNotebook.Top := ScaleY(0); InnerNotebook.Width := ScaleX(497); InnerNotebook.Height := ScaleY(360); OuterNotebook.Left := ScaleX(0); OuterNotebook.Top := ScaleY(0); OuterNotebook.Width := ScaleX(497); OuterNotebook.Height := ScaleY(360); end; //WelcomePage WelcomeLabel1:= TLabel.Create(WizardForm); with WelcomeLabel1 do begin Left:= ScaleX(176); Top:= ScaleY(66); Width:= ScaleX(301); Height:= ScaleY(71); AutoSize:= false; Transparent:= true; WordWrap:= true; Font.Size:= 14; Font.Color:=clBlack Font.Style := [fsBold] Parent:= WizardForm.WelcomePage; Caption:= WizardForm.WelcomeLabel1.Caption; end; WelcomeLabel2:=TLabel.Create(WizardForm); with WelcomeLabel2 do begin Top:= ScaleY(136); Left:= ScaleX(176); Width:= ScaleX(301); Height:= ScaleY(300); AutoSize:= false; WordWrap:= true; Transparent:= true; Parent:= WizardForm.WelcomePage; Caption:= WizardForm.WelcomeLabel2.Caption; end; //WelcomePage //licensePage LicenseLabel1:=TLabel.Create(WizardForm) with LicenseLabel1 do begin Left:=40 Top:=70 Width:=465 Height:=28 AutoSize:=False WordWrap:=True Transparent:=True Caption:=WizardForm.LicenseLabel1.Caption Parent:=WizardForm.LicensePage end; WizardForm.LicenseMemo.Left:=40 WizardForm.LicenseMemo.Top:=108 WizardForm.LicenseMemo.Parent:=WizardForm.LicensePage WizardForm.LicenseAcceptedRadio.Left:=40 WizardForm.LicenseAcceptedRadio.Top:=265 WizardForm.LicenseAcceptedRadio.Width:=14 WizardForm.LicenseAcceptedRadio.Height:=14 WizardForm.LicenseAcceptedRadio.Color:=clBlack WizardForm.LicenseAcceptedRadio.Parent:=WizardForm.LicensePage LicenseAcceptedLabel:=TLabel.Create(WizardForm) with LicenseAcceptedLabel do begin Left:=56 Top:=265 Transparent:=True Caption:=WizardForm.LicenseAcceptedRadio.Caption Parent:=WizardForm.LicensePage OnClick:= @YesRadioOnClick end; WizardForm.LicenseNotAcceptedRadio.Left:=40 WizardForm.LicenseNotAcceptedRadio.Top:=285 WizardForm.LicenseNotAcceptedRadio.Width:=14 WizardForm.LicenseNotAcceptedRadio.Height:=14 WizardForm.LicenseNotAcceptedRadio.Color:=clBlack WizardForm.LicenseNotAcceptedRadio.Parent:=WizardForm.LicensePage LicenseNotAcceptedLabel:=TLabel.Create(WizardForm) with LicenseNotAcceptedLabel do begin Left:=56 Top:=285 Transparent:=True Caption:=WizardForm.LicenseNotAcceptedRadio.Caption Parent:=WizardForm.LicensePage; OnClick:= @NoRadioOnClick; end; PageNameLabel:= TLabel.Create(WizardForm); with PageNameLabel do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.LicensePage; end; PageDescriptionLabel:= TLabel.Create(WizardForm); with PageDescriptionLabel do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.LicensePage; end; //LicensePage //SystemRequirementPage RequirementLabel1:=TLabel.Create(SystemPequirementPage); with RequirementLabel1 do begin Parent:=SystemPequirementPage.Surface; Caption:='Все компоненты удовлетворяют требованиям игры.'; Left:=40; Top:=65; Height:=14 Width:=360 AutoSize:=False; Transparent:= true; WordWrap:= true; end; RequirementLabel2:=TLabel.Create(SystemPequirementPage); with RequirementLabel2 do begin Parent:=SystemPequirementPage.Surface; Caption:='Когда будете готовы продолжить установку, нажмите «Далее»' Left:=40; Top:=280; Height:=14 Width:=360 AutoSize:=False; Transparent:= true; WordWrap:= true; end; PageNameLabel1:= TLabel.Create(SystemPequirementPage); with PageNameLabel1 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= SystemPequirementPage.Surface; end; PageDescriptionLabel1:= TLabel.Create(SystemPequirementPage); with PageDescriptionLabel1 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= SystemPequirementPage.Surface; end; //SystemRequirementPage //ComponentsPage SelectComponentsLabel:= TLabel.Create(WizardForm); with SelectComponentsLabel do begin Left:= ScaleX(40); Top:= ScaleY(70); Width:= WizardForm.SelectComponentsLabel.Width; Height:= WizardForm.SelectComponentsLabel.Height; Autosize:= false; WordWrap:= true; Transparent:= true; Parent:= WizardForm.SelectComponentsPage; Caption:= WizardForm.SelectComponentsLabel.Caption; end; WizardForm.ComponentsList.Left:= ScaleX(40); WizardForm.ComponentsList.Top:= ScaleY(148); WizardForm.ComponentsList.Font.Color:= clBlack WizardForm.ComponentsList.Color:= clWindow WizardForm.TypesCombo.Left:= ScaleX(40); WizardForm.TypesCombo.Top:= ScaleY(120) WizardForm.TypesCombo.Font.Color:= ClBlack; PageNameLabel2:= TLabel.Create(WizardForm); with PageNameLabel2 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.InfoBeforePage; end; PageDescriptionLabel2:= TLabel.Create(WizardForm); with PageDescriptionLabel2 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.InfoBeforePage; end; //ComponentsPage //InfoBeforePage InfoBeforeClickLabel:= TLabel.Create(WizardForm); with InfoBeforeClickLabel do begin Left:= ScaleX(40); Top:= ScaleY(70) Width:= WizardForm.InfoBeforeClickLabel.Width; Height:= WizardForm.InfoBeforeClickLabel.Height; Transparent:= true; AutoSize:= False; WordWrap:= true; Parent:= WizardForm.InfoBeforePage; Caption:= WizardForm.InfoBeforeClickLabel.Caption; end; WizardForm.InfoBeforeMemo.left:= ScaleX(40); WizardForm.InfoBeforeMemo.Top:= ScaleY(108); PageNameLabel3:= TLabel.Create(WizardForm); with PageNameLabel3 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.InfoBeforePage; end; PageDescriptionLabel3:= TLabel.Create(WizardForm); with PageDescriptionLabel3 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.InfoBeforePage; end; //InfoBeforePage //SelectDirPage SelectDirLabel:= TLabel.Create(WizardForm); with SelectDirLabel do begin Caption:= WizardForm.SelectDirLabel.Caption; Left:= ScaleX(40); Top:= WizardForm.SelectDirLabel.Top + ScaleY(62); Width:= WizardForm.SelectDirLabel.Width; Height:= WizardForm.SelectDirLabel.Height; Transparent := True; Parent:= WizardForm.SelectDirPage; end; SelectDirLabelBrowse:= TLabel.Create(WizardForm); with SelectDirLabelBrowse do begin Caption:= WizardForm.SelectDirBrowseLabel.Caption; Left:= ScaleX(40); Top:= WizardForm.SelectDirBrowseLabel.Top + ScaleY(62); Width:= WizardForm.SelectDirBrowseLabel.Width; Height:= WizardForm.SelectDirBrowseLabel.Height; WordWrap:= True; Transparent:= True; Parent:= WizardForm.SelectDirPage; end; PageNameLabel4:= TLabel.Create(WizardForm); with PageNameLabel4 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.SelectDirPage; end; PageDescriptionLabel4:= TLabel.Create(WizardForm); with PageDescriptionLabel4 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.SelectDirPage; end; NeedSpaceLabel:= TLabel.Create(WizardForm); with NeedSpaceLabel do begin Parent:= WizardForm.SelectDirPage; Left:= WizardForm.DirEdit.Left; Top:= ScaleY(262); Width:= ScaleX(209); Height:= ScaleY(13); Transparent:= True; end; FreeSpaceLabel:= TLabel.Create(WizardForm); with FreeSpaceLabel do begin Parent:= WizardForm.SelectDirPage; Left:= WizardForm.DirEdit.Left; Top:= ScaleY(280); Width:= ScaleX(209); Height:= ScaleY(13); Transparent:= True; end; WizardForm.DirEdit.OnChange:= @GetFreeSpaceCaption; WizardForm.DirEdit.Text:= WizardForm.DirEdit.Text + #0; //SelectDirPage //ProgrammGroupPage SelectStartMenuFolderLabel:=TLabel.Create(WizardForm) with SelectStartMenuFolderLabel do begin Left:= ScaleX(40); Top:= WizardForm.SelectDirLabel.Top + ScaleY(62); Width:= WizardForm.SelectDirBrowseLabel.Width; Height:= WizardForm.SelectDirBrowseLabel.Height; AutoSize:=False WordWrap:=True Transparent:=True Caption:=WizardForm.SelectStartMenuFolderLabel.Caption Parent:=WizardForm.SelectProgramGroupPage end; SelectStartMenuFolderBrowseLabel:=TLabel.Create(WizardForm) with SelectStartMenuFolderBrowseLabel do begin Left:= ScaleX(40); Top:= WizardForm.SelectDirBrowseLabel.Top + ScaleY(62); Width:= WizardForm.SelectDirBrowseLabel.Width Height:= WizardForm.SelectDirBrowseLabel.Height AutoSize:=False WordWrap:=True Transparent:=True Caption:=WizardForm.SelectStartMenuFolderBrowseLabel.Caption Parent:=WizardForm.SelectProgramGroupPage end; WizardForm.NoIconsCheck.Left:=ScaleX(40); WizardForm.NoIconsCheck.Top:= WizardForm.DirEdit.Top + ScaleY(140) WizardForm.NoIconsCheck.Width:=13 WizardForm.NoIconsCheck.Height:=13 WizardForm.NoIconsCheck.Visible:=True WizardForm.NoIconsCheck.Parent:= WizardForm.SelectProgramGroupPage NoIconsLabel:=TLabel.Create(WizardForm) with NoIconsLabel do begin Left:=ScaleX(56); Top:= WizardForm.DirEdit.Top + ScaleY(140) Transparent:=True OnClick:= @NoIconsLabelOnClick Caption:=WizardForm.NoIconsCheck.Caption Parent:=WizardForm.SelectProgramGroupPage end; PageNameLabel5:= TLabel.Create(WizardForm); with PageNameLabel5 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.SelectProgramGroupPage; end; PageDescriptionLabel5:= TLabel.Create(WizardForm); with PageDescriptionLabel5 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.SelectProgramGroupPage; end; //ProgrammGroupPage //ReadyPage ReadyLabel:= TLabel.Create(WizardForm); with ReadyLabel do begin Left:= ScaleX(40); Top:= ScaleY(70); Width:= ScaleX(325); Height:= ScaleY(30); AutoSize:= False; Transparent:= true; Caption:= 'Нажмите «Установить», чтобы продолжить, или «Назад», если Вы хотите' + #10 + 'просмотреть или изменить опции установки.' Parent:= WizardForm.ReadyPage; end; PageNameLabel6:= TLabel.Create(WizardForm); with PageNameLabel6 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.ReadyPage; end; PageDescriptionLabel6:= TLabel.Create(WizardForm); with PageDescriptionLabel6 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.ReadyPage; end; //ReadyPage //InstallingPage StatusLabel:= TLabel.Create(WizardForm); with StatusLabel do begin Left:= ScaleX(20); Top:= ScaleY(80); Width:= WizardForm.StatusLabel.Width; Height:= WizardForm.StatusLabel.Height; AutoSize:= False; Transparent := True; Parent:= WizardForm.InstallingPage; Caption:= 'Распаковка файлов...' end; FilenameLabel:= TLabel.Create(WizardForm); with FilenameLabel do begin Left:= ScaleX(20); Top:= ScaleY(100); Width:= WizardForm.StatusLabel.Width; Height:= WizardForm.StatusLabel.Height; AutoSize:= False; Transparent := True; Parent:= WizardForm.InstallingPage; end; PageNameLabel7:= TLabel.Create(WizardForm); with PageNameLabel7 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.InstallingPage; end; PageDescriptionLabel7:= TLabel.Create(WizardForm); with PageDescriptionLabel7 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.InstallingPage; end; //InstallingPage //InfoAfterPage InfoAfterClickLabel:= TLabel.Create(WizardForm); with InfoAfterClickLabel do begin Left:= ScaleX(40); Top:= ScaleY(70) Width:= WizardForm.InfoAfterClickLabel.Width; Height:= WizardForm.InfoAfterClickLabel.Height; Transparent:= true; AutoSize:= False; WordWrap:= true; Parent:= WizardForm.InfoAfterPage; Caption:= WizardForm.InfoAfterClickLabel.Caption; end; WizardForm.InfoAfterMemo.left:= ScaleX(40); WizardForm.InfoAfterMemo.Top:= ScaleY(108); PageNameLabel8:= TLabel.Create(WizardForm); with PageNameLabel8 do begin Left:= WizardForm.PageNameLabel.Left; Top:= WizardForm.PageNameLabel.Top; Width:= ScaleX(300); Height:= ScaleY(14); AutoSize:= False; Font.Style:= [fsBold]; Font.Color:= clBlack; Transparent := True; Parent:= WizardForm.InfoAfterPage; end; PageDescriptionLabel8:= TLabel.Create(WizardForm); with PageDescriptionLabel8 do begin Left:= WizardForm.PageDescriptionLabel.Left; Top:= WizardForm.PageDescriptionLabel.top; Width:= ScaleX(400); Height:= WizardForm.PageDescriptionLabel.Height; AutoSize:= False; Wordwrap:= True; Transparent := True; Parent:= WizardForm.InfoAfterPage; end; //InfoAfterPage //FinishedPage FinishedHeadingLabel:=TLabel.Create(WizardForm); with FinishedHeadingLabel do begin Top:= ScaleY(66); Left:= ScaleX(176); Width:= ScaleX(301); Height:= ScaleY(53); AutoSize:= false; WordWrap:= true; Font.Size:= 14; Font.Color:=clBlack Font.Style := [fsBold] Transparent:= true; Parent:= WizardForm.FinishedPage; Caption:= WizardForm.FinishedHeadingLabel.Caption; end; FinishedLabel:= TLabel.Create(WizardForm); with FinishedLabel do begin Left:= ScaleX(176); Top:= ScaleY(136); Width:= ScaleX(301); Height:= ScaleY(54); AutoSize:= false; WordWrap:= true; Transparent:= true; Parent:= WizardForm.FinishedPage; Caption:= 'Дополнение к игре The Sims™ 3 установлено на Ваш компьютер.' + #10#13#10 + 'Нажмите «Завершить», чтобы выйти из программы' + #10 + 'установки.' end; RunProgram:= TCheckBox.Create(WizardForm); with RunProgram do begin Parent:= WizardForm.FinishedPage; Left:= ScaleX(176); Top:= ScaleY(200); Width:= ScaleX(14); Height:= ScaleY(14); TabOrder:= 4; Checked:= True; end; RunProgramLabel:= TLabel.Create(WizardForm); with RunProgramLabel do begin Caption:='Запустить The Sims™ 3'; Left:= ScaleX(196); Top:= ScaleY(200); Width:= ScaleX(150); Height:= ScaleY(13); Transparent := True; Parent:= WizardForm.FinishedPage; OnClick:= @RunProgramOnClick; end; DirectX:= TCheckBox.Create(WizardForm); with DirectX do begin Parent:= WizardForm.FinishedPage; Left:= ScaleY(215); Top:= ScaleX(176); Width:= ScaleX(14); Height:= ScaleY(14); TabOrder:= 0; Checked:= False; end; DirectXLabel:= TLabel.Create(WizardForm); with DirectXLabel do begin Caption:= ExpandConstant('{cm:DRT}'); Left:= ScaleY(215); Top:= ScaleX(196); Width:= ScaleX(150); Height:= ScaleY(13); Transparent := True; Parent:= WizardForm.FinishedPage; OnClick:= @DirectXLabelOnClick; end; //FinishedPage end; procedure CurPageChanged(CurPageID: Integer); begin PageNameLabel.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel1.Caption:= 'Апаратное Обеспечение'; PageDescriptionLabel1.Caption:= 'Программа установки обнаружила следуюшие необходимые компоненты'; PageNameLabel2.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel2.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel3.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel3.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel4.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel4.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel5.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel5.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel6.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel6.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel7.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel7.Caption:= WizardForm.PageDescriptionLabel.Caption; PageNameLabel8.Caption:= WizardForm.PageNameLabel.Caption; PageDescriptionLabel8.Caption:= WizardForm.PageDescriptionLabel.Caption; PageID:=CurPageID; if CurPageID = wpSelectDir then begin GetNeedSpaceCaption; if FreeMB < NeedSize then WizardForm.NextButton.Enabled:=False; begin if CurPageID=wpInstalling then if CurPageID=wpFinished then begin WizardForm.Width:=497; WizardForm.Height:=358; WizardForm.Position:=poScreenCenter; end end; end; end; procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep = usPostUninstall then begin MoveDir(ExpandConstant('{app}\Game\Bin\Backup\'), ExpandConstant('{app}\Game\Bin')); RemoveDir(ExpandConstant('{app}\Game\Bin\Backup\')); end; end; | Всего записей: 695 | Зарегистр. 09-06-2009 | Отправлено: 05:50 25-07-2009 | Исправлено: Shegorat, 05:53 25-07-2009 |
|