Что такое установщик: Установщик windows — Википедия – Установщик Windows — это… Что такое Установщик Windows?

Содержание

Установщик Windows — это… Что такое Установщик Windows?

Windows Installer (установщик Windows) — подсистема Microsoft Windows, обеспечивающая установку программ (инсталлятор). Является компонентом Windows, начиная с Windows 2000; может доустанавливаться и на более ранние версии Windows. Вся необходимая для установки информация (иногда и вместе с устанавливаемыми файлами) содержится в установочных пакетах (installation packages), имеющих расширение .msi.

История

Windows Installer был разработан в 1995—1998 годах и имел вначале кодовое название Darwin. Ранние версии назывались Microsoft Installer, отсюда стандартное расширение файла инсталляционного пакета — .msi. [2]

Первая версия Installer’а вышла в начале 1999 в качестве инсталлятора Microsoft Office 2000. В конце того же года Installer стал частью Windows 2000. Майкрософт всячески поощрял переход разработчиков на новый инсталлятор, включив в список требований к программам, желающим получить так называемый знак Windows 2000 Logo, требование устанавливаться с помощью Windows Installer.

Windows Installer оказался значительным шагом вперёд по отношению к предыдущему инсталлятору Microsoft — Setup API (ACME Setup): в нём были введены возможности GUI, поддержка деинсталляции и отката в любой момент установки (включая откат во время деинсталляции), корректная работа с правами доступа в Windows и другие возможности, что сделало его сильной альтернативой различным существовавшим на рынке инсталляционным пакетам.

Логическая структура пакета

Инсталляционный пакет описывает установку одного продукта и имеет свой GUID. Продукт состоит из компонентов (components) (тоже имеющих свои GUIDы), сгруппированных в возможности (features).

Компонент (component) — минимальная неделимая установочная единица, представляющая собой группу файлов, значений реестра, создаваемых папок и других элементов, объединённых общим именем (именем компоненты) и либо устанавливаемых вместе, либо не устанавливаемых. Компоненты скрыты от конечного пользователя. Каждая компонента имеет ключевой путь (key path) — например, имя своего главного файла — по которому определяется наличие этой компоненты на компьютере пользователя.

Возможность (feature; в русифицированной версии Windows именно это слово переводится как «компонента», что вносит путаницу) — это иерархическая группа компонент и/или других возможностей. Когда при установке показывается диалог выбора устанавливаемых частей программы, пользователь управляет выбором именно

возможностей. Выбор возможности для установки влечёт за собой установку всех компонент, которые в неё включены.

Физическая структура пакета

Файл .msi представляет собой составной документ OLE (OLE compound document — в том же формате-контейнере хранятся документы Microsoft Word, Excel и т. д.), в котором содержится небольшая реляционная база данных — набор из нескольких десятков взаимосвязанных таблиц, содержащих различную информацию о продукте и процессе установки. При этом все строковые данные в базе хранятся вместе в отдельном потоке документа, а в таблицах базы на них имеются ссылки; таким образом избегают дублирования строк, что значительно уменьшает размер базы.

Кроме базы, структура файла .msi предусматривает помещение туда пользовательских сценариев и вспомогательных DLL, если таковые требуются для установки, а также самих устанавливаемых файлов, запакованных в формате .cab. Файлы можно размещать и отдельно от пакета, в запакованном или распакованном виде (с сохранением структуры каталогов).

Процесс установки

Процесс установки состоит из нескольких этапов — сбора информации, выполнения (собственно установки), а также, возможно, отката (в случае ошибки или отмены установки пользователем).

Действия

Каждый этап установки состоит из последовательности действий

(actions), записанной в базе данных. Действиям присвоены номера, определяющие порядок их выполнения, а иногда — и условия, при которых действия выполняются или не выполняются.

Большая часть действий — это стандартные действия, характерные для типичного процесса сбора информации и установки. Все эти действия документированы. Кроме них, пользователь может определить и свои действия (custom actions).

Действия, определённые пользователем, могут быть либо написаны на одном из скриптовых языков, встроенных в операционную систему (JScript или VBScript так же и Eclipse, побочный язык от C++), либо размещаться в специально созданной DLL (написанной на таких языках, как C, C++ и т. д.). Файлы с этими действиями помещаются внутрь файла .msi и извлекаются оттуда в начале запуска инсталляции.

Сбор информации

На этапе сбора информации Windows Installer собирает инструкции (либо путём взаимодействия с пользователем, либо программным путём) установить или удалить одну или несколько возможностей, входящих в продукт. Эти инструкции в дальнейшем формируют на основе базы данных внутренний сценарий, детально описывающий последующий этап выполнения.

Этот этап называют также непосредственным режимом (immediate mode).

Выполнение

К началу этого этапа инсталлятор генерирует внутренний сценарий, предназначенный для выполнения без вмешательства пользователя. Этот сценарий выполняется инсталлятором в привилегированном режиме службы NT (конкретно — под аккаунтом LocalSystem). Привилегированный режим требуется из-за того, что инсталляция могла быть запущена пользователем, не обладающим необходимыми правами для изменения системных параметров и файлов (хотя право установить программу ему было предоставлено).

Этот этап иногда называется отложенным режимом (deferred mode).

Откат

Если какое-либо из действий, определённых в сценарии, оканчивается неудачей, или установка в процессе отменяется пользователем, все действия, выполненные до этого места, откатываются, возвращая систему в состояние, бывшее до установки. Откат обеспечивается наличием для каждого действия, вносящего изменение в систему, обратного к нему. Вводя в пакет нестандартные действия, программист также должен создать обратные к ним для правильной работы отката.

Прочие возможности

Анонсирование и установка по требованию

Журнал установки

Другие системы инсталляции

Примечания

См. также

Ссылки

 Просмотр этого шаблона Форматы архивов (сравнение по типу)
Только архивирование
Только сжатие
Архивирование и сжатие
Упаковка и распространение ПО

Программа для установки программ на Windows – бесплатный установщик ZipSoft | Info-Comp.ru

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

Скриншот 1

Что такое установщик программ?

Весь смысл заключается в том, что с помощью одной программы Вы можете скачать и установить большинство самых популярных программ. Это будет очень полезно, например, в тех случаях, когда Вы только что установили или переустановили Windows на домашнем компьютере и Вам необходимо выполнить установку набора дополнительных программ, которыми Вы обычно пользуетесь: антивирус, браузер, архиватор, торрент-клиент, проигрыватель, почтовый клиент и так далее. Согласитесь, что если искать их и скачивать по отдельности, то времени будет затрачено достаточно много. Однако для этого можно использовать программу установщик, в результате Вам не нужно будет заходить на официальные сайты каждой программы с целью скачать дистрибутив или просто искать эти дистрибутивы в интернете, так как программа установщик сделает это за Вас.

Кто пользуется операционной системой Linux, знаком с таким принципом работы, т.е. обычно в популярных дистрибутивах Linux есть специальная программа, так называемый менеджер приложений, с помощью которой осуществляется весь процесс скачивания и установки программ в системе (

правда, из специальных репозиториев). В Windows встроенных таких менеджеров нет, поэтому пользователям приходится самостоятельно искать и скачивать программы.

Именно этот факт и повлиял на появление программ для централизованной установки других программ в Windows.

Сегодня я предлагаю обзор одной из таких программ – ZipSoft.

Обзор программы ZipSoft

Скриншот 2

ZipSoft – это бесплатный пакетный установщик программ для Windows. С помощью ZipSoft можно установить более 160 популярных программ для Windows, в числе которых:

  • Google Chrome;
  • Яндекс.Браузер;
  • Mozilla FireFox;
  • Adobe Flash Player;
  • VLA Media Player;
  • CCleaner;
  • Mozilla Thunderbird;
  • Avast! Free Antivirus;
  • Kaspersky Internet Security;
  • Skype;
  • 7-Zip;
  • WinRAR;
  • OpenOffice;
  • GIMP;
  • И еще много других.

ZipSoft поддерживает работу операционных систем Windows 7, 8 и 10.

Где скачать программу ZipSoft?

Скачать программу ZipSoft можно на официальном сайте — https://www.zipsoft.ru

Необходимо просто перейти на сайт и нажать кнопку «Скачать ZIPSOFT».

Скриншот 3

В результате загрузится программа размером примерно 1 мегабайт.

Как установить ZipSoft?

Программу ZipSoft устанавливать не требуется, для того чтобы начать ей пользоваться, достаточно просто запустить скаченный файл.

Обзор функционала ZipSoft

ZipSoft – это узкоспециализированая программа, она умеет только скачивать дистрибутивы программ и запускать стандартные установщики.

Но при этом ZipSoft имеет достаточно удобный и интуитивно понятный интерфейс, благодаря чему пользоваться программой очень легко.

Все программы в установщике ZipSoft сгруппированы по категориям, что очень удобно, на текущий момент доступны следующие категории:

  • Рекомендуемые – программы, которые рекомендуют разработчики;
  • Стартовый набор – подбор программ для установки на чистую систему;
  • ТОП 50 – программы с наивысшим рейтингом;
  • Мультимедиа;
  • Интернет;
  • Офис;
  • Система;
  • Общение;
  • Безопасность;
  • Все – в этой категории отображаются все программы.

Скриншот 4

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

Скриншот 5

Также стоит отметить, что напротив каждой программы показан рейтинг этой программы, но, на чем основан этот рейтинг, мне не известно.

Пример установки программы с помощью ZipSoft

Давайте для примера установим программу 7-Zip. Для этого можно перейти в категорию «Система» или в поиске набрать 7-Zip. Далее напротив нужной нам программы (в нашем случае 7-Zip) нажимаем на плюсик (или просто щелкаем по ней двойным кликом).

Теперь эта программа будет добавлена в перечень программ для установки, это будет видно в разделе «Выбранное».

Скриншот 6

Кстати, в случае необходимости установки нескольких программ, Вы сразу можете также плюсиком добавить все программы, которые Вам нужны.

После того как нужная программа или программы выбраны, нажимаем «Установить».

Скриншот 7

В результате начнется загрузка дистрибутива программы, а после ее окончания запустится стандартный для указанной программы установщик (если выбрано несколько программ, то запуск будет происходить по очереди).

Скриншот 8

Снова повторюсь, программа ZipSoft не производит установку самостоятельно, она всего лишь скачивает дистрибутив, что на самом деле неплохо, ведь установку и настройку устанавливаемой программы мы будем контролировать самостоятельно.

Вот мы и рассмотрели ZipSoft — программу для установки программ на Windows, в целом ZipSoft программа неплохая, она выполняет одну, но очень полезную функцию – скачивает дистрибутивы программ, тем самым значительно экономя наше время, так как нам не нужно самостоятельно искать и скачивать нужные нам программы.

У меня на этом все, пока!

Установка программного обеспечения — Википедия

Запрос «Инсталляция (ПО)» перенаправляется сюда; также см. Инсталляция.

Установка программного обеспечения, инсталляция — процесс установки программного обеспечения на компьютер конечного пользователя. Выполняется особой программой (пакетным менеджером), присутствующей в операционной системе (например, RPM, APT или dpkg в Linux, Установщик Windows в Microsoft Windows), или же входящим в состав самого программного обеспечения средством установки. В операционной системе GNU очень распространено использование системы GNU toolchain и её аналогов для компиляции программного обеспечения непосредственно перед установкой.

Большинство программ поставляются для продажи и распространения в сжатом (упакованном, см.: Архив) виде. Для нормальной работы они должны быть распакованы, а необходимые данные правильно размещены на компьютере, учитывая различия между компьютерами и настройками пользователя. В процессе установки выполняются различные тесты на соответствие заданным требованиям, а компьютер необходимым образом конфигурируется (настраивается) для хранения файлов и данных, необходимых для правильной работы программы.

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

Так как данный процесс является различным для каждой программы и компьютера, то многие программы (включая сами операционные системы) поставляются вместе с универсальным или специальным установщиком — программой, которая автоматизирует большую часть работы, необходимой для их установки.

Некоторые программы написаны таким образом, что устанавливаются простым копированием своих файлов в нужное место, а самого процесса установки как такового нет. Про такие программы говорят, что они «не требуют установки». Это распространено среди программ для Mac OS X, DOS и Microsoft Windows. Существуют операционные системы, которые не требуют установки, и, таким образом, могут быть напрямую запущены с загрузочного диска (компакт- или DVD-диск), не оказывая воздействия на другие операционные системы, установленные на компьютере пользователя. Примером такой операционной системы является Knoppix или Mac OS 1-9.

Данный термин также распространяется на плагины, драйверы и программные файлы, которые сами по себе не являются программами.

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

  • Используемых и неиспользуемых совместно программных файлов.
  • Каталогов.
  • Записей конфигурационных файлов, используемых одной программой, или совместно.
  • Переменных среды.
  • Установка вручную — установка выполняется без установщика или со значительным количеством операций, вручную выполняемых пользователем.
  • «Тихая» установка — установка, в процессе которой не отображаются сообщения или окна. «„Тихая“ установка» не является синонимом «автоматическая установка», хотя часто ошибочно используется в этом значении.
  • Автоматическая установка — установка, которая выполняется без вмешательства со стороны пользователя, исключая, конечно, сам процесс её запуска. Процесс установки иногда требует взаимодействия с пользователем, который управляет процессом установки, делая выбор: принимая пользовательское соглашение, настраивая параметры, указывая пароли и так далее. В графических средах могут использоваться инсталляторы, которые предоставляют так называемого Мастера установки, однако и они зачастую предоставляют параметры командной строки, позволяющие выполнить полностью автоматическую установку.
  • Самостоятельная установка — установка, которая не требует начального запуска процесса. Например, Vodafone Mobile Connect USB Modem, который устанавливается с USB-порта компьютера при подключении к нему без необходимости в ручном запуске.
  • Удалённая установка — установка, которая выполняется без использования монитора, подсоединённого к компьютеру пользователя (в частности, выполняемая на компьютере без видеовыхода вообще). Это может быть контролируемая установка с другой машины, соединенной через локальную сеть или посредством последовательного кабеля. Автоматическая и удалённая установки являются обычными операциями, выполняемыми системными администраторами.
  • «Чистая» установка — установка, выполняемая в отсутствие таких факторов, которые могут изменяться от программы к программе. Ввиду сложности типичной установки, имеется множество факторов, влияющих на её успешный исход. В частности, файлы, оставшиеся от предыдущей установки этой же программы, или нестабильное состояние операционной системы могут привести к неправильной установке и работе программы.
  • Непосредственная установка — установка программы, выполняемая с её копии на жестком диске (называемой flat copy), а не с самого оригинального носителя (обычно компакт- или DVD-диск). Это может быть полезным в ситуациях, когда целевая машина не способна справиться с произвольным доступом для чтения с оптических дисководов во время выполнения задач, вызывающих большую загрузку процессора, как, например, при установке программ.

Программа установки, установщик или инсталлятор (англ. installer) — это программа, которая устанавливает программное обеспечение на компьютер. Некоторые установщики специально сделаны для установки содержащихся в них файлов, другие же являются универсальными и работают, считывая содержимое комплекта программного обеспечения, которое необходимо установить.

Различия между системой управления пакетами и установщиком:

Package Management SystemInstaller
Обычно часть операционной системыКаждый продукт поставляется вместе со своим установщиком
Использует одну базу данных для установкиПроизводит свою установку
Может проверять и управлять всеми пакетами в системеРаботает только со связанным продуктом
Один производительМного производителей
Один формат пакетаМного форматов установщика

Распространенные программы установки[править | править код]

Семейство Windows[править | править код]

Наиболее популярным форматом для семейства Windows NT является установочный пакет MSI, который устанавливается посредством Установщика Windows. Компании, производящие средства для создания инсталляторов: InstallShield (InstallShield Wizard), Macrovision (InstallAnywhere), Wise Solutions, Inc., SetupBuilder, InstallBuilders (Smart Install Maker). Большинство из этих средств могут создавать как пакеты MSI, так и свои собственные пакеты.

Бесплатными альтернативами являются NSIS, Actual Installer Free, Clickteam Install Creator, Inno Setup, Install Simple, а также инструментальные средства от Microsoft (WiX).

Семейство UNIX[править | править код]

Большинство дистрибутивов операционных систем на базе GNU, Linux и BSD имеет встроенные системы управления пакетами, с помощью которых можно устанавливать как необходимые компоненты операционной системы, так и стороннее программное обеспечение, зачастую даже если оно использует собственный установщик, которым это не предусмотрено.

Семейство Maс OS[править | править код]

Mac OS X также использует систему управления пакетами. Некоторые коммерческие приложения для Mac OS X используют отдельный установщик, например, Installer VISE или Stuffit InstallerMaker. Приложения, которые не нуждаются в установке дополнительных компонентов системы, могут быть установлены посредством простого копирования файлов приложения в нужное место на жестком диске. Mac OS X также включает отдельное приложение для обновления программ Software Update (также известное как команда оболочки softwareupdate), но оно поддерживает только программное обеспечение продуктов Apple.

Программы установки и архиваторы[править | править код]

Некоторые архиваторы (например WinRAR, WinZip, 7-Zip и другие) также позволяют создавать установщики (самораспаковывающийся архив).

Некоторые операционные среды — например, Windows NT (по умолчанию) и Xfce 4 (по желанию пользователя), содержат функцию автоматического запуска определённой программы, находящейся на носителе, при его вставке в устройство чтения.

Как компромисс между Установщиком Windows и системами управления содержимым UNIX-подобных систем, существуют системы управления установкой Windows[источник не указан 3054 дня].

Установщик Windows — Википедия. Что такое Установщик Windows

Windows Installer (установщик Windows, кодовое имя — Darwin[2][3]) — подсистема Microsoft Windows, обеспечивающая установку программ (инсталлятор). Является компонентом Windows, начиная с Windows 2000; может доустанавливаться и на более ранние версии Windows. Вся необходимая для установки информация (иногда и вместе с устанавливаемыми файлами) содержится в установочных пакетах (installation packages), имеющих расширение .msi[4].

История

Windows Installer был разработан в 1995—1998 годах и имел вначале кодовое название Darwin. Ранние версии назывались Microsoft Installer, отсюда стандартное расширение файла инсталляционного пакета — .msi.[5]

Первая версия Installer’а вышла в начале 1999 в качестве инсталлятора Microsoft Office 2000. В конце того же года Installer стал частью Windows 2000. Майкрософт всячески поощрял переход разработчиков на новый инсталлятор, включив в список требований к программам, желающим получить так называемый знак Windows 2000 Logo, требование устанавливаться с помощью Windows Installer.

Windows Installer оказался значительным шагом вперёд по отношению к предыдущему инсталлятору Microsoft — Setup API (ACME Setup): в нём были введены возможности GUI, поддержка деинсталляции и отката в любой момент установки (включая откат во время деинсталляции), корректная работа с правами доступа в Windows и другие возможности, что сделало его сильной альтернативой различным существовавшим на рынке инсталляционным пакетам.

В будущих обновлениях будет представлен .MSIX, который станет своеобразным гибридом .APPX и .MSI, позволяющий инсталлировать UWP приложения в систему (Сейчас же это возможно только непосредственно через Microsoft Store)

Логическая структура пакета

Инсталляционный пакет описывает установку одного продукта и имеет свой GUID. Продукт состоит из компонентов (components) (тоже имеющих свои GUIDы), сгруппированных в возможности (features).

Компонент (component) — минимальная неделимая установочная единица, представляющая собой группу файлов, значений реестра, создаваемых папок и других элементов, объединённых общим именем (именем компоненты) и либо устанавливаемых вместе, либо не устанавливаемых. Компоненты скрыты от конечного пользователя. Каждая компонента имеет ключевой путь (key path) — например, имя своего главного файла — по которому определяется наличие этой компоненты на компьютере пользователя.

Возможность (feature; в русифицированной версии Windows именно это слово переводится как «компонента», что вносит путаницу) — это иерархическая группа компонент и/или других возможностей. Когда при установке показывается диалог выбора устанавливаемых частей программы, пользователь управляет выбором именно возможностей. Выбор возможности для установки влечёт за собой установку всех компонентов, которые в неё включены[6].

Физическая структура пакета

Файл .msi представляет собой составной документ OLE (OLE compound document — в том же формате-контейнере хранятся документы Microsoft Word, Excel и т. д.), в котором содержится небольшая реляционная база данных — набор из нескольких десятков взаимосвязанных таблиц, содержащих различную информацию о продукте и процессе установки. При этом все строковые данные в базе хранятся вместе в отдельном потоке документа, а в таблицах базы на них имеются ссылки; таким образом избегают дублирования строк, что значительно уменьшает размер базы.

Кроме базы, структура файла .msi предусматривает помещение туда пользовательских сценариев и вспомогательных DLL, если таковые требуются для установки, а также самих устанавливаемых файлов, запакованных в формате .cab. Файлы можно размещать и отдельно от пакета, в запакованном или распакованном виде (с сохранением структуры каталогов).

Процесс установки

Процесс установки состоит из нескольких этапов — сбора информации, выполнения (собственно установки), а также, возможно, отката (в случае ошибки или отмены установки пользователем).

Действия

Каждый этап установки состоит из последовательности действий (actions), записанной в базе данных. Действиям присвоены номера, определяющие порядок их выполнения, а иногда — и условия, при которых действия выполняются или не выполняются.

Большая часть действий — это стандартные действия, характерные для типичного процесса сбора информации и установки. Все эти действия документированы, кроме них, пользователь может определить и свои действия (custom actions).

Действия, определённые пользователем, могут быть либо написаны на одном из скриптовых языков, встроенных в операционную систему (JScript или VBScript так же и Eclipse, побочный язык от C++), либо размещаться в специально созданной DLL (написанной на таких языках, как C, C++ и т. д.). Файлы с этими действиями помещаются внутрь файла .msi и извлекаются оттуда в начале запуска установки. Эти DLL извлекаются в каталог Windows\Installer, при этом им присваиваются случайные имена, например MSIF65E.tmp.

Сбор информации

На этапе сбора информации Windows Installer собирает инструкции (либо путём взаимодействия с пользователем, либо программным путём) установить или удалить одну или несколько возможностей, входящих в продукт. Эти инструкции в дальнейшем формируют на основе базы данных внутренний сценарий, детально описывающий последующий этап выполнения.

Этот этап называют также непосредственным режимом (immediate mode).

Выполнение

К началу этого этапа инсталлятор генерирует внутренний сценарий, предназначенный для выполнения без вмешательства пользователя. Этот сценарий выполняется инсталлятором в привилегированном режиме службы NT (конкретно — под аккаунтом LocalSystem). Привилегированный режим требуется из-за того, что инсталляция могла быть запущена пользователем, не обладающим необходимыми правами для изменения системных параметров и файлов (хотя право установить программу ему было предоставлено).

Этот этап иногда называется отложенным режимом (deferred mode).

Откат

Если какое-либо из действий, определённых в сценарии, оканчивается неудачей, или установка в процессе отменяется пользователем, все действия, выполненные до этого места, откатываются, возвращая систему в состояние, бывшее до установки. Откат обеспечивается наличием для каждого действия, вносящего изменение в систему, обратного к нему. Вводя в пакет нестандартные действия, программист также должен создать обратные к ним для правильной работы отката[7].

Прочие возможности

Анонсирование и установка по требованию

Установщик Windows может рекламировать продукт, а не устанавливать его[8]. Продукт появится у пользователя, но он фактически не будет установлен до тех пор, пока он не будет запущен в первый раз (с помощью ярлыка в меню «Пуск»). Установочный пакет может быть объявлен администратором с использованием групповой политики Windows, или другого механизма компилирования, или путём запуска исполняемого файла msiexec с помощью /jm (для рекламы для каждого устройства), или /ju (для рекламы для каждого пользователя). Некоторые пакеты MSI, созданные в InstallShield, могут помешать использованию этих, и других встроенных функций MSI.

Пользователь должен иметь права администратора, чтобы завершить рекламируемую установку.

Установка по требованиям

Подобно рекламированию продукта, установка по требованиям устанавливает функцию, как только пользователь пытается её использовать[9].

Другие системы инсталляции

См. также

Примечания

Ссылки

Что такое инсталлятор и зачем он нужен? :: SYL.ru

Практически каждый пользователь, работающий с компьютером, ноутбуком или мобильным устройством, так или иначе, но устанавливал какие-то приложения или даже операционные системы самостоятельно. Естественно, при этом использовался специальный пакет или файл, который и отвечал за установку (инсталляцию) необходимого программного обеспечения. Давайте посмотрим, что такое инсталлятор, для чего он нужен, как работает, каких типов бывает и как его использовать на практике. По всей видимости, в общих чертах понятие об установщике имеют все. Однако в данном случае предлагается рассмотреть понимание этого вопроса в более широком смысле.

Что такое инсталлятор?

Собственно, сообразить, что собой представляет такое программное обеспечение, можно совершенно элементарно. Достаточно просто обратить внимание на сам термин Installer, который с английского правильно переводится именно как «установщик». Инсталлятор – это уже некое универсальное название. Но для чего же он нужен и какие типы такого ПО вообще бывают? Как правило, различают несколько основных типов такого программного обеспечения, среди которых основными являются установщики, предназначенные для:

  • операционных систем;
  • драйверов;
  • программ.

А вообще, такое разделение можно назвать достаточно условным, поскольку и операционные системы со встроенными в них приложениями, и управляющие работой оборудования драйверы, можно отнести именно к категории программ. Разница только в методах установки такого ПО и наличии на компьютере необходимых компонентов для его дальнейшего функционирования.

Инсталлятор «Виндовс»

Установщики операционных систем являются, пожалуй, самым объемным классом, поскольку содержат средства инсталляции не только компонентов самих ОС, но и встроенные в их оболочку программы, и целые базы данных драйверов, которые после распознавания «железного» оборудования, имеющегося на компьютере, в процессе инсталляции устанавливают для него необходимые драйверы (управляющее ПО).

Установщик Windows

Наверняка любой пользователь, хоть раз устанавливавший Windows самостоятельно, замечал, что на одной из стадий в окне установки указывается, что в данный момент производится настройка оборудования. Это как раз и есть та самая инсталляция драйверов.

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

Сами же официальные инсталляторы операционных систем имеют строго ограниченные наборы предполагаемого для установки программного обеспечения. Наличие некоторых компонентов напрямую зависит от модификации самой системы, другие являются общими для всех версий ОС (например, стандартные приложения вроде «Блокнота», Paint и т. д.). В случае если пакет установщика содержит какие-то дополнительные инструменты, присутствие которых в официальных релизах исключается целиком и полностью, можно с уверенностью утверждать, что он был создан вручную. И ни один официальный установщик Windows не может содержать инсталляторы для нескольких операционных систем одновременно. Исключение составляют только одинаковые ОС, различающиеся по архитектуре (32 или 64 бита).

Установщик программы

Теперь следует остановиться на установке программных апплетов, что знакомо каждому пользователю. Инсталлятор файлов приложений обычно имеет формат EXE (реже встречаются устаревшие DOS-форматы), но использовать его без предварительно установленной операционной системы не представляется возможным ни при каких обстоятельствах. В случае с Windows это связано с тем, что в процессе установки любого программного обеспечения, если только оно не представлено в виде портативной версии, производится регистрация всех компонентов приложения, для чего именно в Windows используется так называемый системный реестр. Его назначение состоит еще и в том, что тут находятся и регистрационные ключи самой системы, и ее настроек, и драйверов, и пользовательских данных, и вообще всего того, что связано с софтверной частью компьютера.

Запуск инсталлятора от имени администратора

В системах Windows запуск инсталлятора программ осуществляется исключительно от имени администратора (если только его встроенная учетная запись не отключена). Без этого система не только может неправильно установить программу, но и разрешения на ее установку не даст. В конечном счете приложение работать не будет.

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

Инсталлятор драйвера

Теперь давайте поговорим о том, что такое инсталлятор драйвера. Конечно, установщик может быть представлен в виде самого обычного исполняемого EXE-файла, но зачастую они поставляются в виде информационных объектов формата INF. Действия с такими файлами отличаются.

Установка драйвера из INF-файла

В самом простом случае инсталлировать такой драйвер можно через меню ПКМ на файле с выбором пункта «Установить». Однако выполнить такие действия возможно далеко не всегда. В этом случае система сообщает, что установка с выбранным типом действий невозможна. Разрешить ситуацию можно достаточно просто, обратившись к пункту обновления драйвера в «Диспетчере устройств» и указав местоположение искомого файла.

Поиск драйверов для обновления

Также можно использовать поиск установочных файлов на локальном компьютере или в сетевом окружении, не считая базы данных в интернете, что занимает больше времени.

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

Можно ли сделать инсталлятор самому?

Теперь поговорим о создании инсталлятора самим пользователем. Сейчас речь, конечно же, не идет о том, чтобы использовать какой-то язык программирования. Благо сегодня для таких целей создано достаточно много программ от сторонних разработчиков. При этом включать в пакеты таких установщиков можно любые составляющие. Например, ни для кого не секрет, что на дисках с дистрибутивами Windows частенько присутствуют утилиты для работы с жесткими дисками от Acronis или оффлайн-наборы драйверов DriverPack Solution. Все это включается в инсталляционные наборы не посредством программирования, а как раз с использованием стороннего ПО.

Как включить дополнительные компоненты в состав установочного пакета?

В качестве одного из самых простых решений, если уж вы хотите сделать инсталлятор для нескольких программных продуктов самостоятельно, можно посоветовать небольшую утилиту под названием PortableApps.com Platform или аналогичный апплет Actual Installer. В такой программе, в общем-то, ничего особо выдумывать не нужно.

Создание инсталлятора в программе Actual Installer

Достаточно просто отметить доступные для загрузки приложения и использовать кнопку загрузки с последующей установкой или объединением в один пакет. Одной из самых сильных сторон первого (платформенного) приложения является то, что установить изначально программу можно даже на съемный носитель в виде самой обычной флешки.

Что такое деинсталлятор?

Наконец, раз существуют инсталляторы, предназначенные для установки программного обеспечения, то, по идее, должны существовать и приложения прямо противоположного направления – деинсталляторы. Действительно, такие программы есть, и с их помощью можно удалять только установленные приложения (и пользовательские, и встроенные в операционную систему). А вот удалить ОС невозможно (это, по всей видимости, и так понятно). Зато преимущество таких программ состоит в том, что они способны автоматически удалять остатки приложений, сканируя жесткий диск и реестр, в то время как «родные» инструменты Windows справляются с такими задачами гораздо хуже (а то и не справляются вообще).

Программа iObit Uninstaller

Среди самых мощных апплетов можно выделить iObit Uninstaller и Revo Uninstaller, которые, по мнению большинства экспертов, являются лучшими в своем классе.

Послесловие

Это вкратце и все, что касается понимания того, что собой представляют инсталляторы и деинсталляторы, для чего они нужны и как работают. Здесь не делался упор на создание таких установщиков путем использования языков программирования, что рядовому пользователю и не нужно. Достаточно применять простейшие приложения, позволяющие объединить несколько программ в один установочный пакет. Кстати сказать, из такого набора в программах вроде UltraISO можно создать специальные загрузочные образы, которые можно запускать еще до загрузки Windows и уже из них инсталлировать и операционные системы, и дополнительное ПО.

Windows Installer — это… Что такое Windows Installer?

Windows Installer (установщик Windows) — подсистема Microsoft Windows, обеспечивающая установку программ (инсталлятор). Является компонентом Windows, начиная с Windows 2000; может доустанавливаться и на более ранние версии Windows. Вся необходимая для установки информация (иногда и вместе с устанавливаемыми файлами) содержится в установочных пакетах (installation packages), имеющих расширение .msi.

История

Windows Installer был разработан в 1995—1998 годах и имел вначале кодовое название Darwin. Ранние версии назывались Microsoft Installer, отсюда стандартное расширение файла инсталляционного пакета — .msi. [1]

Первая версия Installer’а вышла в начале 1999 в качестве инсталлятора Microsoft Office 2000. В конце того же года Installer стал частью Windows 2000. Майкрософт всячески поощрял переход разработчиков на новый инсталлятор, включив в список требований к программам, желающим получить так называемый знак Windows 2000 Logo, требование устанавливаться с помощью Windows Installer.

Windows Installer оказался значительным шагом вперёд по отношению к предыдущему инсталлятору Microsoft — Setup API (ACME Setup): в нём были введены возможности GUI, поддержка деинсталляции и отката в любой момент установки (включая откат во время деинсталляции), корректная работа с правами доступа в Windows и другие возможности, что сделало его сильной альтернативой различным существовавшим на рынке инсталляционным пакетам.

Логическая структура пакета

Инсталляционный пакет описывает установку одного продукта и имеет свой компонент (components) (тоже имеющих свои GUIDы), сгруппированных в возможности (features).

Компонента (component) — минимальная неделимая установочная единица, представляющая собой группу файлов, значений реестра, создаваемых папок и других элементов, объединённых общим именем (именем компоненты) и либо устанавливаемых вместе, либо не устанавливаемых. Компоненты скрыты от конечного пользователя. Каждая компонента имеет ключевой путь (key path) — например, имя своего главного файла — по которому определяется наличие этой компоненты на компьютере пользователя.

Возможность (feature; в русифицированной версии Windows именно это слово переводится как «компонента», что вносит путаницу) — это иерархическая группа компонент и/или других возможностей. Когда при установке показывается диалог выбора устанавливаемых частей программы, пользователь управляет выбором именно возможностей. Выбор возможности для установки влечёт за собой установку всех компонент, которые в неё включены.

Физическая структура пакета

Файл .msi представляет собой составной документ OLE (OLE compound document — в том же формате-контейнере хранятся документы Microsoft Word, Excel и т. д.), в котором содержится небольшая реляционная база данных — набор из нескольких десятков взаимосвязанных таблиц, содержащих различную информацию о продукте и процессе установки. При этом все строковые данные в базе хранятся вместе в отдельном потоке документа, а в таблицах базы на них имеются ссылки; таким образом избегают дублирования строк, что значительно уменьшает размер базы.

Кроме базы, структура файла .msi предусматривает помещение туда пользовательских сценариев и вспомогательных .cab. Файлы можно размещать и отдельно от пакета, в запакованном или распакованном виде (с сохранением структуры каталогов).

Процесс установки

Процесс установки состоит из нескольких этапов — сбора информации, выполнения (собственно установки), а также, возможно, отката (в случае ошибки или отмены установки пользователем).

Действия

Каждый этап установки состоит из последовательности действий (actions), записанной в базе данных. Действиям присвоены номера, определяющие порядок их выполнения, а иногда — и условия, при которых действия выполняются или не выполняются.

Большая часть действий — это стандартные действия, характерные для типичного процесса сбора информации и установки. Все эти действия документированы. Кроме них, пользователь может определить и свои дейстия (custom actions).

Действия, определённые пользователем, могут быть либо написаны на одном из скриптовых языков, встроенных в операционную систему (VBScript), либо размещаться в специально созданной C, C++ и т. д.). Файлы с этими действиями помещаются внутрь файла .msi и извлекаются оттуда в начале запуска инсталляции.

Сбор информации

На этапе сбора информации Windows Installer собирает инструкции (либо путём взаимодействия с пользователем, либо программным путём) установить или удалить одну или несколько возможностей, входящих в продукт. Эти инструкции в дальнейшем формируют на основе базы данных внутренний сценарий, детально описывающий последующий этап выполнения.

Этот этап называют также непосредственным режимом (immediate mode).

Выполнение

К началу этого этапа инсталлятор генерирует внутренний сценарий, предназначенный для выполнения без вмешательства пользователя. Этот сценарий выполняется инсталлятором в привилегированном режиме службы NT (конкретно — под аккаунтом LocalSystem). Привилегированный режим требуется из-за того, что инсталляция могла быть запущена пользователем, не обладающим необходимыми правами для изменения системных параметров и файлов (хотя право установить программу ему было предоставлено).

Этот этап иногда называется отложенным режимом (deferred mode).

Откат

Если какое-либо из действий, определённых в сценарии, оканчивается неудачей, или установка в процессе отменяется пользователем, все действия, выполненные до этого места, откатываются, возвращая систему в состояние, бывшее до установки. Откат обеспечивается наличием для каждого действия, вносящего изменение в систему, обратного к нему. Вводя в пакет нестандартные действия, программист также должен создать обратные к ним для правильной работы отката.

Прочие возможности

Анонсирование и установка по требованию

Журнал установки

Другие системы инсталляции

Примечания

См. также

Wikimedia Foundation. 2010.

то, что вендор прописал / Инфопульс Украина corporate blog / Habr

Продолжая тему работы с 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 скрываются иногда совершенно непохожие инсталляторы. Надеюсь, эта обзорная статья помогла вам получить представление об их многообразии и о возможных проблемах установки и способах их диагностики.

Leave a comment