Как сделать инсталляцию на компьютере
Инсталляция (установка) — процесс установки программного обеспечения на компьютер конечного пользователя. Выполняется особой программой (пакетным менеджером), присутствующей в операционной системе (например, RPM и APT в GNU/Linux, Windows Installer в Microsoft Windows), или же входящим в состав самого программного обеспечения средством установки. В операционной системе GNU очень распространено использование системы GNU toolchain и её аналогов для компиляции программного обеспечения непосредственно перед установкой.
Большинство программ поставляются для продажи и распространения в сжатом (упакованном) виде. Для нормальной работы они должны быть распакованы, а необходимые данные правильно размещены на компьютере, учитывая различия между компьютерами и настройками пользователя. В процессе установки выполняются различные тесты на соответствие заданным требованиям, а компьютер необходимым образом конфигурируется (настраивается) для хранения файлов и данных, необходимых для правильной работы программы.
Установка, как правило, включает в себя размещение всех необходимых программе файлов в соответствующих местах файловой системы, а также модификацию и создание конфигурационных файлов. Пакетные менеджеры также выполняют при установке контроль зависимостей, проверяя, есть ли в системе необходимые для работы данной программы пакеты, а в случае успешной установки регистрируя новый пакет в списке доступных. Так как данный процесс является различным для каждой программы и компьютера, то многие программы (включая операционные системы) поставляются вместе с универсальным или специальным инсталлятором — программой, которая автоматизирует большую часть работы, необходимой для их установки.
Некоторые компьютерные программы написаны таким образом, что устанавливаются простым копированием своих файлов в нужное место, а самого процесса установки как такового нет. Про такие программы говорят, что они не требуют установки. Это распространено среди программ для Mac OS X, DOS и Microsoft Windows. Существуют операционные системы, которые не требуют установки, и, таким образом, могут быть напрямую запущены с загрузочного CD, DVD, или USB, не оказывая воздействия на другие ОС, установленные на компьютере пользователя. Примером такой ОС является Knoppix или Mac OS 1-9.
Данный термин также распространяется на плагины, драйверы и программные файлы, которые сами по себе не являются программами.
Обычные операции, выполняемые в процессе установки ПО, включают создание или изменение:
- Используемых и неиспользуемых совместно программных файлов
- Директорий
- Записей конфигурационных файлов, используемых одной программой, или совместно
- Переменных среды
- Ссылок или ярлыков
Некоторые жаргонные выражения
Инсталлятор
Программа установки или инсталлятор — это компьютерная программа, которая устанавливает файлы, такие как приложения, драйверы, или другое ПО, на компьютер. Некоторые инсталляторы специально сделаны для установки содержащихся в них файлов; другие же являются универсальными и работают, считывая содержимое комплекта программного обеспечения, которое необходимо установить.
Различия между системой управления пакетами и инсталлятором:
Package Management System | Installer |
---|---|
Обычно часть операционной системы | Каждый продукт поставляется вместе со своим инсталлятором |
Использует одну базу данных для установки | Производит свою установку |
Может проверять и управлять всеми пакетами в системе | Работает только со связанным продуктом |
Один производитель | Много производителей |
Один формат пакета | Много форматов инсталлятора |
Распространенные инсталляторы
Windows NT
Наиболее популярным форматом для ОС Windows NT является установочный пакет MSI, который устанавливается посредством Windows Installer. Компании, производящие средства для создания инсталляторов: InstallShield, Macrovision InstallAnywhere, Wise, SetupBuilder, Actual Installer [1] , InstallBuilders Company (Smart Install Maker) [2] и ScriptLogic Corporation (ранее MaSaI Solutions). Большинство из этих средств могут создавать как пакеты MSI, так и свои собственные пакеты.
Бесплатными альтернативами являются NSIS, Clickteam, Install Creator, Inno Setup, а также инструментальные средства от Microsoft, названные WiX.
UNIX‐подобные
Большинство дистрибутивов операционных систем на базе GNU/Linux и BSD имеет встроенные системы управления пакетами, с помощью которых можно устанавливать как необходимые компоненты операционной системы, так и стороннее ПО, зачастую даже если оно использует собственный инсталлятор, которым это не предусмотрено.
Mac OS X также использует систему управления пакетами. Некоторые коммерческие приложения для Mac OS X используют отдельный инсталлятор, например, Installer VISE или Stuffit InstallerMaker. Приложения, которые не нуждаются в установке дополнительных компонентов системы, могут быть установлены посредством простого копирования файлов приложения в нужное место на жестком диске. Mac OS X также включает отдельное приложение для обновления программ Software Update (также известное как команда оболочки «softwareupdate»), но оно поддерживает только системное ПО и Apple ПО.
Разное
BitRock имеет многоплатформенное инструментальное средство, называемое InstallBuilder, которое создает инсталляторы для Windows, Mac OS X, GNU/Linux и многих других ОС и является и собственническим и коммерческим, но бесплатным для проектов с открытыми исходными кодами. Приложения, написанные на языке программирования Java, используют свободное инструментальное средство IzPack [3] , позволяющее создавать кросс-платформенные инсталляторы.
Некоторые архиваторы также позволяют создавать инсталляторы.
Некоторые операционные среды — например, Windows NT (по умолчанию) и Xfce 4 (по желанию пользователя), содержат функцию автоматического запуска определённой программы, находящейся на носителе, при его вставке в устройство чтения.
Как компромисс между инсталлятором Windows и системами управления содержимым UNIX-подобных машин, существуют системы управления установкой Windows.
Чтобы использовать любую программу или утилиту необходимо сначала выполнить ее установку на свой компьютер. Этот процесс получил название инсталляция. Однако что скрывается за этим термином, а также какие разновидности компьютерной инсталляции существуют?
Цифровая эпоха
По мере развития высоких технологий, компьютеризация распространялась на все большие отрасли человеческой деятельности и на сегодняшний день приобрела глобальный характер. Однако всего десять лет назад компьютер считался предметом роскоши о чем свидетельствовала и непомерно высокая его стоимость. Да и первые модели системных блоков и портативных компьютеров, которые только можно было найти в продаже, имели не такие уж большие возможности, чего нельзя сказать о современных ПК. Однако даже новые лаптопы, внутри которых установлено самые мощные комплектующие, без программного обеспечения остаются всего-лишь бесполезным железом.
Для работы с компьютером необходима операционная система, а для выполнения различных задач предназначены утилиты и инструменты. Но для использования любого ПО необходимо сперва его установить. Для этого достаточно всего-лишь запустить инсталляционный дистрибутив и система автоматически выполнит все необходимые действия. Но что происходит во время установки, а также какие основные виды этого процесса существуют?
Инсталляция
Чтобы понять что конкретно представляет собой инсталляция необходимо разобраться в том, как работают программы. Если углубиться в теорию, то любую программу можно описать как определенную последовательность программного кода, которую центральный процессор обрабатывает и впоследствии преобразовывает в необходимые команды. Однако так было на заре развития компьютерных технологий, когда не существовало современных версий ОС, обладающих графическим интерфейсом.
В современных утилитах, помимо красивого и удобного оконного интерфейса, реализовано множество расширений: наборы шрифтов, языковые пакеты, справочники, служба автоматического обновления и многое другое. Все эти расширения формируют библиотеки, которые необходимо правильно скопировать, что, собственно, и происходит во время инсталляции программного обеспечения.
Определение
Любая утилита состоит из множества файлов, которые объединяются в один инсталляционный дистрибутив. Такая реализация существенно упрощает процесс установки, поскольку значительно проще загрузить один архив, чем скачивать из сети десятки или даже сотни программных файлов. Чтобы убедиться в этом достаточно всего-лишь зайти в папку с любой установленной программой и посмотреть из какого количества компонентов она состоит.
Итак, инсталляция — это копирование программных файлов и последующая установка компьютерного софта на жесткий диск. Однако сразу стоит отметить, что понятие установки выходит значительно дальше за пределы обычного копирования, поскольку в ее процессе установщик выполняет проверку совместимости аппаратной и программной части, а также наличие на компьютере необходимого для стабильной работы ПО. Далее, установщик размещает файлы в нужной последовательности, создает необходимые каталоги, вносит соответствующие ключи в системный реестр, добавляет исполняемые компоненты в автозагрузку и так далее. Таким образом, установка программы сопровождается большим количеством различных действий, которые выполняются автоматически операционной системой и происходят незаметно для пользователя.
Виды инсталляции
Несмотря на то что установка утилит различной категории происходит аналогичным образом, тем не менее инсталляция разделяется на несколько видов. Наиболее часто встречающейся установкой является, так называемая «тихая» инсталляция, в процессе которой на экран монитора не выводятся никакие окна или уведомления, а по ее завершении юзер может сразу приступать к работе с утилитой.
Другой вид — автоматическая инсталляция. Она выполняется операционной системой и не требует никаких особых действий со стороны пользователя. Единственное, что потребуется, это запустить инсталляционный дистрибутив, задать дополнительные параметры и дождаться завершения процесса установки. Противоположностью автоматической инсталляции является ручная установка, для реализации которой от пользователя потребуется выполнение множества действий.
Помимо этого, в сети можно найти утилиты, для работы которой не требуется установка, а достаточно просто скопировать программные файлы на жесткий диск, после чего утилиту можно сразу запускать и работать с ней. Что касается компьютерных игр, то они требуют стандартной установки, которая осуществляется по аналогичному принципу, описанному ранее.
Инсталляция – что это значит?
Перед тем, как начать пользоваться абсолютным большинством программ, их сперва необходимо инсталлировать. Инсталляцией программного обеспечения называют процесс его установки на компьютер.
Процесс инсталляции
Необходимость в инсталляции приложения для возможности его использования обуславливается тем, что в изначальной форме оно размещается на носителе в сжатой форме. Установка выполняется специальным пакетным менеджером или инсталлятором и включает в себя:
- копирование файлов с носителя в память жесткого диска компьютера;
- проверку ПК на совместимость;
- распаковку архива;
- размещение всей файлов в правильных папках и в правильной очередности;
- создание самостоятельно выполняющихся команд в реестре и автозагрузке;
- создание конфигурационных файлов, позволяющих менять настройки программы в дальнейшем по желанию пользователя.
Чаще всего все эти процессы невидимы для пользователя и выполняются автоматически. Однако это зависит от вида инсталляции.
Виды инсталляции ПО
Процесс инсталляции не всегда проходит одинаково. В зависимости от особенностей программы, производители прописывают разные особенности её установки на компьютере. Используются такие виды инсталляции ПО:
Когда не требуется инсталляция ПО
Исключением из общего правила являются программы, которые не нуждаются в процессе установки. Для их корректного функционирования достаточно простое копирование всех файлов из памяти носителя в память жесткого диска компьютера.
Кроме этого, существуют также операционные системы, которые, исходя из своей архитектуры, не предусматривают процесс инсталляции. Для их использования требуется лишь запустить загрузочный диск в материальной или виртуальной форме.
Такие ОС обычно имеют узкоспециализированные функции и не подходят для ежедневного использования на домашнем компьютере. К таким системам можно отнести Mac OS 1.9, Knoppix и другие.
Отличия между пакетным менеджером и исталлятором
Большинство установок выполняется пакетным менеджером компьютера. Это стандартная система, которая является частью установленной операционной системы. К её преимуществам можно отнести:
- возможность применить её ко всем файлам, расширение которых поддерживается системой;
- позволяет управлять программами, которые были установлены на компьютер иным путем (в том числе и с помощью инсталлятора);
- совместимость со всеми компьютерами, работающими на той же операционной системе, что и пакетный менеджер.
Инсталлятор можно считать личным пакетным менеджером производителя программного обеспечения. Однако такой установщик не способен инсталлировать не то что все программы с данным расширением, но даже приложения одной компании. Он создается индивидуально для каждой программы и предназначен обеспечивать только её установку. Среди других характеристик инсталлятора:
- существует в разнообразных форматах;
- минимизирует количество ошибок при установке конкретной программы;
- позволяет изменить большее число настроек приложения;
- размещается в том же архиве, что и все остальные файлы программы.
Таким образом, можно подвести итог и сказать, что пакетный менеджер это стандартный инструмент, который имеется на каждом ПК, а инсталлятор — специализированная среда для установки, предусмотренная производителем устанавливаемого ПО.
Как установить Windows 7 с HDD SATA, или создание инсталляционного жесткого диска, подключаемого по Serial ATA.
В этой статье рассказывается, как создать инсталляционный HDD, или SDD, с которого впоследствии можно будет выполнить так называемую "чистую" (с форматированием диска) инсталляцию Windows 7.
В качестве предустановленной операционной системы использовалась Windows XP x86 SP3. Аналогичным образом можно создать инсталляционный HDD из под более новых версий Windows (я это не проверял). А инсталлируемой ОС была выбрана Windows 7 Professional x64 SP1.
Многочисленные способы инсталляции с HDD описанные в интернете обычно используют для такой цели USB-флешку или USB HDD, но мы пойдем другим путем, потому как ничего такого под рукой не оказалось. И вообще, почему бы не инсталлировать систему подключив инсталляционный HDD по более быстрому Serial ATA?
Как я дошел до такой жизни? После приобретения нового SSD, на который должна была быть установлена, предварительно скачанная из интернета, Windows 7 x64 SP1 выяснилось, что ни флешки, ни DVD привода, ни даже USB HDD под рукой не оказалось. На компьютере была установлена 32 битная Windows XP, и все говорило о том, что меня ждет скучная и долгая установка Windows 7 по сети. Однако во времена Windows 95 чистая инсталляция ОС с HDD была обычным делом, и я решил проверить, так ли все изменилось за это время?
создание загрузочного HDD;
копирование на него файлов дистрибутива Windows 7;
использование инсталляционный HDD по назначению, для инсталляции ОС;
отключение инсталляционного HDD.
Таким образом, строка
X:\Sources>bootsect /nt60 c: /mbr
означает, что команда bootsect была выполнена находясь в директории X:\Sources>
1. Создание загрузочного HDD диска.
1.1. Разбиение на разделы и форматирование диска
Для этого не обязательно использовать все диск. Достаточно выделить на нем для этого отдельный раздел около 4 гигабайт.
Отрываем Control Panel -> Administrative Tools -> Computer Management
Выбираем в Storage -> Disk Management диск, из которого мы хотим создать инсталляционный HDD. Можно разбить его на два раздела. Первый для инсталляции. Очень полезно его сразу обозвать. К примеру superHDD и присвоить ему букву. Другой для дистрибутивов Windows, которые можно будет потом копировать в инсталляционный раздел в зависимости от того какую версию Windows нужно будет установить.
Форматируем раздел для инсталляции в формат NTFS и помечаем его как активный. Таким образом, наш инсталляционный раздел HDD после выполнения этой процедуры должен иметь в Disk Management надпись Healthy (Active, Primary Partition).
Необходимость в инсталляции приложения для возможности его использования обуславливается тем, что в изначальной форме оно размещается на носителе в сжатой форме. Установка выполняется специальным пакетным менеджером или инсталлятором и включает в себя:
- копирование файлов с носителя в память жесткого диска компьютера;
- проверку ПК на совместимость;
- распаковку архива;
- размещение всей файлов в правильных папках и в правильной очередности;
- создание самостоятельно выполняющихся команд в реестре и автозагрузке;
- создание конфигурационных файлов, позволяющих менять настройки программы в дальнейшем по желанию пользователя.
Чаще всего все эти процессы невидимы для пользователя и выполняются автоматически. Однако это зависит от вида инсталляции.
Виды инсталляции ПО
Процесс инсталляции не всегда проходит одинаково. В зависимости от особенностей программы, производители прописывают разные особенности её установки на компьютере. Используются такие виды инсталляции ПО:
Когда не требуется инсталляция ПО
Исключением из общего правила являются программы, которые не нуждаются в процессе установки. Для их корректного функционирования достаточно простое копирование всех файлов из памяти носителя в память жесткого диска компьютера.
Кроме этого, существуют также операционные системы, которые, исходя из своей архитектуры, не предусматривают процесс инсталляции. Для их использования требуется лишь запустить загрузочный диск в материальной или виртуальной форме.
Такие ОС обычно имеют узкоспециализированные функции и не подходят для ежедневного использования на домашнем компьютере. К таким системам можно отнести Mac OS 1.9, Knoppix и другие.
Отличия между пакетным менеджером и исталлятором
Большинство установок выполняется пакетным менеджером компьютера. Это стандартная система, которая является частью установленной операционной системы. К её преимуществам можно отнести:
- возможность применить её ко всем файлам, расширение которых поддерживается системой;
- позволяет управлять программами, которые были установлены на компьютер иным путем (в том числе и с помощью инсталлятора);
- совместимость со всеми компьютерами, работающими на той же операционной системе, что и пакетный менеджер.
Инсталлятор можно считать личным пакетным менеджером производителя программного обеспечения. Однако такой установщик не способен инсталлировать не то что все программы с данным расширением, но даже приложения одной компании. Он создается индивидуально для каждой программы и предназначен обеспечивать только её установку. Среди других характеристик инсталлятора:
- существует в разнообразных форматах;
- минимизирует количество ошибок при установке конкретной программы;
- позволяет изменить большее число настроек приложения;
- размещается в том же архиве, что и все остальные файлы программы.
Таким образом, можно подвести итог и сказать, что пакетный менеджер это стандартный инструмент, который имеется на каждом ПК, а инсталлятор — специализированная среда для установки, предусмотренная производителем устанавливаемого ПО.
Я не являюсь профессиональным программистом. В том смысле, что не зарабатываю денег этим ремеслом, а использую свои навыки в качестве инструмента для основной, научной, деятельности. Поэтому все мои «поделки» живут лишь отведенный им на решение конкретной задачи период и не выходят за пределы каталогов проекта. Кроме того, уже довольно давно я отошел от разработки под ОС Windows, ибо Linux для решения моих задач более удобен.
Однако ученым тоже хочется кушать, прилично одеваться и заправлять машину. Поэтому (правда довольно редко) возникает необходимость немного пофрилансить.
Недавно мне подкинули не слишком сложный проект — одна фирма хочет написать аналог программы, имеющейся у другой. Немного реверсинга, немного кодинга, в целом проект вполне обыденный. Однако тут же возник вопрос о создании инсталлятора — клиент ведь желает продукт «под ключ», чтобы клацнуть на «сетап», понажимать «Далее» и получить готовую к работе программу.
Созданием инсталляторов я не занимался никогда. Поэтому данный вопрос был основательно «загуглен», в числе прочего попалась и такая статья с Хабра. Выбор средств для подобной задачи довольно широк, и включает как проприетарные, так и открытые продукты. Вот список того, что я «пощупал»
-
— классика жанра, достаточно солидный проприетарный продукт — проприетарный инструмент с широкими возможностями кастомизации через GUI. На сайте сказано, что если Вы блоггер и будете писать об этом продукте много хороших слов, то у Вас есть возможность получить Free License — открытый бесплатный продукт, основанный на XML-скриптах. Мощная, хорошо документированная штука. Разбираться с ним я пока не стал, ибо время дорого (да и к XML душа лежит не очень). Возможно когда нибудь я к нему вернусь. Да, к нему есть плагины для Visual Studio, что несомненный плюс. — опенсорсный проект, код которого доступен на гитхабе. В силу бесплатности и низкого порога вхождения мой выбор остановился именно на нем, как инструменте позволившем выполнить работу быстро и качественно.
Так что в статье мы будем рассматривать пример использования Inno Setup, для которого имеется полезный фронтэнд Inno Script Studio, позволяющий выполнять создание простых инсталляторов с помощью мастера и менять настройки через GUI. GUI понадобился мне для первого знакомства, с продуктом, но мы не будем уделять ему большого внимания — мой «линукс головного мозга» в последнее время всё больше и больше уводит меня от желания использовать разного рода «мастера» (это субъективно, прошу не пинать). Мы рассмотрим хардкорный способ написания скрипта с чистого листа.
Думаю, что скачать программу с официального сайта и установить её труда не составит. Запускаем Inno Setup Compiler и видим такое окно
Пугающе уныло встречает нас Inno Setup.
Что это? По сути это просто-напросто редактор для набора скриптов, снабженный подсветкой синтаксиса и кнопками компиляции и запуска. От нас ждут, что мы начнем набирать в этом окне текст скрипта, определяющий логику работы будущего инсталлятора. Ну так и не будем терять время.
Прежде всего определим необходимые константы
Тело скрипта разделяется на секции, каждая из которых несет свое функциональное назначение. Обязательная секция [Setup] задает глобальные параметры работы инсталлятора и деинсталатора.
Пристальное внимание уделаем опции AddId — уникальный идентификатор приложения (GUID), используемый для регистрации приложения в реестре Windows. Его пишем не «от фонаря», а генерируем, открывая фигурную скобку, и выбрав в меню пункт Tools -> Generate GUID (или используя хот-кей Shift + Ctrl + G). Далее указываем имя приложения, под которым оно будет установлено в системе, его версию, данные фирмы разработчика, адреса сайтов разработчика, технической поддержки и обновления.
Путь, по умолчанию предлагаемый инсталлятором для установки определяем опцией DefaultDirName. При этом переменная — это путь в каталог Program Files соответствующей разрядности. Опция DefaultGroupName определяет имя группы программы в меню «Пуск». Обратите внимание на то, что для указания имени приложения мы используем данное нами выше макроопределение Name, обрамляя его фигурными скобками и решеткой.
Пара опций OutputDir и OutputBaseFileName задают каталог, куда будет записан скомпилированный «сетап» и его имя (без расширения). Кроме этого, указываем где взять иконку для test-setup.exe опцией SetupIconFile.
Последние опции в этой секции определяют алгоритм сжатия (LZMA) и указывают, что все файлы сжимаются одновременно, а не по отдельности (SolidCompression) что ускоряет процесс распаковки при большом количестве однотипных файлов.
В хорошем исталяторе должна быть поддержка нескольких языков. Включаем её в наш «сетап», используя опциональную секцию [Languages]. При отсутствии данной секции будет использоваться английский язык.
Каждая строка в данной секции задает один из используемых при установке языков. Синтаксис строки таков
Параметр LicenseFile задает путь к файлу с текстом лицензии на соответствующем языке.
Обычно установщик предлагает нам, например, определится, хотим мы или не хотим создать ярлык на рабочем столе. Такие опции установки определяются необязательной секцией [Tasks]
Здесь Name задает имя операции — «desktopicom» — создание иконки на рабочем столе; Description — описание чекбокса с опцией, которое увидит пользователь. Конструкция
Теперь укажем, какие файлы надо включить в дистрибутив и где их надо поместить при установке. Для этого используется обязательная секция [Files]
- Source — путь к файлу-источнику. У меня всё необходимое программе для работы лежит в каталоге Release проекта MS VS
- DestDir — каталог установки, переменная содержит путь, выбранный пользователем в окне установщика
- Flags — разнообразные флаги. В нашем примере для исполняемого файла: игнорирование версии программы при перезаписи исполняемого модуля, если он уже существует в системе (ignorevarsion); для остальных файлов и каталогов так же игнорируем версию, рекурсивно включаем все подкаталоги и файлы источника (recursesubdirs) и создаем подкаталоги, если их нет (createallsubdirs)
Наконец, чтобы всё было красиво, опционально укажем компилятору, где брать иконки для размещения в меню программ и на рабочем столе
Тут я указываю, что для группы в меню «Пуск» и для рабочего стола иконку надо брать из исполняемого модуля. Естественно, что иконка должна быть в него «вкомпилена», иначе в требуемых местах мы увидим стандартный значок из коллекции винды.
Итак, всё вроде готово. Жмем Ctrl + F9 и пытаемся собрать инсталлятор. Если не допущены синтаксические ошибки, начнется процесс сборки
Inno Setup собирает инсталлятор
После успешной сборки инсталлятор можно запустить, нажав F9. Если Вы работаете под учеткой с ограниченными правами (а я работаю в винде именно так), то придется полезть в каталог с результатами компиляции, который мы указали в скрипте, и запустить инсталлятор с правами админа
Запуск инсталлятора под ограниченной учетной записью
В итоге мы увидим до боли знакомое каждому пользователю Windows окно выбора языка
приветствие мастера
лицензионное соглашение
ну и так далее. Приятно, что по умолчанию используется лаконичный дизайн мастера, без рюшечек (которые при желании можно добавить)
Ну что сказать? Ура! Мы написали свой первый «сетап» и могли бы радоваться, но
- Определиться с тем, как будем получать дистрибутив фреймворка. Тут есть два варианта — поставлять его вместе с дистрибутивом программы или, при необходимости установки загрузить его онлайн на целевую машину. Мы остановимся на варианте включения фреймворка в дистрибутив. Сам фреймфорк, скажем версии 4.0, можно взять бесплатно у Майкрософта
- Детектировать наличие/отсутствие данного фреймфорка в целевой системе. Для этого потребуется написать логику, анализирующую состояние системного реестра.
Значения в реестре, которые необходимо проверить приведены в официальной документации Microsoft, в статье я приведу краткую выжимку из неё
хотя можно набить код и непосредственно в секции [Code]. Надо помнить, что внутри этой секции используется синтаксис Pascal, и комментарии предваряются последовательностью "//" вместо используемой в основной части скрипта точки с запятой.
Не смотря на обилие кода, логика его работы достаточно проста — в зависимости от значения параметра version с помощью функции RegQueryDWordValue(. ) читается значение соответствующего ключа реестра и сравнивается с требуемым значением (смотрим таблицу 1). Для версии 4.5 дополнительно передаем номер релиза в параметре release.
Для того, чтобы перед началом установки проверить наличие фреймворка и сообщить пользователю о предпринимаемых действиях используем Callback-функцию InitializeSetup()
Сам запуск инсталляции фрейворка можно выполнить после установки основной программы, поэтому включаем в скрипт секцию [Run], в которой указывается, что необходимо запускать по окончании установки
Обратите внимание на то, что мы сначала указываем имя секции [Run], чтобы закрыть секцию [Code], а затем пишем комментарий начинающийся с точки с запятой. Это необходимо из-за различия синтаксиса основного скрипта и секции [Code], в противном случае при компиляции мы получим синтаксическую ошибку.
Майкрософт просит нас принять лицензию.
Я не профессионал и во многих вещах могу ошибаться. Прошу отнестись к этому с пониманием. Статья писалась нубом для нубов, её основная цель — задать вектор поиска при решении задачи написания инсталлятора. За остальными вопросами можно обратится к документации, поставляемой вместе с Inno Setup.
Код данного примера доступен в моем репозитории на Github. «Кракозябры» в комментах вызваны несовпадением кирилических кодировок. Для себя всегда пишу английские комментарии, но для лучшего понимания кода допустил этот ляп. При скачивании в винде всё просматривается замечательно, так что прошу простить мне и эту несуразность.
В остальном, полагаю «хаутушка» вышла достойной и благодарю за уделенное мне внимание.
Читайте также: