Ответ 1
MSI - это база данных установщика Windows. Установщик Windows (служба, установленная с Windows) использует это для установки программного обеспечения в вашей системе (например, копирование файлов, установка значений реестра и т.д.).
Setup.exe может быть загрузчиком или не MSI установщиком. Установщик, не относящийся к MSI, извлечет ресурсы установки из себя и будет управлять их установкой напрямую. Загрузчик будет содержать MSI вместо отдельных файлов. В этом случае setup.exe вызовет установщик Windows для установки MSI.
Некоторые причины, по которым вы можете использовать setup.exe:
- Установщик Windows позволяет устанавливать только один MSI одновременно. Это означает, что MSI трудно установить другие MSI (например, такие зависимости, как .NET Framework или среда выполнения C++). Поскольку файл setup.exe не является MSI, его можно использовать для последовательной установки нескольких MSI.
- Возможно, вам потребуется более точный контроль над управлением установкой. У MSI есть очень специфические правила о том, как он управляет установками, включая установку, обновление и удаление. Setup.exe дает полный контроль над процессом настройки программного обеспечения. Это должно быть сделано только в том случае, если вам действительно нужен дополнительный контроль, так как это много работы, и может быть сложно сделать это правильно.