Jump to content
Korean Random
EvilAlex

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

Recommended Posts

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

Share this post


Link to post

Short link
Share on other sites

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

Всё стандартное запоминается автоматически (если не отключены предназначенные для этого параметры в [setup], и включено создание деинсталлятора), для всего кастомного запоминание нужно делать вручную.

Запись всего, что нужно запомнить, обычно производится в реестр. Но можно и записывать деинсталлятор (при этом, после деинсталляции программы, вся "память" так же пропадёт).

Пример способа записи\считывания из реестра.

Share this post


Link to post

Short link
Share on other sites

Всё стандартное запоминается автоматически (если не отключены предназначенные для этого параметры в [setup], и включено создание деинсталлятора), для всего кастомного запоминание нужно делать вручную.

Запись всего, что нужно запомнить, обычно производится в реестр. Но можно и записывать деинсталлятор (при этом, после деинсталляции программы, вся "память" так же пропадёт).

Пример способа записи\считывания из реестра.

#define SKinDll "ISSkinExW.dll"
#define SKin "VZ_Orange.cjstyles"

[Setup]
WizardSmallImageFile=10ввFon.bmp
WizardImageFile=wallpaper-1967807.bmp
AppName="ххх"
AppVerName=1.0
DefaultDirName=C:\Games\World_of_Tanks\
OutputBaseFilename=ххх
SetupIconFile=F:\А ДЛЯ СБОРКИ\мои стили\скрины с исо\VZ_Orange\yahoo.ico
Compression=lzma
SolidCompression=yes
Uninstallable=no
DirExistsWarning=no

мой установщик я  скином сделал мож поэтому? 

Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites

мой установщик я  скином сделал мож поэтому? 

Скин тут не при чём. У тебя попросту деинсталлятор отключён:

Uninstallable=no
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

 

Скин тут не при чём. У тебя попросту деинсталлятор отключён:

Uninstallable=no

точно!!! спасибо помогло))

Share this post


Link to post

Short link
Share on other sites

точно!!! спасибо помогло))

когда удаляю из сетапа  Uninstallable=no  или ( мало ли :gg:​ )  вместо no ставлю yes  вот така штука происходит. к чему бы это? )))

 

 

Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites

Через отладку запускай инсталлятор и лови баги свои.

Share this post


Link to post

Short link
Share on other sites

когда удаляю из сетапа  Uninstallable=no  или ( мало ли :gg:​ )  вместо no ставлю yes  вот така штука происходит. к чему бы это? )))

Ошибка возникает при деинсталляции?

Share this post


Link to post

Short link
Share on other sites

Ошибка возникает при деинсталляции?

да при деинсталляции, а так  все работает и всё ставится,не работает только деинсталятор,

Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites

Тогда копай функции, которые называются Uninstall*** и связанные с ними.

Share this post


Link to post

Short link
Share on other sites

Тогда копай функции, которые называются Uninstall*** и связанные с ними.

в коде кроме вот этого нигде ничего нет с словом Uninstall

Function InitializeUninstall(): Boolean;
begin
 FileCopy(ExpandConstant('{app}\{#SKinDll}'), ExpandConstant('{tmp}\{#SKinDll}'), False);
 FileCopy(ExpandConstant('{app}\{#SKin}'), ExpandConstant('{tmp}\{#SKin}'), False);
 LoadSkinU(ExpandConstant('{tmp}\{#SKin}'), '');
 DeleteFile(ExpandConstant('{app}\{#SKinDll}'));
 DeleteFile(ExpandConstant('{app}\{#SKin}'));
 Result:=True;
end;

Procedure DeinitializeUninstall();
begin
 UnloadSkinU();
end;

Share this post


Link to post

Short link
Share on other sites

@ЛОМ,

 

И не стоит использовать скин в деинсталляторе - он там нафиг не нужен.

Share this post


Link to post

Short link
Share on other sites

Гуру инсталляторов подскажите,как совместить инсталл танков и кораблей в одном флаконе? Имеется ввиду выбор игры вначале и потом у каждой свой выбор компонентов и тд.? 

Share this post


Link to post

Short link
Share on other sites

Гуру инсталляторов подскажите,как совместить инсталл танков и кораблей в одном флаконе? Имеется ввиду выбор игры вначале и потом у каждой свой выбор компонентов и тд.? 

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

Главная задача - разделить компоненты. Всё остальное - обычные динамические подстановки.

Компоненты разделяются очень легко, и не одним способом. От работы с одним (зачастую стандартным) компонентЛистом, до разделения компонентов, предназначенных для разных игр, на отдельные листы.

 

Кстати, подобная идея (работа с одним компонентЛистом) реализована в разрабатываемой мной сборке от ModerTeam. Такой подход я бы и посоветовал (меньше работы с частью кода, и использование стандартных компонентов, через секцию [Components]).

Edited by Kotyarko_O
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Гуру инсталляторов подскажите,как совместить инсталл танков и кораблей в одном флаконе? Имеется ввиду выбор игры вначале и потом у каждой свой выбор компонентов и тд.? 

я конечно не гуру и почти ничего в этом деле не знаю но чисто теоретически...что нельзя в установщике просто сделать две страницы компонентов?!  На 1 танки на 2 корабли))  а путь где установлена игра у многих разный и по любому в начале установки каждый указывает путь к своей игре))) 

Share this post


Link to post

Short link
Share on other sites

Приветствую господа! Появилась такая проблемка-при наведении на компоненты картинки почему-то прозрачные(вообще ни хрена видно),Может кто то знает знает как исправить это недоразумение?Заранее благодарю

Share this post


Link to post

Short link
Share on other sites

 

 

Появилась такая проблемка-при наведении на компоненты картинки почему-то прозрачные(вообще ни хрена видно),Может кто то знает знает как исправить это недоразумение?
Изменяйте значение прозрачности (альфу).

Share this post


Link to post

Short link
Share on other sites

Изменяйте значение прозрачности (альфу).Если не трудно подскажите какие имеено значения надо изменить?

Разобрался.Вопрос снят.Всем спасибо за помощь

Share this post


Link to post

Short link
Share on other sites

народ подскажите как сделать чтобы папка или файл на рабочий стол падал? я ступил и именно свой путь прописал)) у меня естественно всё копировалось на мой рабочий стол а у других копировалось  в   " С-Пользователи " 

Source: "F:\А ДЛЯ СБОРКИ\ЧИТЫ И МОДЫ\56а Очистка кеша ХВМ и ИГРЫ\*"; DestDir: "C:\Users\78\Desktop"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: KMP\56;
Edited by ЛОМ

Share this post


Link to post

Short link
Share on other sites
как сделать чтобы папка или файл на рабочий стол падал?
DestDir: "{userdesktop}";

p.s. вот так делать не стоит:

Source: "F:\А ДЛЯ СБОРКИ\ЧИТЫ И МОДЫ\56а Очистка кеша ХВМ и ИГРЫ\*";

Достаточно указывать путь относительно директории проекта.

Edited by Kotyarko_O
  • Upvote 1

Share this post


Link to post

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...