Windows installer packaging software

Использование программы winget для установки приложений и управления ими Use the winget tool to install and manage applications

Сейчас предоставляется общедоступная предварительная версия Диспетчера пакетов Windows и средства winget. Перед выпуском общедоступной версии в решения могут быть внесены значительные изменения. Windows Package Manager and the winget tool are in public preview and may be substantially modified before they are generally available. Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении предоставленной здесь информации. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Программа командной строки winget позволяет разработчикам обнаруживать, устанавливать, обновлять, удалять и настраивать приложения на компьютерах с Windows 10. The winget command line tool enables developers to discover, install, upgrade, remove and configure applications on Windows 10 computers. Она является клиентским интерфейсом для службы Диспетчера пакетов Windows. This tool is the client interface to the Windows Package Manager service.

В настоящее время предлагается только предварительная версия программы winget, поэтому в данный момент доступны не все запланированные функциональные возможности. The winget tool is currently a preview, so not all planned functionality is available at this time.

Установка winget Install winget

Программу winget можно установить несколькими способами. There are several ways to install the winget tool:

Программа winget входит в тестовый пакет или предварительную версию Установщика приложений Windows. The winget tool is included in the flight or preview version of Windows App Installer. Чтобы использовать winget, необходимо установить предварительную версию Установщика приложений. You must install the preview version of App Installer to use winget. Для получения раннего доступа отправьте запрос в программу Программы предварительной оценки Диспетчера пакетов Windows. To gain early access, submit your request to the Windows Package Manager Insiders Program. Участие в цикле тестирования дает возможность опробовать последние обновления предварительной версии. Participating in the flight ring will guarantee you see the latest preview updates.

Установите пакет установщика для классических приложений Windows, расположенный на странице выпусков для репозитория winget. Install the Windows Desktop App Installer package located on the Releases page for the winget repository.

Для программы winget требуется ОС Windows 10 версии 1709 (10.0.16299) или новее. The winget tool requires Windows 10, version 1709 (10.0.16299), or a later version of Windows 10.

Рекомендации для администраторов Administrator considerations

Поведение установщика может отличаться в зависимости от того, выполняется ли winget с правами администратора. Installer behavior can be different depending on whether you are running winget with administrator privileges.

При запуске winget без прав администратора для установки некоторых приложения может потребоваться повышение уровня прав. When running winget without administrator privileges, some applications may require elevation to install. При запуске установщика Windows предложит вам повысить уровень права. When the installer runs, Windows will prompt you to elevate. Если вы откажетесь, приложение не будет установлено. If you choose not to elevate, the application will fail to install.

При запуске winget в командной строке администратора запросы на повышение прав до необходимого приложению уровня не отображаются. When running winget in an Administrator Command Prompt, you will not see elevation prompts if the application requires it. Будьте осторожны при запуске командной строки от имени администратора и устанавливайте только приложения, которым доверяете. Always use caution when running your command prompt as an administrator, and only install applications you trust.

Использование winget Use winget

После установки установщика приложений можно запустить winget, введя winget в командной строке. After App Installer is installed, you can run winget by typing ‘winget’ from a Command Prompt.

Одним из наиболее распространенных сценариев использования является поиск и установка избранного средства. One of the most common usage scenarios is to search for and install a favorite tool.

Для поиска средства введите winget search . To search for a tool, type winget search .

Убедившись в доступности нужного средства, его можно установить, введя winget install . After you have confirmed that the tool you want is available, you can install the tool by typing winget install . Программа winget запустит установщик и установит приложение на компьютере. The winget tool will launch the installer and install the application on your PC.

Помимо установки и поиска winget предоставляет ряд других команд, позволяющих отображать сведения о приложениях, менять источники и проверять пакеты. In addition to install and search, winget provides a number of other commands that enable you to show details on applications, change sources, and validate packages. Для вывода полного списка команд введите winget —help . To get a complete list of commands, type: winget —help .

Команды Commands

Текущая предварительная версия программы winget поддерживает следующие команды. The current preview of the winget tool supports the following commands.

Читайте также:  Изучение структуры операционной системы windows
Команда Command Описание Description
hash hash Создает хэш SHA256 для установщика. Generates the SHA256 hash for the installer.
help help Выводит справку по командам программы winget. Displays help for the winget tool commands.
install install Устанавливает указанное приложение. Installs the specified application.
search search Ищет приложение. Searches for an application.
show. show Отображает сведения об указанном приложении. Displays details for the specified application.
source source Добавляет, удаляет и обновляет репозитории Диспетчера пакетов Windows, доступ к которым осуществляется с помощью программы winget. Adds, removes, and updates the Windows Package Manager repositories accessed by the winget tool.
validate validate Проверяет файл манифеста для отправки в репозиторий Диспетчера пакетов Windows. Validates a manifest file for submission to the Windows Package Manager repository.

Параметры Options

Текущая предварительная версия программы winget поддерживает следующие параметры. The current preview of the winget tool supports the following options.

Параметр Option Описание Description
-v,—version -v,—version Возвращает текущую версию winget. Returns the current version of winget.
—info —info Предоставляет подробные сведения о winget, в том числе ссылки на лицензию и заявление о конфиденциальности. Provides you with all detailed information on winget, including the links to the license and privacy statement.
-?, —help -?, —help Отображает дополнительную справку для winget. Shows additional help for winget.

Поддерживаемые форматы установщика Supported installer formats

Текущая предварительная версия средства winget поддерживает следующие типы установщиков: The current preview of the winget tool supports the following types of installers:

Создание скриптов для winget Scripting winget

Вы можете создавать пакетные скрипты и скрипты PowerShell для установки нескольких приложений. You can author batch scripts and PowerShell scripts to install multiple applications.

При использовании скрипта winget запускает приложения в указанном порядке. When scripted, winget will launch the applications in the specified order. Когда установщик сообщит об успешной установке или сбое, winget запустит следующий установщик. When an installer returns success or failure, winget will launch the next installer. Если установщик запускает другой процесс, он может сообщить winget о завершении или сбое установки преждевременно. If an installer launches another process, it is possible that it will return to winget prematurely. Это приведет к тому, что winget запустит следующий установщик до завершения выполнения предыдущего. This will cause winget to install the next installer before the previous installer has completed.

Отсутствующие средства Missing tools

Если репозиторий сообщества не содержит ваше средство или приложение, отправьте пакет в наш репозиторий. If the community repository does not include your tool or application, please submit a package to our repository. После добавления вашего избранного средства оно станет доступно вам и всем остальным. By adding your favorite tool, it will be available to you and everyone else.

Настройка параметров winget Customize winget settings

Вы можете настроить интерфейс командной строки winget, изменив файл settings.json. You can configure the winget command line experience by modifying the settings.json file. Дополнительные сведения см. в статье https://aka.ms/winget-settings. For more information, see https://aka.ms/winget-settings. Обратите внимание, что параметры по-прежнему поддерживаются в экспериментальном режиме и еще не готовы для предварительной версии средства. Note that the settings are still in an experimental state and not yet finalized for the preview version of the tool.

Сведения об открытом коде Open source details

Программа winget — это программное обеспечение с открытым исходным кодом, доступное на сайте GitHub в репозитории https://github.com/microsoft/winget-cli/. The winget tool is open source software available on GitHub in the repo https://github.com/microsoft/winget-cli/. Источник для сборки клиента находится в папке src. The source for building the client is located in the src folder.

Источник для winget содержится в решении Visual Studio 2019 C++. The source for winget is contained in a Visual Studio 2019 C++ solution. Чтобы построить решение правильно, установите новейшую версию Visual Studio с рабочей нагрузкой C++. To build the solution correctly, install the latest Visual Studio with the C++ workload.

Мы рекомендуем вам пополнять источник winget на сайте GitHub. We encourage you to contribute to the winget source on GitHub. Для этого необходимо сначала принять и подписать соглашение Microsoft CLA. You must first agree to and sign the Microsoft CLA.

Путеводитель по системам для создания инсталляторов

Clickteam Install Creator 2

Компания Clickteam выпускает простые и дружелюбные продукты для разработчиков: например, Clickteam Fusion, The Games Factory, Multimedia Fusion. В этом же ряду находится программа Install Creator. Основное преимущество продукта — быстрое создание дистрибутива при помощи пошагового мастера.

Разделы настроек расположены в такой строгой последовательности в виде вкладок. Вначале указываются данные (Files), текстовое содержание диалогов (Wizard Text), формат окна (Window), дополнительные настройки (Options), настройки деинсталлятора (Uninstaller), размер дистрибутива (Build). После нажатия на Build запускается компиляция инсталлятора, остается лишь указать место его расположения.

Инсталлятор занимает 65 КБ, с учетом деинсталлятора это 105 КБ. Вдобавок к этому, в Install Creator применяется один из двух алгоритмов компрессии (zipper/ differentiator), оптимальный вариант определяется автоматически. При необходимости, данные можно поместить в пакет отдельно от инсталлятора.

Функциональность Clickteam Install Creator унифицирована, отсутствуют некоторые важные опции. Так, мультиязычность не поддерживается, русский язык в перечне локализаций и вовсе отсутствует. Интеграция со сторонними решениями не предусмотрена, поэтому работа с большими проектами (подразумевающими множество связей в системе) будет неудобной. Программа не позволяет создавать обновления, патчи. Впрочем, в последнем случае, можно использовать Patch Maker — разработку Clickteam.

В незарегистрированной версии Install Creator присутствует реклама. Профессиональная версия, помимо снятия этого лимита, позволяет включать в дистрибутив несколько редакций, устанавливать лицензионное ограничение для пользователя инсталлятора.

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

Actual Installer

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

Использование пошагового мастера не предполагается, но доступно окно параметров для нового проекта. Определив базовые сведения продукта, можно перейти в главное окно программы. Опции расположены в 5 секциях — «Общее», «Установка», «Диалоги», «Система» и «Реестр».

В разделе General (Общее) указывается информация о проекте, здесь же настраивается внешний вид мастера установки. В процессе установщик может проверять системные требования (такие как версия ОС, привилегии пользователя) и зависимости (Microsoft .NET Framework, Internet Explorer, Adobe Reader, Java, SQL Server и прочие). При отсутствии указанных компонентов, инсталлятор потребует от пользователя скачать и установить их.

В Installation («Установка») — расположение файлов и папок, расположение исполнимого файла, настройки процессов установки, обновления и деинсталляции. Оба процесса могут осуществляться в тихом режиме, не требуя вмешательства пользователя. В довесок к установщику, может использоваться мастер обновлений (Actual Updater).

Dialogs («Диалоги») предоставляют доступ к «начинке» разделов, включая текст лицензионного соглашения, readme файла, в том числе в формате RTF. Здесь же — выбор языков локализации, причем русский язык числится в списке. Ненужные разделы установщика легко отключить.

System («Система») — настройка системных изменений, вносимых при инсталляции: ярлыки, ключи реестра, переменные и пользовательские команды.

Register («Реестр») — установка файловых ассоциаций, переменных окружения, библиотек.

После выставления нужных опций достаточно нажать на кнопку Build Project — инсталлятор готов к запуску. В случае, если при создании инсталлятора была пропущена важная опция, при компиляции Actual Installer даст об этом знать и укажет на ошибку.

Резюме. Actual Installer включает в себя практически все стандартные параметры и опции проекта. Это «промежуточный» вариант между очень простыми (вроде Clickteam Install Creator) и более тяжеловесными решениями, о которых также пойдет речь.

CreateInstall

CreateInstall — инструментарий для создания установщиков. В его основу заложено две особенности — контроль над процессом установки и неограниченная расширяемость. Обе возможности реализованы благодаря языку программирования Gentee, применяемому для написания сценариев.

Интерфейс CreateInstall разбит на 3 вкладки — «Проект», «Скрипт установки» и «Скрипт деинсталляции». Первый раздел позволяет задать общие настройки инсталлятора: информация о продукте, поддерживаемые языки, пути, внешний вид. Дополнительно, инсталлятор можно защитить цифровой подписью и установить пароль.

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

Дополнением для CreateInstall служит утилита Quick CreateInstall. Она значительно упрощает создание инсталлятора, предоставляя только базовые настройки проекта. Из Quick CreateInstall в дальнейшем проект можно импортировать в CreateInstall.

Код проекта не предназначен для самостоятельного редактирования, переноса в IDE-среду, экспорта. Хотя язык Gentee имеет отличный потенциал: как минимум, это переменные и функции, условные выражения и синтаксис, базирующийся на C, C++ и Java.

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

Интерфейс и справка доступны на русском языке.

Резюме. CreateInstall — функциональная и доступная для понимания среда. Инструментарий CreateInstall не так уж и беден и позволяет обходиться собственными средствами. Но к недостаткам все же следует отнести замкнутость программы «в себе», подразумевая функции импорта и экспорта.

Advanced Installer

Advanced Installer основывается на технологии Windows Inslaller, позволяя создавать msi-, exe- и других видов дистрибутивов. Этому способствует продуманный интерфейс и работа с проектами. В Advanced Installer можно обнаружить немало возможностей, которых нет в других подобных комплексах, о чем ниже.

Примечательно, прежде всего, разнообразие проектов: сюда входят инсталляторы, Java-установщики, обновления, дополнения, модули слияния и другие. В разделе меню Installer собраны команды импорта проектов из Visual Studio, RAD Studio, Real Studio, Visual Basic. Здесь раскрывается потенциал Advanced Installer во взаимодействии с IDE-средами.

Для каждого из выбранных типов проекта предусмотрен детальный мастер настройки. Есть общие шаблоны — Simple, Enterprise, Architect или Professional. Большая часть проектов доступна только для определенных типов лицензии, общедоступные проекты обозначены как None в графе License Required.

Как уже сказано, при создании проекта можно воспользоваться пошаговым мастером, где, в частности, доступен выбор способа распространения пакета, языков локализации, настройка пользовательского интерфейса, ввод текста лицензии и другие опции. Advanced Installer позволяет выбрать вариант распространения программы — оставить данные без компрессии, разделить на CAB-архивы, сохранить в MSI и др., добавить цифровую подпись, потребовать ввод серийного номера и т. д.

Главное окно Advanced Installer (редактор проекта), в простом режиме отображения (Simple), содержит несколько секций:

  • Product Information (Информация о продукте) — ввод сведений о продукте, параметры установки.
  • Requirements (Требования) — указание аппаратных и системных требований, зависимостей ПО. Также имеется возможность создания пользовательских условий.
  • Resources (Ресурсы) — редактор ресурсов (файлов и ключей реестра).
  • Deployment (Развертывание) — выбор типа распространения продукта. Это может быть MSI, EXE или веб-инсталлятор. Для MSI, EXE ресурсы можно поместить отдельно от инсталлятора.
  • System Changes — переменные среды.

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

Для выполнения более сложных задач позволяется использовать пользовательские действия, EXE, DLL или скрипты, написанные на C, C++, VBS или JS. Для создания сценариев предусмотрен удобный редактор.

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

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

BitRock InstallBuilder

InstallBuilder — кроссплатформенная среда для создания инсталляторов. В перечень поддерживаемых систем входят: Windows ME — Windows 8, Mac OS X, FreeBSD, OpenBSD, Solaris (Intel & Sparc), AIX, HP-UX, IRIX, Linux (Intel x86/x64, Itanium, s390 & PPC). Инсталляторы доступны как для настольного, так и сетевого ПО. В первой части путеводителя уже рассматривался продукт IzPack, но для InstallBuilder характерна поддержка языков написания, включая не только Java, но и PHP, Perl, Python, Ruby, C/C++ и .NET/Mono.

Интерфейс программы доступен на русском языке. Для работы с проектом используется очень простая графическая оболочка. Присутствуют следующие секции с настройками:

  • Product Details («Информация о продукте») — информация о проекте.
  • Files («Файлы») — проводниковый интерфейс для добавления файлов
  • Advanced («Расширенные настройки») — наиболее интересный раздел, где, пожалуй, и раскрывается вся мощь BitRock Installer. Для работы с проектами используется формат XML (см. обзор WiX в первой части), возможна совместная работа, ручная настройка проектов с поддержкой сценариев. Встроенные действия позволяют автоматизировать процессы установки и объединять задачи, делая их доступными в несколько кликов. Таким образом можно проверять зависимости, добавлять переменные окружения, изменять реестр и файловую систему и прочее. Для редактирования сценариев используется встроенный, очень простой, XML-редактор.
  • Customization («Настройка») — настройка пользовательского интерфейса инсталлятора, переменных окружения, пост-установочных действий, платформ, разрешений и компрессии. Для сжатия применяется ZIP/LZMA-компрессия. Можно создать тихий установщик, работающий в текстовом режиме.
  • Packaging («Упаковка») — для отслеживания ошибок имеется встроенный дебаггер. При построении легко создать кроссплатформенный инсталлятор. На выходе он использует «родную» среду ОС (это относится к графическим системам Windows, KDE и Gnome).

Резюме. BitRock InstallBuilder рекомендуется, прежде всего, для создания кроссплатформенных продуктов. Сценарий, основанный на XML-спецификациях, удобен в обращении, проект легко импортировать и экспортировать для редактирования во внешней среде. Таким образом, на основе данного XML-сценария можно быстро генерировать инсталляторы для всех требуемых платформ.

InstallMate

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

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

Можно импортировать созданный проект или воспользоваться редактором InstallMate. Кстати говоря возможности импорта не впечатлили: поддерживаются продукты компании Tarma и проекты Visual Basic.

Главное окно программы содержит разделы с параметрами, разделенные, условно, на три секции:

  • Общие настройки: детальная информация о проекте, программные зависимости, системные требования, компоненты, а также опции инсталлятора. В боковой панели Package можно также указать тип инсталлятора, компрессии, ссылку на скачивание (в случае с веб-инсталлятором), пароль на установку. В один инсталлятор можно добавить несколько пакетов.
  • Компоненты: включение в дистрибутив элементов и связей: это файлы и папки, ключи реестра, ini-конфиги, переменные среды, файловые ассоциации, COM-классы, сервисы.
  • Опции инсталлятора: с помощью редактора можно отредактировать текст диалогов. Предусмотрена гибкая настройка локализаций, InstallMate поддерживает 19 языков по умолчанию. Можно создать один дистрибутив с несколькими локализациями либо несколько проектов с одним языком. В этом же разделе доступны пользовательские действия, а также переменные — включая 250 предустановок. Расширить функциональность пакета можно с помощью расширений и DLL-библиотек.

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

Полный список функций представлен здесь.

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

Читайте также:  Восстановление пароля windows загрузочный диск windows
Оцените статью