Jump to content
Korean Random
EvilAlex

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

Recommended Posts

выдаёт ошибку

Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда

 

а ты как он написал это в скрипт дописал? 

[Setup]
DefaultDirName={code:WotDirNameRU}

 

тот же вопрос

Share this post


Link to post

Short link
Share on other sites

тот же вопрос

у меня просто ещё такой код стоит как вместе с ним соединить не могу догнать всю голову сломал

 

 

 

 

function IsAppRunning(): Boolean;

begin

  Result:=(FindWindowByWindowName('WoT Client') <> 0);

end;

function NextButtonClick(CurPage: Integer): Boolean;

begin

   Result:=True;

If CurPage=1 then

begin

  if IsAppRunning() then

  begin

    MsgBox('Клиент игры World of Tanks в настоящее время запущен.' #13#13 'Необходимо закрыть его перед продолжением установки.', mbError, MB_OK);

    Result:=False;

  end

  else

    Result:=True;

end;

end;

 

Edited by sergy2010

Share this post


Link to post

Short link
Share on other sites

Привет всем подскажите как эту проблему исправить с окнами post-24103-0-99112300-1478637107_thumb.jpeg

Share this post


Link to post

Short link
Share on other sites

Привет всем подскажите как эту проблему исправить с окнами attachicon.gifQzx4tI6.jpeg

  сделай значение ScaleX , ScaleУ такие же как у рамки

Edited by sergy2010

Share this post


Link to post

Short link
Share on other sites

  сделай значение х,у такие же как у рамки

где сделать, не понял?

Share this post


Link to post

Short link
Share on other sites

кто подскажит скрип чтоб в конце  2 сайта были  с чекбоксами на выбор

Секция [Run] и [CustomMessages]

 

postinstall

Действителен только в секции [Run]. Указывает инсталлятору создать задание с флажком (checkbox) на странице мастера Установка завершена. Пользователь может снять или поставить этот флажок и тем самым выбрать, будет ли эта запись обработана или нет. Раньше этот флаг назывался showcheckbox.

Если инсталлятор должен перезагрузить компьютер пользователя (после установки файла с флагом restartreplace или если директива AlwaysRestart секции [setup] равна yes), страница с флажком для выбора не сможет отобразиться и из-за этого параметр не будет обработан.

Флаг isreadme для параметров секции [Files] теперь не нужен. Если компилятор обнаружит флаг isreadme, он его удалит и заменит соответствующим заданием секции [Run] в начале этой секции. У этого задания будут флаги shellexec, skipifdoesntexist, postinstall и skipifsilent.

 

shellexec

Этот флаг нужно использовать, только если в Filename задан не исполняемый файл (не .exe и не .com). Когда флаг установлен, Filename может быть папкой или любым зарегистрированным типом файла - включая .chm, .doc и т.д. Файл будет отрыт программой по умолчанию для его типа. То же произойдет, если пользователь дважды кликнет мышью на файле в окне Проводника.

По умолчанию, при использовании флага shellexec, инсталлятор не будет ждать, пока завершится запущенный процесс. Если необходимо, чтобы инсталлятор подождал завершения выполнения процесса, следует комбинировать флаг shellexec с флагом waituntilterminated. Обратите внимание, что инсталлятор не будет ждать окончания процесса, если, например, в Filename указана папка.

 

unchecked

Действует только в секции [Run]. Указывает инсталлятору снять флажок. Пользователь может его выбрать, если захочет. Этот флаг игнорируется, если также указан флаг postinstall.

waituntilidle

Если установлен этот флаг, инсталляция остановится и подождет, пока пользователь введет необходимые ей данные, вместо того, чтобы ожидать окончания процесса. (Вызывается Win32 функция WaitForInputIdle). Не комбинируется с nowait или waituntilterminated.

 

runasoriginaluser

Работает только в секции [Run]. Если этот флаг определен, и система, в которой выполняется инсталлятор, является Windows Vista или более поздние версии, то порожденный процесс выполнится с учетными данными пользователя, который первоначально запустил инсталлятор (то есть, учетные данные "диалог pre-UAC").

Это - поведение по умолчанию, когда флаг postinstall используется.

Если пользователь запустит инсталлятор от имени администратора (щелчок по правой кнопке мышки на EXE файле -> "Запуск от имени администратора"), то тогда этот флаг, к сожалению, не будет иметь никакого эффекта, потому что инсталлятор не имеет возможность выполнения любого кода с исходными пользовательскими учетными данными. Будем иметь аналогичную ситуацию, если инсталлятор запустится от уже поднятого процесса. Обратите внимание, однако, что это не специфичное ограничение для Inno Setup; основанные на установщике Windows инсталляторы в таких случаях тоже не могут возвращать исходные пользовательские учетные данные.

Этот флаг не может комбинироваться с runascurrentuser.

 

[Run]
Filename: http://site1.com; Description: {cm:Site1}; Flags: postinstall shellexec runasoriginaluser
Filename: http://site2.com; Description: Название сайта 2; Flags: postinstall shellexec runasoriginaluser unchecked

[CustomMessages]
Site1=Название сайта 1
Edited by Yusha
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

у меня просто ещё такой код стоит как вместе с ним соединить не могу догнать всю голову сломал

 

 

 

 function IsAppRunning(): Boolean;

begin

  Result:=(FindWindowByWindowName('WoT Client') <> 0);

end;function NextButtonClick(CurPage: Integer): Boolean;

begin

   Result:=True;

If CurPage=1 then

begin

  if IsAppRunning() then

  begin

    MsgBox('Клиент игры World of Tanks в настоящее время запущен.' #13#13 'Необходимо закрыть его перед продолжением установки.', mbError, MB_OK);

    Result:=False;

  end

  else

    Result:=True;

end;

end;

 

function IsAppRunning(): Boolean;
begin
  Result:=(FindWindowByWindowName('WoT Client') <> 0);
end;

Function NextButtonClick(CurPageID: Integer): Boolean;
begin
 Result := True;
 case CurPageID of
 wpSelectDir:
  begin
   if not FileExists(ExpandConstant('{app}\WorldOfTanks.exe')) then begin
    MsgBoxEx(0, 'Установка модов невозможна, так как по выбранному пути отсутствует клиент игры World of Tanks!','Неправильный путь к игре World of Tanks',MB_OK or MB_ICONERROR, 0, 0);
    Result := False;
   end;
  end;
   wpReady:
    begin
    if IsAppRunning() then
    begin
     MsgBox('Клиент игры World of Tanks в настоящее время запущен!' + #13 + 'Необходимо закрыть его перед продолжением установки!', mbError, MB_OK);
     Result:=False;
    end;
    end;
 end;
end;

Share this post


Link to post

Short link
Share on other sites

здарова  Gad575 сможешь их вместе скомпелировать а то я болбес

попробуйте этот вариант:

[Code]
function IsAppRunning(): Boolean;
begin
  Result:=(FindWindowByWindowName('WoT Client') <> 0);
end;

function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result := True;
case CurPageID of
wpSelectDir:
begin
   if not FileExists(ExpandConstant('{app}\WorldOfTanks.exe')) then begin
    MsgBoxEx(0, 'Установка модов невозможна, так как по выбранному пути отсутствует клиент игры World of Tanks!','Неправильный путь к игре World of Tanks',MB_OK or MB_ICONERROR, 0, 0);
    Result := False;
end;
#ifdef DateToEnd
begin
  Result := CompareStr(GetDateTimeString('yyyy.mm.dd', '.', #0), '{#DateToEnd}') <= 0;
  If not Result then
  begin
   MsgBox('время пользование модпака завершенно.', mbError, MB_OK);
  end
   else
    begin
     Result := True;
    end;
end;
end;
#endif
   wpReady:
    begin
     if IsAppRunning() then
     begin
      MsgBox('Клиент игры World of Tanks в настоящее время запущен!' + #13 + 'Необходимо закрыть его перед продолжением установки!', mbError, MB_OK);
      Result:=False;
     end;
    end;
end;
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

Gad575 не подскажешь как в в выборе других задач создать создать 2 чекбокса с сайтами

Share this post


Link to post

Short link
Share on other sites

Gad575 не подскажешь как в в выборе других задач создать создать 2 чекбокса с сайтами

[Tasks]
Name: "gotositeone"; Description: "Перейти на первый сайт после окончания установки"; GroupDescription: "Дополнительные задачи:"
Name: "gotositetwo"; Description: "Перейти на второй сайт после окончания установки"; GroupDescription: "Дополнительные задачи:"

[Run]
Filename: http://bla.ru/; Tasks: gotositeone
Filename: http://blabla.ru/; Tasks: gotositetwo 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

[Tasks]
Name: "gotositeone"; Description: "Перейти на первый сайт после окончания установки"; GroupDescription: "Дополнительные задачи:"
Name: "gotositetwo"; Description: "Перейти на второй сайт после окончания установки"; GroupDescription: "Дополнительные задачи:"

[Run]
Filename: http://bla.ru/; Tasks: gotositeone
Filename: http://blabla.ru/; Tasks: gotositetwo 

а ты сам то проверял этот скрипт ,там ошибка ссылается на неверное имя файла

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

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

  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

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

скриншот какой кнопкой делается вообще же ты знаешь? )) так вот просто нажми на нее когда захочешь сделать скрин. затем открой стандартный фоторедактор что есть в винде, и там открой окошко с функциями и  нажми создать. и в том что создал просто вставишь скрин нажав Ctrl+V.  короче как то так))) 

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