MS_RAMIS Posted July 1, 2017 Share Posted July 1, 2017 ВСЕМ Привет!!! увы я не гуру в Inno Setup помогите сделать встроенный wot_tweaker в установщике, то есть мне нужно что бы после страницы модов шла страница "Повысить FPS" с чебоксами отключения различных эффектов @ Quote Link to comment Short link Share on other sites More sharing options...
Nowik1971 Posted July 1, 2017 Share Posted July 1, 2017 ВСЕМ Привет!!! увы я не гуру в Inno Setup помогите сделать встроенный wot_tweaker в установщике, то есть мне нужно что бы после страницы модов шла страница "Повысить FPS" с чебоксами отключения различных эффектов Вот посмотри я ссылку давал .. готовый модпак и там исходник.. возьми и посмотри, скопируй , поизучай! https://koreanrandom.com/forum/topic/9050-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%81%D1%82%D0%B0%D0%BB%D0%BB%D1%8F%D1%82%D0%BE%D1%80%D0%BE%D0%B2-%D0%B4%D0%BB%D1%8F-%D0%BC%D0%BE%D0%B4%D0%BF%D0%B0%D0%BA%D0%BE%D0%B2-%D0%BD%D0%B0-%D0%B1%D0%B0%D0%B7%D0%B5-inno-setup/page-240?do=findComment&comment=395128 1 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 1, 2017 Share Posted July 1, 2017 (edited) ВСЕМ Привет!!! увы я не гуру в Inno Setup помогите сделать встроенный wot_tweaker в установщике, то есть мне нужно что бы после страницы модов шла страница "Повысить FPS" с чебоксами отключения различных эффектов я тоже не гуру но можно сделать просто вот так))) [Setup] AppName="ххх" AppVersion=1.0 DefaultDirName=C:\Games\World_of_Tanks\ AppendDefaultDirName=no [Tasks] Name: "K"; Description: "WoT Tweaker Plus - для повышения FPS"; Flags: unchecked; Name: "K\2"; Description: "Увеличение максимальной дальности видимости"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\3"; Description: "Удаление тумана на всех картах"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\4"; Description: "Отключить эффекты погоды и дым на картах"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\5"; Description: "Отключить эффект взрыва снарядов и попадания в объекты"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\6"; Description: "Отключить облака"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\7"; Description: "Отключить дым от уничтоженных танков"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\8"; Description: "Отключить эффекты попадания по танкам"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\9"; Description: "Отключить тень под танками"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\10"; Description: "Отключить дым и пламя от выстрелов"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\11"; Description: "Отключить дым из выхлопных труб танков"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\12"; Description: "Отключить эффект движения деревьев"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; [Files] ///////////////////////////////////////////////////////////////////// WoT Tweaker Plus /////////////////////////// Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\2 Увеличение максимальной дальности видимости\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\2; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\3 Удаление тумана на всех картах\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\3; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\4 Отключить эффекты проявления погоды и дым от объектов на картах\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\4; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\5 Отключить эффект взрыва снарядов и попадания в объекты\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\5; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\6 Отключить облака\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\6; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\7 Отключить дым от уничтоженных танков\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\7; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\8 Отключить эффекты попадания по танкам\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\8; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\9 Отключить тень под танками\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\9; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\10 Отключить дым и пламя от выстрелов\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\10; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\11 Отключить дым из выхлопных труб танков\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\11; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\12 Отключить эффект движения деревьев\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\12; BeforeInstall: и после модов у тебя будет отдельная страница для твикера))) Edited July 1, 2017 by ЛОМ 2 @ Quote Link to comment Short link Share on other sites More sharing options...
MS_RAMIS Posted July 1, 2017 Share Posted July 1, 2017 я тоже не гуру но можно сделать просто вот так))) [Setup] AppName="ххх" AppVersion=1.0 DefaultDirName=C:\Games\World_of_Tanks\ AppendDefaultDirName=no [Tasks] Name: "K"; Description: "WoT Tweaker Plus - для повышения FPS"; Flags: unchecked; Name: "K\2"; Description: "Увеличение максимальной дальности видимости"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\3"; Description: "Удаление тумана на всех картах"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\4"; Description: "Отключить эффекты погоды и дым на картах"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\5"; Description: "Отключить эффект взрыва снарядов и попадания в объекты"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\6"; Description: "Отключить облака"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\7"; Description: "Отключить дым от уничтоженных танков"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\8"; Description: "Отключить эффекты попадания по танкам"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\9"; Description: "Отключить тень под танками"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\10"; Description: "Отключить дым и пламя от выстрелов"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\11"; Description: "Отключить дым из выхлопных труб танков"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; Name: "K\12"; Description: "Отключить эффект движения деревьев"; GroupDescription: "Отключение эффектов:"; Flags: unchecked; [Files] ///////////////////////////////////////////////////////////////////// WoT Tweaker Plus /////////////////////////// Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\2 Увеличение максимальной дальности видимости\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\2; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\3 Удаление тумана на всех картах\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\3; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\4 Отключить эффекты проявления погоды и дым от объектов на картах\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\4; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\5 Отключить эффект взрыва снарядов и попадания в объекты\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\5; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\6 Отключить облака\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\6; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\7 Отключить дым от уничтоженных танков\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\7; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\8 Отключить эффекты попадания по танкам\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\8; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\9 Отключить тень под танками\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\9; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\10 Отключить дым и пламя от выстрелов\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\10; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\11 Отключить дым из выхлопных труб танков\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\11; BeforeInstall: Source: "F:\А ДЛЯ СБОРКИ\МОДЫ\МОДЫ\0 1 WoT Tweaker Plus\12 Отключить эффект движения деревьев\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Tasks: K\12; BeforeInstall: и после модов у тебя будет отдельная страница для твикера))) СПАСИБО БОЛЬШОЕ ))) только можно как нибудь изменить размер содержимого окна. т.е. у меня получилось не на все окно ... @ Quote Link to comment Short link Share on other sites More sharing options...
Nowik1971 Posted July 1, 2017 Share Posted July 1, 2017 (edited) СПАСИБО БОЛЬШОЕ ))) только можно как нибудь изменить размер содержимого окна. т.е. у меня получилось не на все окно ... В редакторе форм инно поменяй Таск ширину и высоту.... как надо растяни Edited July 1, 2017 by Nowik1971 1 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 1, 2017 Share Posted July 1, 2017 (edited) СПАСИБО БОЛЬШОЕ ))) только можно как нибудь изменить размер содержимого окна. т.е. у меня получилось не на все окно ... в редакторе форм. В Select TasksPage просто растяни на сколько тебе нужно. ответили уже)) не заметил)) Edited July 1, 2017 by ЛОМ 1 @ Quote Link to comment Short link Share on other sites More sharing options...
sergy2010 Posted July 2, 2017 Share Posted July 2, 2017 (edited) with WizardForm.TasksList do begin Left := ScaleX(172); Top := ScaleY(60); Width := ScaleX(444); Height := ScaleY(228); Color := clBlack; Font.Color := clWhite; Font.Height := -19; Font.Name := 'Times New Roman'; OnClick := @TasksListClick; ParentFont := False; end; в скрипте такое найди и меняй и двигай куда хочешь Edited July 2, 2017 by sergy2010 @ Quote Link to comment Short link Share on other sites More sharing options...
MS_RAMIS Posted July 2, 2017 Share Posted July 2, 2017 в редакторе форм. В Select TasksPage просто растяни на сколько тебе нужно. ответили уже)) не заметил)) через редактор форм менял размер ... и получил код { RedesignWizardFormBegin } // Не удалять эту строку! // Не изменять эту секцию. Она создана автоматически. procedure RedesignWizardForm; begin with WizardForm.TasksList do begin Width := ScaleX(600); Height := ScaleY(350); end; { ReservationBegin } // Вы можете добавить ваш код здесь. { ReservationEnd } end; // Не изменять эту секцию. Она создана автоматически. { RedesignWizardFormEnd } // Не удалять эту строку! при компиляции выдает ошибку вот код [Code] //--------------- ФАК ---------------\\ var InfoForm: TSetupForm; Info, Ok: TButton; InfoBefore: TRichEditViewer; ReadmeRu,ReadmeEn: AnsiString; procedure Okclick(Sender: TObject); begin InfoForm.Close; WizardForm.Enabled:=True; end; procedure FormClose(Sender: TObject; var Action: TCloseAction); begin WizardForm.Enabled:=true; end; procedure InfoClick(Sender: TObject); begin InfoForm:= CreateCustomForm(); with InfoForm do begin ClientWidth := ScaleX(600); ClientHeight := ScaleY(400); CenterInsideControl(WizardForm, False); Caption:='Страница FAQ'; onClose:=@FormClose; Ok:=tbutton.create(InfoForm) with Ok do begin SetBounds(ScaleX(490),ScaleY(370),ScaleX(80),ScaleY(25)); parent:=InfoForm; Caption:='Закрыть'; onclick:=@OKclick; end; InfoBefore:= TRichEditViewer.Create(InfoForm); with InfoBefore do begin SetBounds(ScaleX(10),ScaleY(10),ScaleX(580),ScaleY(355)); Parent:= InfoForm; // ParentColor := True; // Color:= WizardForm.Color; // BorderStyle:= bsNone; ScrollBars:= ssVertical; ReadOnly:= true; RTFText:= ReadmeRu end; InfoForm.Show; WizardForm.Enabled:=false; end; end; procedure InitializeWizard3(); begin ExtractTemporaryFile('ReadMeRu.rtf'); LoadStringFromFile(ExpandConstant('{tmp}')+'\ReadMeRu.rtf', ReadmeRu); Info:=tbutton.create(WizardForm); with Info do begin Parent:=WizardForm; SetBounds(ScaleX(115),ScaleY(497),ScaleX(80),ScaleY(23)); Caption:='F.A.Q'; OnClick:=@InfoClick; end; end; //--------------- ФАК ---------------\\ function MyDirName(S:String): String; var InsPath: String; er: boolean; myFile:String; begin Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath); if er and (InsPath<>'') then //если ключ существует и там что-то записано begin Result := InsPath; end; end; //==== Проверка WoT ====\\ function NextButtonClick(CurPageID: Integer): Boolean; begin Result := True; case CurPageID of wpSelectDir: if not FileExists(ExpandConstant('{app}\WorldOfTanks.exe')) then begin MsgBox('Не верно указана папка с игрой World_of_Tanks!', mbError, MB_OK); Result := False; end; end; end; //==== Проверка WoT ====\\ //==== Переход на сайт ====\\ Procedure GoToSite(CurStep: TSetupStep); var RC: Integer; begin if CurStep = ssDone then begin ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, RC); end; end; //==== Переход на сайт ====\\ procedure LogoOnClick(Sender: TObject); var ResCode: Integer; begin ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode) end; var BitmapImage1: TBitmapImage; procedure RedesignWizardForm; var i: integer; BtnPanel: TPanel; BtnImage: TBitmapImage; begin ExtractTemporaryFile('logo_vk.bmp') BtnPanel:=TPanel.Create(WizardForm) with BtnPanel do begin Left:=20 Top:=494 Width:=85 Height:=27 Cursor:=crHand OnClick:=@logoOnClick Parent:=WizardForm end; BtnImage:=TBitmapImage.Create(WizardForm) with BtnImage do begin AutoSize:=True; Enabled:=False; Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo_vk.bmp') Parent:=BtnPanel end; { BitmapImage1 } BitmapImage1 := TBitmapImage.Create(WizardForm); with BitmapImage1 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(0); Top := ScaleY(115); Width := ScaleX(620); Height := ScaleY(260); ExtractTemporaryFile('WizardForm.BitmapImage1.bmp'); Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp')); end; end; function WindowResize(): Boolean; var HeightOffset, WidthOffset: Integer; begin HeightOffset:=170; WidthOffset:=200; WizardForm.Height:=WizardForm.Height + HeightOffset; WizardForm.Width:=WizardForm.Width + WidthOffset; WizardForm.NextButton.Top:=WizardForm.NextButton.Top + HeightOffset; WizardForm.BackButton.Top:=WizardForm.BackButton.Top + HeightOffset; WizardForm.CancelButton.Top:=WizardForm.CancelButton.Top + HeightOffset; WizardForm.NextButton.Left:=WizardForm.NextButton.Left + WidthOffset; WizardForm.BackButton.Left:=WizardForm.BackButton.Left + WidthOffset; WizardForm.CancelButton.Left:=WizardForm.CancelButton.Left + WidthOffset; WizardForm.OuterNotebook.Height:=WizardForm.OuterNotebook.Height + HeightOffset; WizardForm.InnerNotebook.Height:=WizardForm.InnerNotebook.Height + HeightOffset; WizardForm.OuterNotebook.Width:=WizardForm.OuterNotebook.Width + WidthOffset; WizardForm.InnerNotebook.Width:=WizardForm.InnerNotebook.Width + WidthOffset; WizardForm.WizardSmallBitmapImage.Left:= WizardForm.WizardSmallBitmapImage.Left + WidthOffset; WizardForm.Bevel.Top:=WizardForm.Bevel.Top + HeightOffset; WizardForm.BeveledLabel.Top:=WizardForm.BeveledLabel.Top + HeightOffset; WizardForm.Bevel.Width:=WizardForm.Bevel.Width + WidthOffset; WizardForm.Bevel1.Width:=WizardForm.Bevel1.Width + WidthOffset; WizardForm.MainPanel.Width:=WizardForm.MainPanel.Width + WidthOffset; WizardForm.BeveledLabel.Width:=WizardForm.BeveledLabel.Width + WidthOffset; WizardForm.Center; { /// --- Раскомментировать при желании ---- /// WizardForm.WelcomeLabel1.Hide; WizardForm.WelcomeLabel2.Hide; WizardForm.FinishedLabel.Hide; WizardForm.FinishedHeadingLabel.Hide; WizardForm.WizardBitmapImage.Width:=600; WizardForm.WizardBitmapImage.Height:=400; WizardForm.WizardBitmapImage2.Width:=600; WizardForm.WizardBitmapImage2.Height:=400; WizardForm.PageNameLabel.Hide; WizardForm.PageDescriptionLabel.Hide; WizardForm.WizardSmallBitmapImage.Top:=0; WizardForm.WizardSmallBitmapImage.Left:=0; WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width; WizardForm.WizardSmallBitmapImage.Height:=58; /// --- Конец ---- /// } WizardForm.WelcomeLabel1.Hide; WizardForm.WelcomeLabel2.Hide; WizardForm.WizardBitmapImage.Width:=697; WizardForm.WizardBitmapImage.Height:=483; WizardForm.FinishedHeadingLabel.Hide; WizardForm.FinishedLabel.Hide; WizardForm.YesRadio.Hide; WizardForm.NoRadio.Hide; WizardForm.WizardBitmapImage2.Width:=697; WizardForm.WizardBitmapImage2.Height:=483; WizardForm.PageNameLabel.Hide; WizardForm.PageDescriptionLabel.Hide; WizardForm.WizardSmallBitmapImage.Top:=0; WizardForm.WizardSmallBitmapImage.Left:=0; WizardForm.WizardSmallBitmapImage.Width:=697; WizardForm.WizardSmallBitmapImage.Height:=58; WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset; WizardForm.WelcomeLabel1.Height:=WizardForm.WelcomeLabel1.Height + HeightOffset; WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset; WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset; WizardForm.WelcomeLabel2.Height:=WizardForm.WelcomeLabel2.Height + HeightOffset; WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset; WizardForm.LicenseLabel1.Width:=WizardForm.LicenseLabel1.Width + WidthOffset; WizardForm.LicenseMemo.Height:=WizardForm.LicenseMemo.Height + HeightOffset; WizardForm.LicenseMemo.Width:=WizardForm.LicenseMemo.Width + WidthOffset; WizardForm.LicenseNotAcceptedRadio.Top:=WizardForm.LicenseNotAcceptedRadio.Top + HeightOffset; WizardForm.LicenseAcceptedRadio.Top:=WizardForm.LicenseAcceptedRadio.Top + HeightOffset; WizardForm.InfoBeforeClickLabel.Width:=WizardForm.InfoBeforeClickLabel.Width + WidthOffset; WizardForm.InfoBeforeMemo.Height:=WizardForm.InfoBeforeMemo.Height + HeightOffset; WizardForm.InfoBeforeMemo.Width:=WizardForm.InfoBeforeMemo.Width + WidthOffset; WizardForm.SelectDirLabel.Width:=WizardForm.SelectDirLabel.Width + WidthOffset; WizardForm.SelectDirBrowseLabel.Width:=WizardForm.SelectDirBrowseLabel.Width + WidthOffset; WizardForm.DiskSpaceLabel.Top:=WizardForm.DiskSpaceLabel.Top + HeightOffset; WizardForm.DirBrowseButton.Left:=WizardForm.DirBrowseButton.Left + HeightOffset; WizardForm.DirEdit.Width:=WizardForm.DirEdit.Width + HeightOffset; WizardForm.ComponentsDiskSpaceLabel.Top:=WizardForm.ComponentsDiskSpaceLabel.Top + HeightOffset; WizardForm.SelectComponentsLabel.Width:=WizardForm.SelectComponentsLabel.Width + WidthOffset; WizardForm.ComponentsList.Height:=WizardForm.ComponentsList.Height + HeightOffset; WizardForm.ComponentsList.Width:=WizardForm.ComponentsList.Width + WidthOffset; WizardForm.ReadyLabel.Width:=WizardForm.ReadyLabel.Width + WidthOffset; WizardForm.ReadyMemo.Height:=WizardForm.ReadyMemo.Height + HeightOffset; WizardForm.ReadyMemo.Width:=WizardForm.ReadyMemo.Width + WidthOffset; WizardForm.ProgressGauge.Width:=WizardForm.ProgressGauge.Width + HeightOffset; WizardForm.FilenameLabel.Width:=WizardForm.FilenameLabel.Width + HeightOffset; WizardForm.StatusLabel.Width:=WizardForm.StatusLabel.Width + HeightOffset; end; /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// type TComponentDesc = record Description: String; ImageName: String; Index: Integer; end; var CompDescs: array of TComponentDesc; CompDescPanel, CompDescImgPanel: TPanel; CompDescText: array[1..2] of TLabel; CompIndex, LastIndex: Integer; CompDescImg: TBitmapImage; procedure ShowCompDescription(Sender: TObject; X, Y, Index: Integer; Area: TItemArea); var i: Integer; begin if Index = LastIndex then Exit; CompIndex := -1; for i := 0 to GetArrayLength(CompDescs) -1 do begin if (CompDescs[i].Index = Index) then begin CompIndex := i; Break; end; end; if (CompIndex >= 0) and (Area = iaItem) then begin if not FileExists(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName) then ExtractTemporaryFile(CompDescs[CompIndex].ImageName); CompDescImg.Bitmap.LoadFromFile(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName); CompDescImg.Show; CompDescText[2].Caption := CompDescs[CompIndex].Description; CompDescText[2].Enabled := True; end else begin CompDescText[2].Caption := CustomMessage('ComponentsInfo'); CompDescText[2].Enabled := False; CompDescImg.Hide; end; LastIndex := Index; end; procedure CompListMouseLeave(Sender: TObject); begin CompDescImg.Hide; CompDescText[2].Caption := CustomMessage('ComponentsInfo'); CompDescText[2].Enabled := False; LastIndex := -1; end; procedure AddCompDescription(AIndex: Integer; ADescription: String; AImageName: String); var i: Integer; begin i := GetArrayLength(CompDescs); SetArrayLength(CompDescs, i + 1); CompDescs[i].Description := ADescription; CompDescs[i].ImageName := AImageName; CompDescs[i].Index := AIndex - 1 end; procedure InitializeWizard(); begin InitializeWizard1(); {из BackUpPage.iss} //InitializeWizard2(); {из Music.iss} InitializeWizard3(); RedesignWizardForm; WindowResize(); begin WizardForm.SelectComponentsLabel.Hide; WizardForm.TypesCombo.Hide; WizardForm.ComponentsList.SetBounds(ScaleX(260), ScaleY(20), ScaleX(357), ScaleY(333)); WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription; WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave; CompDescImgPanel := TPanel.Create(WizardForm); with CompDescImgPanel do begin Parent := WizardForm.SelectComponentsPage; SetBounds(ScaleX(0), ScaleY(20), ScaleX(253), ScaleY(203)); //рамка картинки BevelInner := bvLowered; end; CompDescText[1] := TLabel.Create(WizardForm); with CompDescText[1] do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); AutoSize := False; WordWrap := True; Enabled := False; Caption := CustomMessage('ComponentsImgInfo'); end; CompDescImg := TBitmapImage.Create(WizardForm); with CompDescImg do begin Parent := CompDescImgPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10)); Stretch := True; Hide; end; CompDescPanel := TPanel.Create(WizardForm); with CompDescPanel do begin Parent := WizardForm.SelectComponentsPage; SetBounds(ScaleX(0), ScaleY(230), ScaleX(253), ScaleY(123)); //Нижния рамка BevelInner := bvLowered; end; CompDescText[2] := TLabel.Create(WizardForm); with CompDescText[2] do begin Parent := CompDescPanel; SetBounds(ScaleX(5), ScaleY(5), CompDescPanel.Width - ScaleX(10), CompDescPanel.Height - ScaleY(10)); AutoSize := False; WordWrap := True; Enabled := False; Caption := CustomMessage('ComponentsInfo'); end; может кто поможет ... или возможно проще создать вторую страницу компонентов @ Quote Link to comment Short link Share on other sites More sharing options...
BeJIuKuu_TaHKoBbIu_BouH Posted July 2, 2017 Share Posted July 2, 2017 давай-ка побеседуем в ЛС. я тебе помогу. 2 1 @ Quote Link to comment Short link Share on other sites More sharing options...
MS_RAMIS Posted July 2, 2017 Share Posted July 2, 2017 давай-ка побеседуем в ЛС. я тебе помогу. СПАСИБО БОЛЬШОЕ за помощь, удачи тебе ;) 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 12, 2017 Share Posted July 12, 2017 всем привет. подскажите как сделать так чтобы по любому всё удалялось из папок модс и ресмодс при деинсталляции? просто файлы скачанные из инета он оставляет почему то. у меня ша так в коде прописано function BackupCheck_2(): Boolean; begin If DeleteRadioButton.Checked then begin DelTree(ExpandConstant('{app}\res_mods'), True, True, True); ForceDirectories(ExpandConstant('{app}\res_mods\{#Patch}')); DelTree(ExpandConstant('{app}\mods'), True, True, True); ForceDirectories(ExpandConstant('{app}\mods\{#Patch}')); end; end; @ Quote Link to comment Short link Share on other sites More sharing options...
sergy2010 Posted July 12, 2017 Share Posted July 12, 2017 (edited) а зачем вот это принудительная директория ForceDirectories(ExpandConstant('{app}\res_mods\{#Patch}')); разве не это должно быть CreateDir(ExpandConstant('{app}\res_mods\{#Patch}')); типа удалил и создаёт заново папки Edited July 12, 2017 by sergy2010 @ Quote Link to comment Short link Share on other sites More sharing options...
BeJIuKuu_TaHKoBbIu_BouH Posted July 13, 2017 Share Posted July 13, 2017 (edited) как сделать так чтобы по любому всё удалялось из папок модс и ресмодс при деинсталляции? Так: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep = usPostUninstall then begin DelTree(ExpandConstant('{app}\res_mods'), True, True, True); DelTree(ExpandConstant('{app}\mods'), True, True, True); ForceDirectories(ExpandConstant('{app}\res_mods\{#Patch}')); ForceDirectories(ExpandConstant('{app}\mods\{#Patch}')); end; end; Или так: [UninstallDelete] Type: filesandordirs; Name: "{app}\res_mods\{#Patch}" Type: filesandordirs; Name: "{app}\res_mods\configs" Type: filesandordirs; Name: "{app}\mods\{#Patch}" Type: filesandordirs; Name: "{app}\mods\configs" Edited July 13, 2017 by Gad575 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 13, 2017 Share Posted July 13, 2017 Так: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep = usPostUninstall then begin DelTree(ExpandConstant('{app}\res_mods'), True, True, True); DelTree(ExpandConstant('{app}\mods'), True, True, True); ForceDirectories(ExpandConstant('{app}\res_mods\{#Patch}')); ForceDirectories(ExpandConstant('{app}\mods\{#Patch}')); end; end; Или так: [UninstallDelete] Type: filesandordirs; Name: "{app}\res_mods\{#Patch}" Type: filesandordirs; Name: "{app}\res_mods\configs" Type: filesandordirs; Name: "{app}\mods\{#Patch}" Type: filesandordirs; Name: "{app}\mods\configs" как всегда помог!!! спасибо БОЛЬШОЕ ))) и еще вопросик)) а как сделать чтобы удалял и саму папку деинсталляции? у меня отдельная папка с названием пака и в ней уже файл удаления лежит. и вот надо чтобы он и эту папку тоже полностью удалял. @ Quote Link to comment Short link Share on other sites More sharing options...
BeJIuKuu_TaHKoBbIu_BouH Posted July 13, 2017 Share Posted July 13, 2017 точно также, как и в примерах моих 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 13, 2017 Share Posted July 13, 2017 (edited) точно также, как и в примерах моих точняк. тупанул))) всё получилось. спасибо еще раз! Edited July 13, 2017 by ЛОМ @ Quote Link to comment Short link Share on other sites More sharing options...
sergy2010 Posted July 17, 2017 Share Posted July 17, 2017 как реализовать такой значок в компонентах если с помощью шрифта то какие символы @ Quote Link to comment Short link Share on other sites More sharing options...
shefer Posted July 21, 2017 Share Posted July 21, 2017 Привет всем! Стараюсь часто не беспокоить, но туплю чего-то. Помогите пожалуйста сделать несколько страниц для компонентов. @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted July 21, 2017 Share Posted July 21, 2017 (edited) Привет всем! Стараюсь часто не беспокоить, но туплю чего-то. Помогите пожалуйста сделать несколько страниц для компонентов. не это? https://koreanrandom.com/forum/topic/9050-создание-инсталляторов-для-модпаков-на-базе-inno-setup/?p=366786 вот тут точно всё как должно расписано)) https://koreanrandom.com/forum/topic/9050-создание-инсталляторов-для-модпаков-на-базе-inno-setup/?p=274586 Edited July 21, 2017 by ЛОМ @ Quote Link to comment Short link Share on other sites More sharing options...
shefer Posted July 21, 2017 Share Posted July 21, 2017 (edited) не это? https://koreanrandom.com/forum/topic/9050-создание-инсталляторов-для-модпаков-на-базе-inno-setup/?p=366786 вот тут точно всё как должно расписано)) https://koreanrandom.com/forum/topic/9050-создание-инсталляторов-для-модпаков-на-базе-inno-setup/?p=274586 Спасибо! Как-то пропустил, все изи там , а я туплю) Только привязать к моему скрипту будет пот) Блин, фиг его под мой скрипт переделаешь! Edited July 21, 2017 by shefer @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.