mpmp 2 #257711 Posted March 12, 2015 Нигде. Должен очищать. А если так: DelTree(ExpandConstant('{userappdata}') + '\Roaming\wargaming.net\WorldOfTanks\account_caches', True, True, True); DelTree(ExpandConstant('{userappdata}') + '\Roaming\wargaming.net\WorldOfTanks\battle_results', True, True, True); и т.д. Нет , не хочет ... Quote Share this post Link to post Short link Share on other sites
Redneck 3 #257713 Posted March 12, 2015 Не хочет очистить кэш, где проблема: Скорее всего в неправильном пути. {userappdata} и так возвращает путь вместе с Roaming. Quote Share this post Link to post Short link Share on other sites
ivannavi 0 #257714 Posted March 12, 2015 Доброго времени суток ! Видел пару раз темы, где люди искали программу или скрипт которые бы собирали моды в одну прогу и после этого могли их устанавливать на выбор ! Нашел на форумах одну вещицу так скажем! Сам скрипт + пара модов для теста: ScriptModPack.rar 54,3 МБ Программа с помощью которой собирается инсталлятор: InnoUltra.exe 54 МБ Скриншоты: Снимок1.PNGСнимок2.PNGСнимок3.PNGСнимок4.PNG Что нового: Ver. 2.4.124 - Упростил скрипт. - добавил определения папки установки если игра была установлена, если же скопирована инсталятор предлагает свой путь. - обновил Сообщения в инстоляторе. - внешний вид не менял. - добавил Лицензию и ФАК. Ver. 2.3 - Добавил в скрипт небольшое описание. - Добавил скрипт с Сообщениями иснтоллятора и выбор языка. - Вынес в отдельный скрипт компоненты - моды. - Внутри есть 2psd - Вместо ссылки на группу Кран'а теперь логотип нашего форума с сыллкой на негоже) Русская справка к версии 5.5.1, автор перевода BagIra, bugron ISetup.rar "Дополнительные скрипты " Проверка папки установки: 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; Набор скриптов, библиотек с их использованием (Автор: Kotyarko_O):Набор скриптов, библиот…нием.rar - 31,12 МБ Еще можно где нить скачать ScriptModPack.rar , тут не получается скачать. Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #257718 Posted March 12, 2015 (edited) Скорее всего в неправильном пути. {userappdata} и так возвращает путь вместе с Roaming. Да, есть такое. Еще можно где нить скачать ScriptModPack.rar , тут не получается скачать. https://yadi.sk/d/7_k_gcoqfCd3g Edited March 12, 2015 by Kotyarko_O Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #257720 Posted March 12, 2015 (edited) Вот так прекрасно удаляется: DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches'), True, True, True); Для разных систем {userappdata} имеет разные значения, но дальше игрой создаются папки по такому пути 100%. Возможно с папками обошлись вот так: тык! или ещё инфа.Перенесли с SSD на другой диск и обманули систему. Edited March 12, 2015 by AtotIK 1 Quote Share this post Link to post Short link Share on other sites
mpmp 2 #257797 Posted March 13, 2015 Вот так прекрасно удаляется: DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches'), True, True, True); Для разных систем {userappdata} имеет разные значения, но дальше игрой создаются папки по такому пути 100%. Возможно с папками обошлись вот так: тык! или ещё инфа. Перенесли с SSD на другой диск и обманули систему. Таким образом, работает и удаляет. Спасибо. Quote Share this post Link to post Short link Share on other sites
psix_banned 1 #257801 Posted March 13, 2015 Хочу сделать при установке выбор какой тип статистики xvm устанавливать. Помогите с реализацией, никак не догоню как сделать правильно. Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #257804 Posted March 13, 2015 psix89, подменой файлов делай. У меня это: battleLoading.xc, markersAliveExtended.xc, markersAliveNormal.xc, playersPanel.xc, statisticForm.xc. 1 Quote Share this post Link to post Short link Share on other sites
mpmp 2 #257824 Posted March 13, 2015 (edited) Кому то нужно этот код, для очистки модов + cache + Updates, без Back up мод: [code] var BackupPage: TWizardPage; DeleteRadioButton: TNewRadioButton; //== създаваме нова функция и присвояваме свойство TNewRadioButton NoneRadioButton: TNewRadioButton; //== създаваме нова функция и присвояваме свойство TNewRadioButton NewCheckBoxClearCache: TNewCheckBox; //== създаваме нова функция и присвояваме свойство TNewCheckBox NewCheckBoxClearUpdate: TNewCheckBox; //== създаваме нова функция и присвояваме свойство TNewCheckBox function BackupCheck(): Boolean; var BackupDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст BackupDescLabel2: TLabel; //==създаваме и присвояваме свойство TLabel - за текст DeleteDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NoneDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NewCheckBoxLabelClearCache: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NewCheckBoxLabelClearUpdate: TLabel; //==създаваме и присвояваме свойство TLabel - за текст begin BackupPage:=CreateCustomPage(wpSelectDir, '', ''); //==== Настройки на първия текст над бутоните BackupDescLabel:=TLabel.Create(WizardForm); BackupDescLabel.Parent:=BackupPage.Surface; BackupDescLabel.Left:=30; //==== Настройки на текста над бутоните за изтриване на старите модове: ляво-дясно и горе-долу BackupDescLabel.Top:=10; BackupDescLabel.Width:=BackupPage.SurfaceWidth; BackupDescLabel.Height:=90; BackupDescLabel.AutoSize:=False; BackupDescLabel.Wordwrap:=True; BackupDescLabel.Caption:= 'За да бъдат избегнати проблеми със съвместимостта и конфликти между различните модове и модификации,'#13 'се препоръчва да бъдат изтрити текущите ви модове и модификации от вашия игрови клиент.'; //==== Настройки на първия текст над бутоните BackupDescLabel2:=TLabel.Create(WizardForm); BackupDescLabel2.Parent:=BackupPage.Surface; BackupDescLabel2.Left:=80; //==== Настройки на текста над бутоните за изтриване на старите модове: ляво-дясно и горе-долу BackupDescLabel2.Top:=50; BackupDescLabel2.Width:=BackupPage.SurfaceWidth; BackupDescLabel2.Height:=90; BackupDescLabel2.AutoSize:=False; BackupDescLabel2.Wordwrap:=True; BackupDescLabel2.Font.Style := [fsBold, fsItalic]; BackupDescLabel2.Font.Size:=10; //BackupDescLabel2.Font.Color := clMaroon; BackupDescLabel2.Font.Name := 'Arial'; BackupDescLabel2.Caption:= 'ВНИМАНИЕ!'#13 'Моля, прочетете важната информция по-долу, преди да продължите:'; //==== Настройки на мястото на бутона и текста за изтриване на папката res_mods DeleteRadioButton:=TNewRadioButton.Create(WizardForm); DeleteRadioButton.Parent:=BackupPage.Surface; DeleteRadioButton.Checked:=False; DeleteRadioButton.Left:=80; //==== местене на изтриващия бутон DeleteRadioButton.Top:=100; //120 DeleteRadioButton.Width:=BackupPage.SurfaceWidth; DeleteRadioButton.Font.Style:=[fsBold]; DeleteRadioButton.Font.Size:=10; DeleteRadioButton.Caption:='Изтрий текущите модове и модификации (препоръчително).' //==== Текст на бутона за триене ====\\ DeleteDescLabel:=TLabel.Create(WizardForm); DeleteDescLabel.Parent:=BackupPage.Surface; DeleteDescLabel.Left:=80; //==== местене в ляво-дясно на текста под изтриващия бутон DeleteDescLabel.Top:=DeleteRadioButton.Top + DeleteRadioButton.Height + 4; DeleteDescLabel.Width:=BackupPage.SurfaceWidth; DeleteDescLabel.Height:=40; DeleteDescLabel.AutoSize:=False; DeleteDescLabel.Wordwrap:=True; DeleteDescLabel.Caption:='Инсталатора ще почисти съдържанието на папка "res_mods\{#GameVersion}" от текущите ви модове.'; //==== Настройки на мястото на бутона и текста да не изтрива нищо NoneRadioButton:=TNewRadioButton.Create(WizardForm); NoneRadioButton.Parent:=BackupPage.Surface; NoneRadioButton.Checked:=False; NoneRadioButton.Left:=80; //==== местене на неизтриващия бутон NoneRadioButton.Top:=150; NoneRadioButton.Width:=BackupPage.SurfaceWidth; NoneRadioButton.Font.Style:=[fsBold]; NoneRadioButton.Font.Size:=10; NoneRadioButton.Caption:='Не изтривай текущите модове и модификации.' //==== Текст на неизтриващия бутон ====\\ NoneDescLabel:=TLabel.Create(WizardForm); NoneDescLabel.Parent:=BackupPage.Surface; NoneDescLabel.Left:=80; //==== местене в ляво-дясно на текста под неизтриващия бутон NoneDescLabel.Top:=NoneRadioButton.Top + NoneRadioButton.Height + 4; NoneDescLabel.Width:=BackupPage.SurfaceWidth; NoneDescLabel.Height:=40; NoneDescLabel.AutoSize:=False; NoneDescLabel.Wordwrap:=True; NoneDescLabel.Caption:= 'Инсталаторът ще остави всичко както е, без да трие текущите ви модове.'#13 'Тази опция не е препоръчителна, възможно е да възникнат конфликти.'; //==== Настройки на мястото на бутона и текста за изтриване на КЕША NewCheckBoxClearCache:=TNewCheckBox.Create(WizardForm); NewCheckBoxClearCache.Parent:=BackupPage.Surface; NewCheckBoxClearCache.Checked:=False; NewCheckBoxClearCache.Left:=100; //==== местене на бутона NewCheckBoxClearCache.Top:=225; NewCheckBoxClearCache.Width:=BackupPage.SurfaceWidth; NewCheckBoxClearCache.Font.Style:=[fsBold]; NewCheckBoxClearCache.Font.Size:=9; NewCheckBoxClearCache.Caption:='Изтрий кеша (cache) на играта (препоръчително).' //==== Текст на бутона за триене ====\\ NewCheckBoxLabelClearCache:=TLabel.Create(WizardForm); NewCheckBoxLabelClearCache.Parent:=BackupPage.Surface; NewCheckBoxLabelClearCache.Left:=100; //==== местене в ляво-дясно на текста под изтриващия бутон NewCheckBoxLabelClearCache.Top:=NewCheckBoxClearCache.Top + NewCheckBoxClearCache.Height + 4; NewCheckBoxLabelClearCache.Width:=BackupPage.SurfaceWidth; NewCheckBoxLabelClearCache.Height:=40; NewCheckBoxLabelClearCache.AutoSize:=False; NewCheckBoxLabelClearCache.Wordwrap:=True; NewCheckBoxLabelClearCache.Caption:='Инсталатора ще почисти папката с кеша(cache) на играта ви, без да изтрива'#13 'файла с настройките (preferences.XML).'; //==== Настройки на мястото на бутона и текста за изтриване на папка Updates NewCheckBoxClearUpdate:=TNewCheckBox.Create(WizardForm); NewCheckBoxClearUpdate.Parent:=BackupPage.Surface; NewCheckBoxClearUpdate.Checked:=False; NewCheckBoxClearUpdate.Left:=100; //==== местене на изтриващия бутон NewCheckBoxClearUpdate.Top:=280; NewCheckBoxClearUpdate.Width:=BackupPage.SurfaceWidth; NewCheckBoxClearUpdate.Font.Style:=[fsBold]; NewCheckBoxClearUpdate.Font.Size:=9; NewCheckBoxClearUpdate.Caption:='Изтрий файловете за ъпдейтите в играта ви.' //==== Текст на бутона за триене ====\\ NewCheckBoxLabelClearUpdate:=TLabel.Create(WizardForm); NewCheckBoxLabelClearUpdate.Parent:=BackupPage.Surface; NewCheckBoxLabelClearUpdate.Left:=100; //==== местене в ляво-дясно на текста под изтриващия бутон NewCheckBoxLabelClearUpdate.Top:=NewCheckBoxClearUpdate.Top + NewCheckBoxClearUpdate.Height + 4; NewCheckBoxLabelClearUpdate.Width:=BackupPage.SurfaceWidth; NewCheckBoxLabelClearUpdate.Height:=40; NewCheckBoxLabelClearUpdate.AutoSize:=False; NewCheckBoxLabelClearUpdate.Wordwrap:=True; NewCheckBoxLabelClearUpdate.Caption:='Инсталатора ще почисти папка Updates в играта ви и ще освободи дисково място.'; end; ///=== функцията за изтриване на папката res_mods function DeleteOldMods(): Boolean; begin If DeleteRadioButton.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Изтриване на файловете...'; DelTree(ExpandConstant('{app}\res_mods'), True, True, True); CreateDir(ExpandConstant('{app}\res_mods')); CreateDir(ExpandConstant('{app}\res_mods\{#GameVersion}')); WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== функцията за КЕША ==== Изтриваме кешовите папки и ги създаваме наново, вече чисти. function ClearCacheCreate(): Boolean; begin If NewCheckBoxClearCache.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Трием кеша...'; //=== трие кешовите папки DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\battle_results'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\custom_data'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\dossier_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\messenger_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\tutorial_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\xvm'), True, True, True); //=== създава ги наново, вече чисти. CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\battle_results')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\custom_data')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\dossier_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\messenger_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\tutorial_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\xvm')); WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== функцията да трием и след това създаване наново папка Updates function ClearUpdate(): Boolean; begin If NewCheckBoxClearUpdate.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Трием update файловете...'; DelTree(ExpandConstant('{app}\Updates'), True, True, True); //== изтрива я CreateDir(ExpandConstant('{app}\Updates')); //== създава я наново WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== процедурите за изпълнение на функциите procedure CurStepChanged(CurStep: TSetupStep); begin If CurStep=ssInstall then begin DeleteOldMods(); ClearCacheCreate(); ClearUpdate(); end; end; procedure InitializeWizard(); begin BackupCheck(); end; @AtotIKВопрос:Как изменить цвет BackUp страница (верхний код) и добавить картинка ? Edited March 13, 2015 by mpmp 1 Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #257831 Posted March 13, 2015 mpmp, это вшито в твоём скине. Проще картинкам фон изменить. Quote Share this post Link to post Short link Share on other sites
Ekspoint 2,122 #257849 Posted March 13, 2015 mpmp, это вшито в твоём скине. Проще картинкам фон изменить. или панелью Quote Share this post Link to post Short link Share on other sites
mpmp 2 #257855 Posted March 13, 2015 Проще картинкам фон изменить. Ето как ? Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #257863 Posted March 13, 2015 (edited) mpmp, ты же логотипы чем-то делал. Надеюсь в Photoshop. Изменяешь фон в них и всё. Будет сливаться. Бр-р-р, не дочитал до конца. В общем создаёшь панель, а на неё кидаешь картинки. Edited March 13, 2015 by AtotIK Quote Share this post Link to post Short link Share on other sites
konan007 1 #259657 Posted March 23, 2015 2015-03-13_134308.png Кому то нужно этот код, для очистки модов + cache + Updates, без Back up мод: [code] var BackupPage: TWizardPage; DeleteRadioButton: TNewRadioButton; //== създаваме нова функция и присвояваме свойство TNewRadioButton NoneRadioButton: TNewRadioButton; //== създаваме нова функция и присвояваме свойство TNewRadioButton NewCheckBoxClearCache: TNewCheckBox; //== създаваме нова функция и присвояваме свойство TNewCheckBox NewCheckBoxClearUpdate: TNewCheckBox; //== създаваме нова функция и присвояваме свойство TNewCheckBox function BackupCheck(): Boolean; var BackupDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст BackupDescLabel2: TLabel; //==създаваме и присвояваме свойство TLabel - за текст DeleteDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NoneDescLabel: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NewCheckBoxLabelClearCache: TLabel; //==създаваме и присвояваме свойство TLabel - за текст NewCheckBoxLabelClearUpdate: TLabel; //==създаваме и присвояваме свойство TLabel - за текст begin BackupPage:=CreateCustomPage(wpSelectDir, '', ''); //==== Настройки на първия текст над бутоните BackupDescLabel:=TLabel.Create(WizardForm); BackupDescLabel.Parent:=BackupPage.Surface; BackupDescLabel.Left:=30; //==== Настройки на текста над бутоните за изтриване на старите модове: ляво-дясно и горе-долу BackupDescLabel.Top:=10; BackupDescLabel.Width:=BackupPage.SurfaceWidth; BackupDescLabel.Height:=90; BackupDescLabel.AutoSize:=False; BackupDescLabel.Wordwrap:=True; BackupDescLabel.Caption:= 'За да бъдат избегнати проблеми със съвместимостта и конфликти между различните модове и модификации,'#13 'се препоръчва да бъдат изтрити текущите ви модове и модификации от вашия игрови клиент.'; //==== Настройки на първия текст над бутоните BackupDescLabel2:=TLabel.Create(WizardForm); BackupDescLabel2.Parent:=BackupPage.Surface; BackupDescLabel2.Left:=80; //==== Настройки на текста над бутоните за изтриване на старите модове: ляво-дясно и горе-долу BackupDescLabel2.Top:=50; BackupDescLabel2.Width:=BackupPage.SurfaceWidth; BackupDescLabel2.Height:=90; BackupDescLabel2.AutoSize:=False; BackupDescLabel2.Wordwrap:=True; BackupDescLabel2.Font.Style := [fsBold, fsItalic]; BackupDescLabel2.Font.Size:=10; //BackupDescLabel2.Font.Color := clMaroon; BackupDescLabel2.Font.Name := 'Arial'; BackupDescLabel2.Caption:= 'ВНИМАНИЕ!'#13 'Моля, прочетете важната информция по-долу, преди да продължите:'; //==== Настройки на мястото на бутона и текста за изтриване на папката res_mods DeleteRadioButton:=TNewRadioButton.Create(WizardForm); DeleteRadioButton.Parent:=BackupPage.Surface; DeleteRadioButton.Checked:=False; DeleteRadioButton.Left:=80; //==== местене на изтриващия бутон DeleteRadioButton.Top:=100; //120 DeleteRadioButton.Width:=BackupPage.SurfaceWidth; DeleteRadioButton.Font.Style:=[fsBold]; DeleteRadioButton.Font.Size:=10; DeleteRadioButton.Caption:='Изтрий текущите модове и модификации (препоръчително).' //==== Текст на бутона за триене ====\\ DeleteDescLabel:=TLabel.Create(WizardForm); DeleteDescLabel.Parent:=BackupPage.Surface; DeleteDescLabel.Left:=80; //==== местене в ляво-дясно на текста под изтриващия бутон DeleteDescLabel.Top:=DeleteRadioButton.Top + DeleteRadioButton.Height + 4; DeleteDescLabel.Width:=BackupPage.SurfaceWidth; DeleteDescLabel.Height:=40; DeleteDescLabel.AutoSize:=False; DeleteDescLabel.Wordwrap:=True; DeleteDescLabel.Caption:='Инсталатора ще почисти съдържанието на папка "res_mods\{#GameVersion}" от текущите ви модове.'; //==== Настройки на мястото на бутона и текста да не изтрива нищо NoneRadioButton:=TNewRadioButton.Create(WizardForm); NoneRadioButton.Parent:=BackupPage.Surface; NoneRadioButton.Checked:=False; NoneRadioButton.Left:=80; //==== местене на неизтриващия бутон NoneRadioButton.Top:=150; NoneRadioButton.Width:=BackupPage.SurfaceWidth; NoneRadioButton.Font.Style:=[fsBold]; NoneRadioButton.Font.Size:=10; NoneRadioButton.Caption:='Не изтривай текущите модове и модификации.' //==== Текст на неизтриващия бутон ====\\ NoneDescLabel:=TLabel.Create(WizardForm); NoneDescLabel.Parent:=BackupPage.Surface; NoneDescLabel.Left:=80; //==== местене в ляво-дясно на текста под неизтриващия бутон NoneDescLabel.Top:=NoneRadioButton.Top + NoneRadioButton.Height + 4; NoneDescLabel.Width:=BackupPage.SurfaceWidth; NoneDescLabel.Height:=40; NoneDescLabel.AutoSize:=False; NoneDescLabel.Wordwrap:=True; NoneDescLabel.Caption:= 'Инсталаторът ще остави всичко както е, без да трие текущите ви модове.'#13 'Тази опция не е препоръчителна, възможно е да възникнат конфликти.'; //==== Настройки на мястото на бутона и текста за изтриване на КЕША NewCheckBoxClearCache:=TNewCheckBox.Create(WizardForm); NewCheckBoxClearCache.Parent:=BackupPage.Surface; NewCheckBoxClearCache.Checked:=False; NewCheckBoxClearCache.Left:=100; //==== местене на бутона NewCheckBoxClearCache.Top:=225; NewCheckBoxClearCache.Width:=BackupPage.SurfaceWidth; NewCheckBoxClearCache.Font.Style:=[fsBold]; NewCheckBoxClearCache.Font.Size:=9; NewCheckBoxClearCache.Caption:='Изтрий кеша (cache) на играта (препоръчително).' //==== Текст на бутона за триене ====\\ NewCheckBoxLabelClearCache:=TLabel.Create(WizardForm); NewCheckBoxLabelClearCache.Parent:=BackupPage.Surface; NewCheckBoxLabelClearCache.Left:=100; //==== местене в ляво-дясно на текста под изтриващия бутон NewCheckBoxLabelClearCache.Top:=NewCheckBoxClearCache.Top + NewCheckBoxClearCache.Height + 4; NewCheckBoxLabelClearCache.Width:=BackupPage.SurfaceWidth; NewCheckBoxLabelClearCache.Height:=40; NewCheckBoxLabelClearCache.AutoSize:=False; NewCheckBoxLabelClearCache.Wordwrap:=True; NewCheckBoxLabelClearCache.Caption:='Инсталатора ще почисти папката с кеша(cache) на играта ви, без да изтрива'#13 'файла с настройките (preferences.XML).'; //==== Настройки на мястото на бутона и текста за изтриване на папка Updates NewCheckBoxClearUpdate:=TNewCheckBox.Create(WizardForm); NewCheckBoxClearUpdate.Parent:=BackupPage.Surface; NewCheckBoxClearUpdate.Checked:=False; NewCheckBoxClearUpdate.Left:=100; //==== местене на изтриващия бутон NewCheckBoxClearUpdate.Top:=280; NewCheckBoxClearUpdate.Width:=BackupPage.SurfaceWidth; NewCheckBoxClearUpdate.Font.Style:=[fsBold]; NewCheckBoxClearUpdate.Font.Size:=9; NewCheckBoxClearUpdate.Caption:='Изтрий файловете за ъпдейтите в играта ви.' //==== Текст на бутона за триене ====\\ NewCheckBoxLabelClearUpdate:=TLabel.Create(WizardForm); NewCheckBoxLabelClearUpdate.Parent:=BackupPage.Surface; NewCheckBoxLabelClearUpdate.Left:=100; //==== местене в ляво-дясно на текста под изтриващия бутон NewCheckBoxLabelClearUpdate.Top:=NewCheckBoxClearUpdate.Top + NewCheckBoxClearUpdate.Height + 4; NewCheckBoxLabelClearUpdate.Width:=BackupPage.SurfaceWidth; NewCheckBoxLabelClearUpdate.Height:=40; NewCheckBoxLabelClearUpdate.AutoSize:=False; NewCheckBoxLabelClearUpdate.Wordwrap:=True; NewCheckBoxLabelClearUpdate.Caption:='Инсталатора ще почисти папка Updates в играта ви и ще освободи дисково място.'; end; ///=== функцията за изтриване на папката res_mods function DeleteOldMods(): Boolean; begin If DeleteRadioButton.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Изтриване на файловете...'; DelTree(ExpandConstant('{app}\res_mods'), True, True, True); CreateDir(ExpandConstant('{app}\res_mods')); CreateDir(ExpandConstant('{app}\res_mods\{#GameVersion}')); WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== функцията за КЕША ==== Изтриваме кешовите папки и ги създаваме наново, вече чисти. function ClearCacheCreate(): Boolean; begin If NewCheckBoxClearCache.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Трием кеша...'; //=== трие кешовите папки DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\battle_results'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\custom_data'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\dossier_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\messenger_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\tutorial_cache'), True, True, True); DelTree(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\xvm'), True, True, True); //=== създава ги наново, вече чисти. CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\account_caches')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\battle_results')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\custom_data')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\dossier_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\messenger_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\tutorial_cache')); CreateDir(ExpandConstant('{userappdata}\wargaming.net\WorldOfTanks\xvm')); WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== функцията да трием и след това създаване наново папка Updates function ClearUpdate(): Boolean; begin If NewCheckBoxClearUpdate.Checked then begin WizardForm.ProgressGauge.Hide; WizardForm.StatusLabel.Caption:='Трием update файловете...'; DelTree(ExpandConstant('{app}\Updates'), True, True, True); //== изтрива я CreateDir(ExpandConstant('{app}\Updates')); //== създава я наново WizardForm.ProgressGauge.Show; WizardForm.StatusLabel.Caption:=SetupMessage(msgStatusExtractFiles); end; end; ///=== процедурите за изпълнение на функциите procedure CurStepChanged(CurStep: TSetupStep); begin If CurStep=ssInstall then begin DeleteOldMods(); ClearCacheCreate(); ClearUpdate(); end; end; procedure InitializeWizard(); begin BackupCheck(); end; @AtotIK Вопрос: Как изменить цвет BackUp страница (верхний код) и добавить картинка ? А как изменить цвет текста очистить кэш??? Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #259659 Posted March 23, 2015 А как изменить цвет текста очистить кэш??? NewCheckBoxClearCache.Font.Color := clLime или $00FF00; Quote Share this post Link to post Short link Share on other sites
sergey spb 4 #259686 Posted March 23, 2015 (edited) Парни, ПОМОГИТЕ!!! Как сделать, чтобы при повторном запуске: 1. Отмена выбора компонента, удаляла его из папки. 2. Другие файлы в папке не удалять (установленные не инсталлятором). Спасибо!!! Edited March 23, 2015 by sergey spb Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #259688 Posted March 23, 2015 (edited) Парни, ПОМОГИТЕ!!!Как сделать, чтобы при повторном запуске:1. Отмена выбора компонента, удаляла его из папки. 2. Другие файлы в папке не удалять (установленные не инсталятором). Реализации на инно не видел ещё, это в стиле установщиков MSI. Если я правильно подумал, то такое довольно гемморно сделать, придётся придумывать велосипед. Оно того не стоит. Edited March 23, 2015 by Kotyarko_O 1 Quote Share this post Link to post Short link Share on other sites
psix_banned 1 #259690 Posted March 23, 2015 (edited) Нашел в инете интересный вариант скрипта http://repacks.org.ua/inno-setup/skripty/395-zapros-2.html Реально ли в разделе "компоненты" сделать показ картинок при выборе модов Edited March 23, 2015 by psix89 Quote Share this post Link to post Short link Share on other sites
Kotyarko_O 1,906 #259693 Posted March 23, 2015 (edited) Реально ли в разделе "компоненты" сделать показ картинок при выборе модов Конечно. Edited March 23, 2015 by Kotyarko_O 1 Quote Share this post Link to post Short link Share on other sites
AtotIK 580 #259701 Posted March 23, 2015 Отмена выбора компонента, удаляла его из папки. Это не велосипед, а велосипедище. Маловероятно такое реализовать, если вообще "невозможно". 1 Quote Share this post Link to post Short link Share on other sites