Jump to content
Korean Random

Создание инсталляторов для модпаков на базе Inno Setup


Recommended Posts

  • 2 months later...

Здравствуйте ребят сделал я короче говоря очистку игры там бекап и т.п но если я выпущу новый модпак то не появляется херня там очистки кеша игры от старых модов и т.п как сделать чтобы появлялась постоянно когда запускаешь установку модпака

Link to comment
Short link
Share on other sites

1 час назад, zloyfilya сказал:

Здравствуйте ребят сделал я короче говоря очистку игры там бекап и т.п но если я выпущу новый модпак то не появляется херня там очистки кеша игры от старых модов и т.п как сделать чтобы появлялась постоянно когда запускаешь установку модпака

Эммм, што?

  • Upvote 1
Link to comment
Short link
Share on other sites

15 часов назад, Ekspoint сказал:

Эммм, што?

Мне нужно прям хорошо работающая очистка клиента игры аля как писал выше
PEorxiVw.png?download=1&name=%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%2030-12-2020%2019:17:10.png или ruMQVlxJ.png?download=1&name=%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%2031-12-2020%2014:29:22.png

чтобы при каждом запуске установщика она появлялась

Link to comment
Short link
Share on other sites

А как она может не появляться при каждом запуске? Вы проверяете какие-то данные и только потом отображаете что на скриншотах? Инсталлятор показывает то, что ему сказали отобразить. А вот если идут дополнительные проверки, то смотрите в них. Какой вопрос, такой ответ.

Link to comment
Short link
Share on other sites

11.08.2021 в 04:08, zloyfilya сказал:

Мне нужно прям хорошо работающая очистка клиента игры аля как писал выше
PEorxiVw.png?download=1&name=%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%2030-12-2020%2019:17:10.png или ruMQVlxJ.png?download=1&name=%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%2031-12-2020%2014:29:22.png

чтобы при каждом запуске установщика она появлялась

Выше написана хрень, код очистки тут наверное раз 500 выкладывали, читайте тему и изучайте, а не бегите впереди паровоза и пишите русским языком

Edited by Ekspoint
Link to comment
Short link
Share on other sites

11.08.2021 в 06:08, zloyfilya сказал:

Мне нужно прям хорошо работающая очистка клиента игры аля как писал выше
 или 

чтобы при каждом запуске установщика она появлялась

 

Хорошую очистку клиента игры вам обеспечит только WMCleaner. Юзайте его консольным способом в своем модпаке. Аргументы командной строки есть в оф. теме. Ссылка в моей подписи.

  • Upvote 1
Link to comment
Short link
Share on other sites

  • 4 weeks later...
12.08.2021 в 10:18, AtotIK сказал:

А как она может не появляться при каждом запуске? Вы проверяете какие-то данные и только потом отображаете что на скриншотах? Инсталлятор показывает то, что ему сказали отобразить. А вот если идут дополнительные проверки, то смотрите в них. Какой вопрос, такой ответ.

От души брат буду копать в этом направлении просто тоже пойми и люди другие то что я новичок в этом деле и познаю данные разработки чтобы сделать красивый инсталлятор своих модификаций

Link to comment
Short link
Share on other sites

  • 4 weeks later...
30 минут назад, P.S.Enot сказал:

Здравствуйте подскажите как сделать что бы установщик автоматически определял на каком диске стоит игра ???

 Все есть на форуме и в теме, только надо поискать...

Вот пример поиска по реестру установленной игры!

[Code]
function WotDirNameRU(Path: String): String; // ключ для основного клиента  {1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1
begin
 if RegKeyExists(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
  Result := ExpandConstant('C:\Games\World_of_Tanks\');
end;
//""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""//

код рабочий только  потом надо Вам знать куда его вставить...

Вот например тема 

 

Edited by Nowik1971
Link to comment
Short link
Share on other sites

1 минуту назад, Nowik1971 сказал:

 Все есть на форуме и в теме, только надо поискать...

Вот пример поиска по реестру установленной игры!


[Code]
function WotDirNameRU(Path: String): String; // ключ для основного клиента  {1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1
begin
 if RegKeyExists(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', Path);
  Result := Path
 end else
  Result := ExpandConstant('C:\Games\World_of_Tanks\');
end;
//""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""//
function WotDirNameCT(Path: String): String; // ключ для тестового клиента {1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1
begin
 if RegKeyExists(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1', 'InstallLocation', Path);
  Result := Path
 end else
  if RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1') then
 begin
  RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1', 'InstallLocation', Path);
  Result := Path
 end else
 if RegKeyExists(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1') then
 begin
  RegQueryStringValue(HKCU, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812CT}_is1', 'InstallLocation', Path);
  Result := Path
 end else
  Result := ExpandConstant('C:\Games\World_of_Tanks_CT');
end;

 

и что с этим делать и  куда вставлять. ну и как подключить все это добро??

Link to comment
Short link
Share on other sites

8 минут назад, P.S.Enot сказал:

и что с этим делать и  куда вставлять. ну и как подключить все это добро??

Читайте За вас здесь никто ничего делать не будет, я месяц разбирался потом купил и учил на примере и потом когда немного понял уже стал переделывать на свой лад и то это было давно щас уже все забыл...

А так вообще рассказываю.... берете этот скрипт, открываете инно сетуп создаете файл с этим содержимым, обзываете его например: "авто определение пути к папке с игрой.iss"

Затем в шапке основного скрипта подключаете его...

например так как у меня по старинке ::: 

 #include "скрипты инсталлятора\авто определение пути к папке с игрой.iss"

с обязательным указанием пути где лежит скрипт...

вот и все!!!

Искать будет по реестру установки в виндах, но не будет после переустановки виндов, так что в теме что выше ссылку дал есть ответ как и без реестра....

Ученье Вам в помощь и удачи!!!

Edited by Nowik1971
  • Upvote 1
Link to comment
Short link
Share on other sites

ребята есть у кого код удаляющий старые моды тобишь старую папку модс и рес мод перед установкой новых. а то ставится на старые новые моды и каша получается. кому не сложно поделитесь кодом. за ранее спасибо

Link to comment
Short link
Share on other sites

4 часа назад, P.S.Enot сказал:

ребята есть у кого код удаляющий старые моды тобишь старую папку модс и рес мод перед установкой новых. а то ставится на старые новые моды и каша получается. кому не сложно поделитесь кодом. за ранее спасибо

это есть в коде бэкапа

Link to comment
Short link
Share on other sites

01.10.2021 в 19:59, P.S.Enot сказал:

Здравствуйте подскажите как сделать что бы установщик автоматически определял на каком диске стоит игра ???

 

Лучше используйте это: https://gitlab.com/xvm/xvm-extensions/xfw.extensionlib/-/releases

Link to comment
Short link
Share on other sites

3 минуты назад, P.S.Enot сказал:

еще бы знать что конкретно от туда скачивать какой зип архив и что и как 

Скачивать XFW.ExtensionLib_2021.05.01.zip, брать в архиве файл xvmextensions.x86_32.dll, файл примера там же.

Link to comment
Short link
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...