Используйте Inno Setup просто для запуска MSI без собственного графического интерфейса - PullRequest
0 голосов
/ 29 июня 2010

Я использую Wix для создания 2 инсталляторов для моего приложения, один для x86 и один для x64.Я хочу использовать InnoSetup для создания одного setup.exe, который будет запускать соответствующий MSI-файл.Нетрудно заставить Inno запустить соответствующий .msi:

[Files]
Source: "App.x86.msi"; DestDir: "{tmp}"; Check: not Is64BitInstallMode
Source: "App.x64.msi"; DestDir: "{tmp}"; Check: Is64BitInstallMode

[Run]
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\App.x86.msi"""; Description:    "MyApp"; Check: not Is64BitInstallMode
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\App.x64.msi"""; Description: "MyApp"; Check: Is64BitInstallMode

Но моя проблема с мастером Inno GUI.А именно, я этого не хочу.Я хочу, чтобы Inno тихо запустился, выбрал MSI, запустил его и ушел.Нет Inno-сгенерированного мастера.Это возможно?Есть ли лучший инструмент для достижения моей конечной цели?

1 Ответ

2 голосов
/ 30 июня 2010

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

[Setup]
AppName=example
AppVersion=1
DefaultDirName=example
DisableStartupPrompt=Yes
DisableDirPage=Yes
DisableProgramGroupPage=Yes
DisableReadyPage=Yes
DisableFinishedPage=Yes
DisableWelcomePage=Yes
[Files]
Source: test.txt; DestDir: C:\;

[Run]
Filename: notepad.exe; Parameters: "C:\test.txt"; Description: MyApp;

Если у вас уже есть несжатые файлы, у вас может быть файл install.cmd, который называется InnoSetup с параметром командной строки / silent.

Или вы можете создать файл install.cmd, который выбирает правильную ОС на основе переменной среды PROCESSOR_ARCHITECTURE.

IF %PROCESSOR_ARCHITECTURE%==x86 then (
notepad test.txt
) else (
notepad test2.txt
)
...