AtotIK Posted November 11, 2022 Share Posted November 11, 2022 Для кого придумали это? https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvm.iss Прекрасно работает, а если попросите у автора - зальёт новую dll с поддержкой WG/Lesta. 1 @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted November 11, 2022 Share Posted November 11, 2022 38 минут назад, AtotIK сказал: Для кого придумали это? https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvm.iss Прекрасно работает, а если попросите у автора - зальёт новую dll с поддержкой WG/Lesta. А для чего там dll? В коде по ссылке вроде нет dll никакой. @ Quote Link to comment Short link Share on other sites More sharing options...
ktulho Posted November 11, 2022 Share Posted November 11, 2022 18 минут назад, StranikS_Scan сказал: А для чего там dll? В коде по ссылке вроде нет dll никакой. https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvmextensions.iss @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted November 11, 2022 Share Posted November 11, 2022 3 часа назад, AtotIK сказал: Для кого придумали это? https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvm.iss Прекрасно работает, а если попросите у автора - зальёт новую dll с поддержкой WG/Lesta. а как с автором связаться? может подскажете и да еще заметил такую вещь что сейчас старый код перестал определять что игра запущена и не выскакивает окно с предложением закрыть игру по нажатию ок @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted November 12, 2022 Share Posted November 12, 2022 . . . procedure Select1(Sender:TObject); begin if (Dir1<> WizardForm.DirEdit.Text) then Dir1:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam'#32#10'App'#32#10'444200,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; procedure Select2(Sender:TObject); begin if (Dir2<> WizardForm.DirEdit.Text) then Dir2:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\LGC-WOTB.RU.PRODUCTION\,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; procedure Select3(Sender:TObject); begin if (Dir3<> WizardForm.DirEdit.Text) then Dir3:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('C:\Program Files\'); WizardForm.DirEdit.Enabled:=True; WizardForm.DirBrowseButton.Enabled:= True; end; . . . //Выбор пути установки { NewRadioButton1 } NewRadioButton1 := TNewRadioButton.Create(WizardForm); with NewRadioButton1 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(128); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionSteamInstallation'); OnClick:= @Select1; end; { NewRadioButton2 } NewRadioButton2 := TNewRadioButton.Create(WizardForm); with NewRadioButton2 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(152); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionWGCInstallation'); OnClick:= @Select2; Checked:= True; end; { NewRadioButton3 } NewRadioButton3 := TNewRadioButton.Create(WizardForm); with NewRadioButton3 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(176); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionManualInstallation'); OnClick:= @Select3; Checked:= True; end; NewRadioButton1.TabOrder := 5; NewRadioButton2.TabOrder := 6; NewRadioButton3.TabOrder := 7; Использовал код выше для определения пути установки и последующего выбора. (Нужно было выбрать путь установки для Стим, Леста гейм центра или ручную. Путь должен был искаться через реестр) Но в итоге столкнулся с проблемой, что в пути реестра нельзя использовать пробелы иначе он не может найти путь установки. procedure Select1(Sender:TObject); begin if (Dir1<> WizardForm.DirEdit.Text) then Dir1:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam App 444200,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; Код в 1 и во 2 вставке не может найти путь... Скажите что я не так делаю и есть-ли какая-нибудь альтернатива? @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted November 12, 2022 Share Posted November 12, 2022 (edited) 11.11.2022 в 13:18, StranikS_Scan сказал: А для чего там dll? В коде по ссылке вроде нет dll никакой. набор полезняшек (анпак XML, поиск запущенных процессов и их прибитие, работа с JSON, сплэшскрин, поиск клиентов с обходом файлов WGC/LGC) https://gitlab.com/openwg/openwg.utils OpenWG.Utils_v2022.11.12.3.zip Edited November 12, 2022 by Mixaill 2 @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted December 4, 2022 Share Posted December 4, 2022 Mixaill а как это все дело то подключить? пробую выкидывает ошибку через findwot.dll делаю и код встраиваю норм работает но хотелось бы ваш вариант встроить в скрипт @ Quote Link to comment Short link Share on other sites More sharing options...
Mixaill Posted December 4, 2022 Share Posted December 4, 2022 1 час назад, P.S.Enot сказал: Mixaill а как это все дело то подключить? пробую выкидывает ошибку через findwot.dll делаю и код встраиваю норм работает но хотелось бы ваш вариант встроить в скрипт findwot.dll -- это что-то супер древнее, смотри сюда OpenWG.Utils: комплект полезняшек для InnoSetup (и не только) - Создание модов: общие вопросы - Korean Random 1 @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted December 6, 2022 Share Posted December 6, 2022 Добрый день. Ребят подскажите нормальный код для чистки папки mods и res_mods @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted December 6, 2022 Share Posted December 6, 2022 DelTree тебе в помощь... if CurStep = ssDone then begin DeleteFile(ExpandConstant('{app}\1\1.bin')); end; begin DelTree(ExpandConstant('{app}\1\1\DelTree'), True, True, True); end; @P.S.Enot Что-то такое. @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted December 6, 2022 Share Posted December 6, 2022 4 часа назад, Qirashi сказал: DelTree тебе в помощь... if CurStep = ssDone then begin DeleteFile(ExpandConstant('{app}\1\1.bin')); end; begin DelTree(ExpandConstant('{app}\1\1\DelTree'), True, True, True); end; @P.S.Enot Что-то такое. и куда это все дело мне подключить. или прописать где . чек бокса тоже не видно. @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted December 6, 2022 Share Posted December 6, 2022 Зависит от того, что ты хочешь сделать. У меня вообще установщик для репаков. @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted December 6, 2022 Share Posted December 6, 2022 9 минут назад, Qirashi сказал: Зависит от того, что ты хочешь сделать. У меня вообще установщик для репаков. для модпака. хочу добавить чтобы пользователь мог поставить галочку очистить папки mods и res_mods . как вот тут или так @ Quote Link to comment Short link Share on other sites More sharing options...
P.S.Enot Posted December 8, 2022 Share Posted December 8, 2022 Спасибо всем. разобрался. все сделал. робит @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted December 17, 2022 Share Posted December 17, 2022 12.11.2022 в 17:16, Qirashi сказал: . . . procedure Select1(Sender:TObject); begin if (Dir1<> WizardForm.DirEdit.Text) then Dir1:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam'#32#10'App'#32#10'444200,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; procedure Select2(Sender:TObject); begin if (Dir2<> WizardForm.DirEdit.Text) then Dir2:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\LGC-WOTB.RU.PRODUCTION\,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; procedure Select3(Sender:TObject); begin if (Dir3<> WizardForm.DirEdit.Text) then Dir3:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('C:\Program Files\'); WizardForm.DirEdit.Enabled:=True; WizardForm.DirBrowseButton.Enabled:= True; end; . . . //Выбор пути установки { NewRadioButton1 } NewRadioButton1 := TNewRadioButton.Create(WizardForm); with NewRadioButton1 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(128); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionSteamInstallation'); OnClick:= @Select1; end; { NewRadioButton2 } NewRadioButton2 := TNewRadioButton.Create(WizardForm); with NewRadioButton2 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(152); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionWGCInstallation'); OnClick:= @Select2; Checked:= True; end; { NewRadioButton3 } NewRadioButton3 := TNewRadioButton.Create(WizardForm); with NewRadioButton3 do begin Parent := WizardForm.SelectDirPage; Left := ScaleX(16); Top := ScaleY(176); Width := ScaleX(300); Height := ScaleY(17); Caption := CustomMessage('CaptionManualInstallation'); OnClick:= @Select3; Checked:= True; end; NewRadioButton1.TabOrder := 5; NewRadioButton2.TabOrder := 6; NewRadioButton3.TabOrder := 7; Использовал код выше для определения пути установки и последующего выбора. (Нужно было выбрать путь установки для Стим, Леста гейм центра или ручную. Путь должен был искаться через реестр) Но в итоге столкнулся с проблемой, что в пути реестра нельзя использовать пробелы иначе он не может найти путь установки. procedure Select1(Sender:TObject); begin if (Dir1<> WizardForm.DirEdit.Text) then Dir1:= WizardForm.DirEdit.Text; WizardForm.DirEdit.Text:= ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam App 444200,InstallLocation}'); WizardForm.DirEdit.Enabled:= False; WizardForm.DirBrowseButton.Enabled:= False; end; Код в 1 и во 2 вставке не может найти путь... Скажите что я не так делаю и есть-ли какая-нибудь альтернатива? Уже сам нашёл решение. Интересный прикол с битностью системы... @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted January 1, 2023 Share Posted January 1, 2023 (edited) Доброго времени суток. Возник очень интересный вопрос, подобного в теме не видел. Filename: "{tmp}\7za.exe"; Parameters: "x ""{tmp}\Hangar.7z"" -o""{app}\Data\"" * -r"; Flags: runhidden runascurrentuser; В категории [Run] есть возможность запустить файл с расширением ехе. Но если этих файлов много, это вызывает некоторые проблемы. Возможно-ли перенести запуск файлов в секцию Code? Какой можно воспользоваться командой? Поясняю для тех кто скажет что это бесполезно, в коде можно сделать привязку к компоненту и лишний раз команда выполняться не будет. Edited January 1, 2023 by Qirashi @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted January 3, 2023 Share Posted January 3, 2023 Сам спросил, сам ответил. Если условно есть такой код: [Run] Filename: "{tmp}\7za.exe"; Parameters: "x ""{tmp}\Hangar.7z"" -o""{app}\Data\"" * -r"; Flags: runhidden runascurrentuser; То его можно реализовать при помощи Exec или ShellExec . 2 @ Quote Link to comment Short link Share on other sites More sharing options...
gelius761 Posted March 19, 2023 Share Posted March 19, 2023 Посмотрел я на этот код: https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvm.iss все хорошо но как сделать чтобы искать только клиент Лесты? 1 @ Quote Link to comment Short link Share on other sites More sharing options...
Qirashi Posted March 21, 2023 Share Posted March 21, 2023 19.03.2023 в 23:40, djgelius сказал: Посмотрел я на этот код: https://gitlab.com/xvm/xvm/-/blob/master/src/installer/src/xvm.iss все хорошо но как сделать чтобы искать только клиент Лесты? В смысле только клиент Лесты? @ Quote Link to comment Short link Share on other sites More sharing options...
Lom Posted March 21, 2023 Share Posted March 21, 2023 к примеру, много у кого стоят клиент и лесты и евро. в таком случае, если человек ставит модпак на евро то установщик находит обычно путь к лесте. крч. если сделать отдельно установщики для евро и для лесты, то смысла чтобы модпак для евро находил клиент лесты нет. как то так)) @ 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.