Inno Setup: снимите флажок после установки с флагами CLI - PullRequest
2 голосов
/ 02 февраля 2012

В настоящее время в разделе [Run] скрипта Inno Setup есть следующее

Filename: {app}\App.exe; Description: {cm:LaunchProgram,App}; Flags: nowait postinstall

В 99,9% случаев это идеально, флажок установлен по умолчанию, и приложение запускается после автоматической установки (которую мы используем для автоматического обновления), но всегда есть одна ситуация, которой это не так.

По сути, мне нужен способ отключить / снять этот флажок из командной строки втихая установка.Я пытался использовать Задачи и Компоненты, но они добавляют дополнительные страницы и флажки, которые я на самом деле не хочу отображать.

Задача кажется самым простым способом сделать это, если есть способ остановитьфлажок, появляющийся во время обычной установки, в противном случае открыт для любых идей!

Приветствия.

1 Ответ

2 голосов
/ 02 февраля 2012

Я не уверен в том, чтобы отключить или снять этот флажок, но вы можете полностью удалить его (или нет) с последней страницы, используя параметр «Проверка» для вызова функции сценария.

[Run]
Filename: {app}\App.exe; Description: {cm:LaunchProgram,App}; Flags: nowait postinstall; Check: NoRunSwitch


[Code]
function NoRunSwitch: boolean;
var
  i: integer;
begin
  // Return TRUE to show the checkbox on the final page, return FALSE to hide it.
  Result := True; // In case there are no parameters
  for i := 1 to ParamCount do
  begin
    // Tweak the switch parsing to suit your needs here
    Result := not (UpperCase(ParamStr(i)) = '/NORUN');
    if not Result then break;
  end;
end;

Изменить: После перечитывания вашего сообщения, я не уверен, но вы можете спросить, как это сделать для всех установок без вывода сообщений? Если вы просто не хотите, чтобы это происходило во время ЛЮБОЙ установки без вывода сообщений, вы можете просто использовать флаг «skipifsilent». Если вы подразумевали, что установка без вывода сообщений является лишь частью условия, вы можете использовать метод Check, который я описал выше, и вы можете использовать «WizardSilent» в функции проверки, чтобы узнать, выполняется ли программа установки в режиме без вывода сообщений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...