Время на прочтение6 мин
Количество просмотров33K
Продолжая тему работы с Windows Installer, сегодня предлагаю поговорить о готовых инсталляторах, предоставляемых производителями ПО – для их обозначения широко применяется термин «vendor MSI».
Как вы помните из прошлой статьи, Windows Installer является промышленным стандартом установочных файлов и используется в большинстве систем развертывания приложений. Vendor MSI очень удобны для системных администраторов, занимающихся развертыванием ПО в корпоративных сетях. Казалось бы, достаточно взять из документации установочные параметры, использовать их в командной строке или трансформе – и дело сделано. Всё ли так просто?
Предлагаю заглянуть внутрь нескольких vendor MSI и разобраться с их устройством.
Из всякого правила есть исключения. Несмотря на то, что инсталляционный пакет прошел тестирование производителя, будьте готовы столкнуться с непредвиденным поведением в процессе установки, возникающим именно в ваших неповторимых условиях.
Естественно, при подготовке приложения к развертыванию в корпоративной среде нужно руководствоваться в первую очередь рекомендациями производителя ПО. Однако иногда система развертывания понимает только формат MSI, а вендор предоставляет только exe-инсталлятор — в этом случае есть смысл попытаться заполучить именно vendor MSI.
Где взять vendor MSI?
Предположим, нужно развернуть некоторое приложение в нашей сети. Обычно у нас есть установочный пакет, полученный от производителя ПО – скопированный с установочного диска, скачанный с официального сайта и т.д.
Если у нас нет установочного пакета – идем на
рутрекер
сайт производителя и ищем пакет там. На сайте нет пакета в формате MSI, только онлайн-установщик или setup.exe? Попробуем поискать получше. Часто msi-файл для корпоративных пользователей вместе с инструкциями по развертыванию находится не на главной странице, а в разделе сайта с громким названием вроде «For business» (например, Google Chrome или Skype), или на ftp производителя. Если есть выбор из online и offline установщика – выбираем offline вариант.
Простое правило – установочный пакет (в любом формате) можно скачивать только с официального сайта (или ftp) производителя. НИКОГДА не качайте установщик с «файловых архивов» и «каталогов программ», дабы не столкнуться с неприятным сюрпризом.
Естественно, полные версии платных приложений вроде Adobe Creative Suite вы не найдете в открытом доступе. Если у вас есть лицензия на корпоративную версию, но нет установочных файлов — смело обращайтесь в службу поддержки производителя.
Итак, установочный пакет у нас есть. Если он представляет собой файл с расширением .msi – мы имеем дело с vendor MSI (спасибо, Кэп!). Если установщик содержит набор файлов, среди которых есть файл(ы) с расширением .msi – это тоже кандидат на звание vendor MSI. Если установщик – файл с расширением .exe, его не сразу стоит списывать со счетов – есть шансы что это «обертка» и внутри обнаружится снова-таки vendor MSI.
Это можно проверить так:
• Попытаться открыть exe-файл с помощью программы-архиватора (7-zip, WinRAR).
• Запустить установку приложения из имеющегося exe-файла и заглянуть во временные папки (%temp%). Обычно во время установки создается папка со случайным названием, в ней находятся установочные файлы, включая msi-файл. Копируем установочные файлы в надежное место – после окончания процесса установки временная папка удаляется.
• Заглянуть в журналы событий по окончанию установки и проверить наличие свежих записей о событиях с источником MsiInstaller.
• ваш вариант?
Начнем с простого эксперимента на установщике iTunes – откроем файл iTunesSetup.exe с помощью 7-zip и видим, что он включает сразу пять msi-файлов (решить сколько из них «лишние» предлагаю вам самостоятельно).
Убедившись, что мы имеем дело с vendor MSI, продолжаем исследование.
Для удобства предлагаю выделить основные категории vendor MSI. Классификация совершенно условна и основана лишь на личном опыте.
По типу ресурсов:
• «Чистый MSI»
• «Комбинированный MSI»
По типу настройки:
• MSI с простой настройкой через трансформ или параметры
• MSI с мастером настройки
• MSI с файлом ответов
Теперь о каждом немного подробнее и с примерами.
«Чистый MSI»
Общее свойство установщиков такого типа – использование нативных механизмов Windows Installer для установки файлов и ключей реестра. Соответствующие этим ресурсам записи присутствуют в таблицах MSI (File, Registry, Shortcut и т.д.). Для внесения изменений в установку достаточно отредактировать записи этих таблиц в трансформе — вы имеете практически полный котроль над процессом инсталляции.
Простые примеры «чистых MSI» – Skype, InstEd.
Для диагностирования проблем с такими установщиками используются стандартные возможности – чтение записей журнала событий (журнал Application, события с источником MsiInstaller) или полное логирование установки (запуск msiexec с параметром /l*v <install.log>).
«Комбинированный MSI»
В эту категорию я отнес установщики в формате Windows Installer, устанавливающие ресурсы нестандартным для Windows Installer способом. В этом случае Windows Installer используется для вспомогательных задач, а основную часть работы выполняет бинарный Custom Action (.dll или .exe).
Пример первый – Google Chrome for Business.
Хорошо видно, что таблица File в установщике вообще отсутствует, а основную часть установки выполняет бинарный Custom Action под названием DoInstall, внутри него и находятся файлы, которые будут установлены в систему.
Еще один интересный пример – Java Runtime Environment. Извлекаем msi-файл с сопутствующим cab-файлом из оффлайн-установщика, распространяемого в формате exe-файла.
Таблица File этого vendor MSI содержит всего четыре записи, основные файлы приложения находятся внутри zip-архива (который в свою очередь находится внутри cab-файла) с последующей их распаковкой в процессе установки:
За основную часть процесса инсталляции отвечает файл regutils.dll, названия Custom Actions довольно красноречивы:
Этот тип инсталляторов несколько тяжелее поддается диагностированию ошибок – логи Windows Installer дадут нам полезную информацию только до момента запуска внутреннего exe-файла, а сам exe-файл не всегда генерирует внятные сообщения при возникновении ошибок. Также такие vendor MSI тяжелее поддаются настройке. Вернее сказать, наши возможности настройки процесса установки чаще всего ограничены только настройками, предусмотренными производителем ПО. Например, производитель ПО не всегда предусматривает возможность отключения установки ярлыков или внесения изменений в файлы настройки приложения при его установке.
Инсталляторы такого типа иногда преподносят неприятные сюрпризы в процессе установки (приходилось разбираться с JRE и Adobe Flash Player, сваливавшимися на выполнении Custom Action), и на диагностику и исправление ошибок может понадобиться некоторое время.
Теперь перейдем к возможностям настройки пакетов, предлагаемым нам производителями ПО.
MSI с простой настройкой через трансформ или параметры
Это самый распространенный способ – большинство vendor MSI имеют возможность такой настройки. Обычно производитель уже предусмотрел самые востребованные настройки вроде отключения автообновлений приложения и настроек подключения к серверу, и описал это в документации. Настройки могут быть описаны в виде параметров командной строки установщика, параметров MSI (MSI properties) или даже описания реестровых записей, которые вы можете добавить в трансформ для пакета.
Стоит упомянуть, что иногда в более новой версии vendor MSI параметры могут вести себя не так, как в предыдущей (или совсем перестать работать, как когда-то произошло с переставшими работать параметрами отключения автообновлений JRE), но это бывает крайне редко.
MSI с мастером настройки
Некоторые вендоры не ограничиваются публикацией перечня параметров командной строки для установки и настройки пакета. Они предоставляют утилиту для тонкой настройки инсталлятора, выполняющую несколько полезных функций:
• Интуитивно-понятный интерфейс избавляет системного администратора от необходимости открывать msi-файл в редакторе и вручную изменять большое количество записей в таблицах
• Утилита обычно предусматривает некоторую «защиту от дурака» и производит проверку правильности значений изменяемых параметров.
В результате выполнения мастера настроек для msi-файла формируется трансформ, который будет использоваться при развертывании пакета. Естественно, вы можете просмотреть содержимое сохраненного трансформа, применив его к открытому в редакторе msi-файлу.
Хорошим примером такого подхода может служить Adobe Customization Wizard, используемый для настройки параметров установки Adobe Reader и Adobe Acrobat:
Другой пример известного мастера настроек – Office Customization Tool (OCT). Эта утилита позволяет сконфигурировать большое количество параметров, относящихся к установке и пользовательским настройкам MS Office. В результате выполнения мастера создается MSP-файл (патч в терминологии Windows Installer), который используется при дальнейшем развертывании MS Office в корпоративной среде.
MSI с файлом ответов
Этот тип инсталляционных пакетов скорее нужно было назвать «Setup.exe с файлом ответов». Идея состоит в том, что некий установочный файл (назовем его Setup.exe) читает некий предварительно сформированный системным администратором конфигурационный файл (config.xml) и формирует набор параметров для запуска расположенного рядом установочного msi-файла (или нескольких msi-файлов).
Этот подход не предусматривает нашей работы непосредственно с msi-файлом, поэтому не будем на нем останавливаться слишком подробно. Упомяну примеры таких установщиков – файлы настроек Adobe Creative Suite (версии CS2-CS3), а также использование файла ответов config.xml для установки MS Office.
Обычно для диагностики в случае проблем установки можно использовать создаваемый программой-установщиком лог-файл с описанием этапов выполнения; дополнительная информация от Windows Installer также попадает в журналы событий.
Как видите, за общим названием vendor MSI скрываются иногда совершенно непохожие инсталляторы. Надеюсь, эта обзорная статья помогла вам получить представление об их многообразии и о возможных проблемах установки и способах их диагностики.
Файлы MSI известны в качестве файлов, используемых установщиками программ в ОС Windows. Они содержат информацию об определенных установках, которые помогают установщику выполнять свою работу. Эта информация включает файлы, которые необходимо установить, а также различные пути установки. Использовать файлы MSI могут не только обновления ОС Windows, но и сторонние установщики программного обеспечения, которые не принадлежат Microsoft.
Файлы MSI — это не «чистые» установочные файлы, а всего лишь пакетные файлы. Таким образом, они могут быть извлечены с использованием приложения 7-zip или других методов декомпрессии (и/или программного обеспечения). Файлы MSI подвержены заражению. Вместо того, чтобы доверять случайным файлам MSI, рекомендуется проводить тщательную их проверку антивирусом.
Вот небольшой, но неполный список программ, которые могут открывать документы MSI
:
- 7-Zip
- Microsoft Windows Installer
Verified by FileInfo.com
The FileInfo.com team has independently researched the Windows Installer Package file format and Windows apps listed on this page. Our goal is 100% accuracy and we only publish information about file types that we have verified.
If you would like to suggest any additions or updates to this page, please let us know.
PAGE CONTENTS
Установка программ – процедура, с которой сталкивается каждый ПК-пользователь. Она является элементарной и не требует особых знаний в сфере IT, но иногда необходимо учитывать некоторые ее особенности.
Далее предстоит выяснить, как установить программу в том или ином случае на компьютер. Необходимо разобраться в способах инициализации и их особенностях. Предложенная далее информация пригодится преимущественно неопытным ПК-пользователям.
Предварительная подготовка
Перед установкой программ необходимо произвести предварительную подготовку операционной системы к этой процедуре. Это поможет избежать непредвиденных сбоев, а также ускорит процесс инициализации.
Сначала требуется закрыть все приложения, открытые на компьютере или ноутбуке. Рекомендуется следить, чтобы во время установки программного обеспечения на устройстве не было открыто лишних утилит. Они могут помешать инициализации и привести к сбоям процедуры.
Если возникла необходимость в установке программы из Интернета, ее необходимо скачать. Найти «Мастер Установки» для того или иного приложения помогут различные поисковые системы. Рекомендуется загружать установочные файлы только с надежных источников.
До того как началась инсталляция, рекомендуется проверить скачанный из Интернета файл антивирусной программой. Это поможет избежать заражения устройства и потери данных ввиду возникающих последствий наличия вирусов и шпионов на оборудовании.
Форматы файлов из Интернета
Программы, загруженные из Интернета, имеют различные форматы. В зависимости от этого параметра будет меняться сама инсталляция и ее особенности.
В основном, приложения, скачанные из Интернета, встречаются в форматах:
- ISO, MDF или MDS – это образы дисков. Установка программного обеспечения при помощи таких файлов осуществляется через дополнительные программы.
- Exe и msi – расширения, представляющие собой стандартные файлы установки. Они включают в себя все необходимые компоненты программ или веб-установщик, который после активации (запуска) загрузит все необходимое из Интернета.
- Zip, rar и другие архивы. Обычно в таких документах содержится программа, не требующая непосредственной установки. Она с легкостью запустится, если распаковать архив и найти в папке файл запуска. Его стандартное название – это «имя_приложения.exe». Иногда в таких архивах обнаруживаются комплекты для инициализации того или иного программного обеспечения.
Каждый представленный формат требует от пользователя различных действий. Наиболее простым является использование .exe и .msi. Файлы с соответствующими расширениями требуют наименьшее количество манипуляций для установки и настройки приложений.
Использование .exe и .msi
Инсталляция при помощи стандартных установочных файлов – простейшая процедура. После скачивания программного обеспечения можно обнаружить его в папке «Загрузки» браузера или в любом другом месте, который указал пользователь.
Форматы .exe и .msi для начала инициализации приложения требуют от пользователя обычного запуска путем двойного клика левой кнопкой мыши (ЛКМ) по характерной иконке. Иногда для активации «Мастера Установки» пользователю требуется запустить его от имени администратора устройства.
Для этого необходимо:
- Найти установочный документ в формате .exe или .msi.
- Кликнуть по нему правой кнопкой мыши.
- Выбрать параметр «Запуск от имени администратора».
Через некоторое время на экране появится «Мастер Установки», позволяющий начать процесс установки программы. Пользователь должен ознакомиться с приветственным окном, а затем нажать на кнопку «Далее».
После этого особенности инсталляции будут зависеть от каждого отдельно взятого программного обеспечения. Обычно нужно изучить пользовательское соглашение и согласиться с ним, указать путь установки и подтвердить операцию. Некоторые инсталляторы в процессе работы предлагают выбрать дополнительные операции, примером которых служит установка дополнительного софта.
В конечном итоге на экране устройства появится окно со строкой прогресса инициализации. Когда она будет полностью заполнена, софт будет установлен. «Мастер Установки» сообщит об этом пользователю. Для выхода из него предстоит кликнуть или на кнопку «Завершить» в диалоговом окне инсталлятора, или на кнопку «Закрыть» в его правом верхнем углу.
Работа с zip и rar
Иногда загруженное программное обеспечение имеет формат .rar или .zip. Это – архивы. Документы, в которых в сжатом виде содержатся другие файлы. Для распаковки и извлечения оттуда приложений необходимо использовать программу-архиватор. Примером может послужить бесплатный 7Zip.
Распаковка архива осуществляется так:
- Найти на устройстве архив, который требует распаковки.
- Нажать на него правой кнопкой мыши (ПКМ).
- Выбрать «Извлечь архив в…».
- Указать место распаковки.
После завершения этой процедуры необходимо найти файл для запуска программы с расширением .exe. Иногда после этого на экране появляется «Мастер Установки». Это – нормальное явление. Порядок действий для настройки и установки программ в этом случае будет точно такой же, как в ранее представленной инструкции.
Использование ISO и MDF
Чтобы поставить на компьютер то или иное приложение, загруженное в формате ISO или MDF, требуется:
- Установить дополнительный софт для монтирования образов на устройство. Примерами могут послужить Alcohol120%, Daemon Tools Lite или UltraISO.
- Открыть приложение монтирования образов и создать новый виртуальный диск. Он должен быть свободным.
- Выбрать «Образы» и указать файл в формате ISO или MDF.
- Нажать на кнопку «Запустить».
Монтирование образа диска на компьютере помогает распознать его подобно обычному (физическому) CD или DVD. После его запуска на устройстве появится «Мастер Установки», пользуясь которым удастся завершить процедуру инсталляции.
Использование реального диска
Установка того или иного программного обеспечения на компьютер может производится еще проще – при помощи реального диска с приложением или игрой. Он приобретается в компьютерных магазинах. Может быть смонтирован и записан на CD/DVD самостоятельно.
Настраивать и инициализировать приложения при помощи физических дисков проще простого, но этот вариант понемногу утрачивает свою актуальность ввиду загрузки софта из Интернета. Порядок действий при наличии физического диска с приложением будет следующим:
- Запустить компьютер и подготовить его, закрыв все лишние окна и программы.
- Открыть дисковод устройства и вставить в него диск.
- Закрыть дисковод.
- Дождаться загрузки «Мастера Установки». Обычно это операция происходит через несколько секунд после закрытия дисковода с диском.
- Следовать инструкции, написанной в первом алгоритме (установка .exe и .msi).
Если «Мастер Установки» не запустился, предстоит кликнуть по ярлыку «Мой компьютер», затем выбрать DVD-диск и кликнуть по нему правой кнопкой мыши. Далее – выбрать команду «Запустить».
Можно также выбрать пункт «Открыть» – на экране появится содержимое диска. Там предстоит отыскать «Мастер Установки» (документ с названием программы с расширением .exe), а затем запустить его. Далее – следовать стандартным инструкциям по настройке процедуры инсталляции.
Как проверить установленные приложения
Процесс установки той или иной программы практически всегда одинаков. Разница заключается лишь в активации «Мастера Установки». То же самое касается настройки софта в процессе инициализации.
Чтобы посмотреть уже установленные на компьютер приложения, необходимо:
- Открыть «Пуск».
- Перейти в «Панель управления».
- Выбрать в пункте «Программы» команду «Удаление программы».
На экране появится меню с доступными для удаления приложениями. Они же являются инициализированными на устройстве.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus!
Are you installing software on your local Windows machine? Understanding the difference between MSI vs EXE installation programs is critical. In this guide, we’ll explore the nuances of these two formats, including how they affect software compatibility, security, and customization.
What is an MSI installer?
An MSI (Microsoft Software Installer) installer is a file format developed by Microsoft that is commonly used for installing, maintaining, and removing software on Windows systems. The MSI file is a database-like “package” containing all the necessary information and instructions for installing a program.
The MSI database file contains tables with details about the files to be installed, shortcuts, Windows Registry settings, and more. These tables are then compressed, packaged, and saved as a single MSI file for distribution.
Windows MSI files use a standardized format that leverages the Windows Installer technology, making it easier for system administrators and end users to install programs in a corporate IT environment. This ensures the software is installed correctly and consistently across different Windows machines.
The Windows Installer takes the contents of the MSI file and handles the underlying details of the installation process. In particular, MSI packages can be installed “quietly,” without the need for users to provide any input or be involved in the process — another benefit for large enterprise IT environments where software may need to be installed on many endpoints.
What is an EXE installer?
On the other hand, an EXE (executable) installer is a file format containing the actual program code and resources required to run an application. It is a self-extracting archive that often includes an installer program to guide users through the installation process.
Unlike the MSI installer, EXE installers don’t necessarily adhere to a strict standard. This gives them more flexibility but can lead to inconsistencies when deploying and managing new software applications.
EXE files may contain software installers but are also generally used for any executable program on Windows. This differentiates them from MSI files, which are only used for software installation and uninstallation. EXE files can also contain viruses and malware, so system administrators and users must take care to only obtain them from trusted sources.
When they are used for installing software, EXE files contain all of the necessary code and other resources required to run the program, such as dynamic-link libraries (DLLs). This is because EXE installers do not depend on the underlying infrastructure of the Windows Installer, unlike MSI installers.
Key differences between MSI vs EXE file formats
While both MSI and EXE file formats are used for software installation on Windows operating systems, they serve different purposes and needs. Below, we’ll explore some of the most significant differences between MSI and EXE installers.
Compatibility with different operating systems
MSI files are compatible with multiple Windows operating systems, so there’s no need to create different MSIs for different Windows versions. They can be run on Linux and macOS using specific tools, but aren’t generally used that way. EXE files are also Windows-specific executables. However, they can be run on Linux or macOS through Wine, a free software that acts as a compatibility layer between the file and the operating system.
Ease of installation and uninstallation
MSI installers come with built-in support for both installing and uninstalling software. This makes it easy for users to add or remove programs via the standard Windows interface. They also have a built-in rollback mechanism that can help protect your system from damage. If an error occurs during software installation or uninstallation, the system can automatically revert to its previous state, ensuring a smoother and more reliable process.
On the other hand, EXE installers may or may not have built-in support for uninstalling programs, depending on how the software’s developers configured the installer. In some cases, users may need to manually uninstall programs that were installed via EXE (by deleting the application and associated files, for example). They also may not have a built-in rollback mechanism, making it more challenging to revert system changes in case of an installation failure.
Security considerations
MSI installers integrate with the Windows Installer service, which provides security features such as user account control, digital signatures, and verification of package integrity. These features ensure that the software being installed is trustworthy and has not been tampered with. Enterprise-grade MSI installers can be deployed using Group Policy or other software deployment tools, ensuring centralized control and security compliance.
EXE installers may lack the built-in security features provided by the Windows Installer service. However, developers can still implement security measures by digitally signing their EXE installers, which helps validate the authenticity and integrity of the installer. Additionally, system administrators can leverage third-party software deployment tools to control and secure the distribution of EXE installers.
Customization options
When it comes to customization options, MSI installers offer more flexibility compared to EXE installers. The Windows Installer technology provides a rich set of features for customizing the installation process, such as specifying installation options, creating custom dialogs, and defining conditions for component installation. This level of customization is particularly beneficial for system administrators who need to deploy software with specific configurations across multiple machines.
EXE installers, on the other hand, may have limited customization options depending on the installer program used. While some installer programs offer advanced customization features, others may only provide basic options for selecting installation directories and components. Developers must carefully evaluate their software’s customization requirements and choose an installer format that best suits their needs.
Use cases for MSI vs EXE installers
The choice between MSI vs EXE installers largely depends on the specific use case and target audience. MSI installers are well-suited for enterprise deployments and system administrators who need a standardized approach to software installation. The consistency of MSI installers makes managing and maintaining software easier across multiple machines. Additionally, the security features and customization options offered by MSI installers make them ideal for large-scale deployments in organizations.
If you don’t need the consistency MSI offers, EXE installers are more versatile and aren’t dependent on the built-in Windows Installer technology. This feature makes them particularly useful for independent software vendors who develop applications targeting a broader user base.
Still deciding which installer fits best? Watch our video – MSI vs EXE: A Guide in Choosing the Right Installer.
Deciding between MSI vs EXE installers
Are you debating the merits of MSI vs EXE file formats for installing or uninstalling programs? Both formats have advantages and considerations, which means that it’s crucial to evaluate your software’s specific needs and requirements, target audience, and deployment scenarios.
For enterprise deployments, MSI installers provide a standardized and secure approach to software installation. They offer ease of management, customization options, and compatibility with the Windows operating system. By contrast, EXE installers offer versatility and reduced dependence on the Windows Installer, making them suitable for software distribution to a wider audience.
Deploy, manage, update or uninstall both MSI and EXEs programs efficiently using NinjaOne.
→ Discover what NinjaOne Software Deployment can do for you.
NinjaOne’s software enables users to smoothly upload applications in both MSI and EXE formats, thus simplifying the process of software deployment in IT environments. Check out our software deployment user guide to learn how to effectively save time, automate, and seamlessly deploy applications to your endpoints. Watch a demo of to see the software in action or sign up for a free trial and get started today.