Jump to content
Korean Random
EvilAlex

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

Recommended Posts

, максимальный размер инсталлятора в exe'шнике - 2100000000 байт. Больше --> разбитие на части.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

 

 

но оно вроде будет bin архивы как я помню
Да. Ограничение на одну часть - 2,1Гб.
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Здравствуйте,

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


Да,и, будьте добры скрипт чтобы нужные моды с инета качались

Share this post


Link to post

Short link
Share on other sites

 

 

у Вас есть скрипт модпака как у Вспышки ?
Скриншоты хоть покажите.

 

 

 

будьте добры скрипт чтобы нужные моды с инета качались
https://mitrichsoftware.wordpress.com/inno-setup-tools/inno-download-plugin/

Share this post


Link to post

Short link
Share on other sites

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

есть типо как у амвея

 

Да,и, будьте добры скрипт чтобы нужные моды с инета качались

http://www.koreanrandom.com/forum/topic/9050-инсталлятор-для-модпаков/?p=209060

Share this post


Link to post

Short link
Share on other sites

Здравствуйте,

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

Я его делаю. Есть какие-то вопросы?

Share this post


Link to post

Short link
Share on other sites

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

if WinXP then
....

Да ,есть.Нужен скрипт такой же с примером.

ты подумал что под новый год тебе просто так дадут готовый скрипт? :heh:

Share this post


Link to post

Short link
Share on other sites

как я понял типо так

function WindowsXP: boolean;
begin
  Result := ((GetWindowsVersion shr 24) = 5) and (((GetWindowsVersion shr 16) and $FF) = 1 or 2);
end;

procedure CopyAdioFile(FromPlace, ToPlace: String);
begin
  if WindowsXP then
    begin
      .....
    end;
  if not WindowsXP then
    begin
      .....
    end;
end;

Share this post


Link to post

Short link
Share on other sites

, этого будет достаточно:

Result := (GetWindowsVersion shr 24) = 5;
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Необходимо реализация динамического изменения конфига одного или нескольких модов по параметрам.

 

Когда задача в изменении всего 1 пункта конфига - тут самое простое создать две копии этого конфига с параметром изменения (к примеру true и false) и устанавливать в зависимости от выбора пользователя.

 

А когда таких параметров много  и количество комбинаций кофига стремится к N степени, как динамически менять содержимое файла конфига при установке?

 

 

Где почитать?

Edited by MAHINATOR

Share this post


Link to post

Short link
Share on other sites
Необходимо реализация динамического изменения конфига одного или нескольких модов по параметрам.Когда задача в изменении всего 1 пункта конфига - тут самое простое создать две копии этого конфига с параметром изменения (к примеру true и false) и устанавливать в зависимости от выбора пользователя.

А когда таких параметров много  и количество комбинаций кофига стремится к N степени, как динамически менять содержимое файла конфига при установке?

Где почитать?

 

Как-то так:

[code]
function XVMConfigEdit(XCName, OldXCValue, NewXCValue: String): Boolean;
var
  XVMConfig: TStringList;
  XVMSetStr: TArrayOfString;
  XVMConfigDir, FileName, Tmp: String;
begin
  XVMConfigDir:=ExpandConstant('{app}\res_mods\configs\xvm\default\');
  FileName:=XVMConfigDir + XCName;
  If FileExists(FileName) then
  begin
  XVMConfig:=TStringList.Create;
  try
    XVMConfig.LoadFromFile(XVMConfigDir + XCName);
    Tmp:=XVMConfig.Text;
    StringChange(Tmp, OldXCValue, NewXCValue);
    XVMConfig.Text:=Tmp;
    XVMConfig.SaveToFile(XVMConfigDir + XCName);
    // -- Для сохранения в UTF-8 -- //
    //LoadStringsFromFile(XVMConfigDir + XCName, XVMSetStr);
    //SaveStringsToUTF8File(XVMConfigDir + XCName, XVMSetStr, False);
  finally
  XVMConfig.Free;
  end;
  end;
end;

procedure XVMConfigCheck();
begin
  If IsComponentSelected('XVM\Spotted') then
  begin
    XVMConfigEdit('battle.xc', '"allowSpottedStatus": false,', '"allowSpottedStatus": true,');
  end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
  If CurStep = ssPostInstall then
  begin
    XVMConfigCheck();
  end;
end;

Edited by AtotIK
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Как-то так:

[code]
function XVMConfigEdit(XCName, OldXCValue, NewXCValue: String): Boolean;
var
  XVMConfig: TStringList;
  XVMSetStr: TArrayOfString;
  XVMConfigDir, FileName, Tmp: String;
begin
  XVMConfigDir:=ExpandConstant('{app}\res_mods\configs\xvm\default\');
  FileName:=XVMConfigDir + XCName;
  If FileExists(FileName) then
  begin
  XVMConfig:=TStringList.Create;
  try
    XVMConfig.LoadFromFile(XVMConfigDir + XCName);
    Tmp:=XVMConfig.Text;
    StringChange(Tmp, OldXCValue, NewXCValue);
    XVMConfig.Text:=Tmp;
    XVMConfig.SaveToFile(XVMConfigDir + XCName);
    // -- Для сохранения в UTF-8 -- //
    //LoadStringsFromFile(XVMConfigDir + XCName, XVMSetStr);
    //SaveStringsToUTF8File(XVMConfigDir + XCName, XVMSetStr, False);
  finally
  XVMConfig.Free;
  end;
  end;
end;

procedure XVMConfigCheck();
begin
  If IsComponentSelected('XVM\Spotted') then
  begin
    XVMConfigEdit('battle.xc', '"allowSpottedStatus": false,', '"allowSpottedStatus": true,');
  end;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
  If CurStep = ssPostInstall then
  begin
    XVMConfigCheck();
  end;
end;

Благодарю!

Схема предельно понятна.

Share this post


Link to post

Short link
Share on other sites

 

 

Необходимо реализация динамического изменения конфига одного или нескольких модов по параметрам.

Где почитать?

КМК, хороший пример: https://bitbucket.org/Kotyarko_O/kmp/src/d3d41b7b557b361af85dad7d814887da5320ab54/ConfigEditor.iss?fileviewer=file-view-default
  • 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...