2015-04-04 4 views
2

Я написал установщика с помощью InnoSetup, где пользователь может сделать несколько вариантов программного обеспечения, которое они хотели бы загрузить/установить.Несколько бесшумных установок в InnoSetup

Я использую цикл для установки каждого программного обеспечения, выбранного пользователем молча как этот

ShellExec('', ExpandConstant('{tmp}\' + SoftwareName), '/VERYSILENT', '', 
    SW_SHOW, ewNoWait, ErrorCode); 

Мой вопрос относительно второго последнего параметра.

В моем случае, когда я устанавливаю много бесшумных установок, существует ли разница между использованием ewNoWait, где каждый из них сразу возвращается или использует ewWaitUntilTerminated, где они выполняются один за другим?

Какой из них был бы более предпочтительным или безопасным в моем случае?

Запуск многих бесшумных установок в то же время вид беспокоит меня.

+0

Btw, почему бы вам не использовать '[Run]', вместо того, чтобы кодировать это вручную? –

+0

Поскольку все мое программное обеспечение загружается сначала из удаленного места, прежде чем запускать ShellExec. Исправьте меня, если я ошибаюсь, но я считаю, что [run] используется для выполнения исполняемых файлов, которые уже упакованы внутри установщика. –

+0

Это правильно. –

ответ

1

Некоторые инсталляторы даже не запускаются, если другая установка уже запущена.

Поэтому я бы определенно использовал ewWaitUntilTerminated.