Программы для автоматической установки программ на компьютер. Мультиустановщики для пакетной инсталляции программ в Windows

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

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

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

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

Maestro AutoInstaller

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

Npackd

Npackd – мощная программа-каталог. С ее помощью можно скачивать и устанавливать представленные в списке приложения, обновлять и удалять уже установленные, добавлять свои программы. Софт, добавленный в репозиторий Npackd, имеет все шансы стать популярным, так как он попадает в общий каталог и может быть использован всеми его пользователями.

DDownloads

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

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

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

Мы рассмотрели несколько программ, которые позволяют найти, загрузить и установить в автоматическом режиме большое количество приложений. Не стоит пренебрегать этим знанием, так как вам в любой момент может понадобиться переустановить систему, а вместе с ней и весь необходимый софт. Для этого совсем не обязательно собирать коллекцию из установщиков: с помощью MultiSet можно записать их на загрузочный диск вместе с Windows или создать информационную базу данных DDownloads в «локалке» для быстрого поиска нужных ссылок.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Послесловие

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

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

Разумеется, что вопрос выбора системы инсталяции стоит перед разработчиками под Windows - я не особо знаком с системой установки в остальных операционных системах, знаю только магическую команду make install и про pkg-add. Поэтому буду рад, если кто-то осветит эту тему с той стороны.

0. А нужно ли инсталлировать?

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

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

Для многих программ инсталляция будет просто копированием файлов, но, однако, также инсталлятор является удобным поводом проверить установленность всех необходимых компонентов программы - .NET, нужная версия MFC, наличие прав администратора и т.д.

1. А что, есть выбор?

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

2. Windows Installer

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

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

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

В чем положительная сторона Windows Installer? Если использовать его для автоматизированной установки программ пользователю (через политику Active Directory), то получается реально круто. Пользователь только заходит в систему, а программа ему уже ставится. И все в одном флаконе.

Минус я вижу один - не самое убийственное сжатие, которое можно довести до ума любым архиватором.

3. Не Windows Installer

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

Есть Inno Setup, который также абсолютно бесплатен и построен на скриптовании, поддерживает хорошее сжатие.

И не стоит также забывать о том, что решения от InstallShield и Wise могут создавать и не-Windows Installer инсталляторы.

Если говорить о моем личном выборе, то я пользуюсь NSIS, не в последнюю очередь потому, что там действительно безумно маленький объем исполняемого кода. 32 килобайта и привет.

4. А как насчет реальной кроссплатформенности?

Честно говоря, пока, насколько я видел, никак. Те решения, которые я видел на основе IzPack требуют для установки JVM, а это плохо подходит для тех пользователей, у которых ее нет под рукой или нет в системе.

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

Попутно рассмотрим еще пару вопросов:

  • Можно ли скопировать установленную программу на другой компьютер?
  • Если программа мне больше не нужна, почему нельзя ее просто стереть?

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

Процессом инсталляции занимается специальная программа - инсталлятор . Чаще всего инсталлятор включает в себя и саму инсталлируемую программу и внутренние инструкции для ее установки.

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

Представте себе вашу собственную кухню. Это будет типа компьютер. Кухонный комбайн, который вы хотите установить на вашей кухне - это программа, которую вы собираетесь установить в ваш компьютер.

Теперь все просто. Вы купили кухонный комбайн. Он в полуразобранном виде в коробке, не подключенный к электричеству. Разумеется, толку от такого комбайна в коробке нет. Он не работает.

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

Вот теперь ваш кухонный комбайн готов к работе (программа в компьютер установлена).

Второй вопрос (можно ли просто скопировать установленную программу на другой компьютер), думаю теперь вам стал более понятен. "Можно ли установленный комбайн перенести в другую кухню?" Ответ - нельзя.

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

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

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

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

Есть и такие программы, которым инсталляция совсем не нужна. Они в систему ничего не устанавливают и могут запускаться даже с флэшки или компактдиска. Но таких программ очень мало.