Создание пакетов загрузчика
Программа установки — это общий установщик, который можно настроить на обнаружение и установку распространяемых компонентов, таких как файлы установщика Windows (.MSI) и исполняемые программы. Установщик также называется начальным загрузчиком. Он программируется с помощью набора XML манифестов, определяющих метаданные для управления установкой компонента.
Сначала начальный загрузчик проверяет, установлены ли необходимые компоненты. Если нет, то начальный загрузчик показывает лицензионные соглашения. Как только конечный пользователь примет условия лицензионного соглашения, начнется установка необходимых компонентов. Если все необходимые компоненты обнаружены, начальный загрузчик просто запустит установщик приложения.
Создание пользовательских пакетов
Для создания манифестов можно использовать редактор XML в Visual Studio. Дополнительные сведения см. в разделах Практическое руководство. Создание манифеста пакета и Практическое руководство. Создание манифеста продукта. Пример создания пакета начального загрузчика см. в разделе Пошаговое руководство. Создание пользовательского загрузчика для вывода окна с предупреждением о конфиденциальности.
Чтобы создать пакет начального загрузчика, необходимо отправить распространяемый компонент в форме EXE- или MSI-файла в Генератор манифестов начального загрузчика. После этого Генератор манифестов начального загрузчика создаст следующие файлы.
Манифест продукта (product.xml), содержащий метаданные для пакета, не зависящие от языка. Здесь находятся общие метаданные для всех локализованных версий распространяемого компонента.
Манифест пакета (package.xml), содержащий метаданные, которые относятся к конкретному языку. Обычно они содержат локализованные сообщения об ошибках. Компонент должен содержать хотя бы один манифест пакета для каждой локализованной версии.
После создания этих файлов необходимо сохранить манифест продукта в папку с именем стандартного начального загрузчика. Файл манифеста пакета следует переместить в папку с именем языкового стандарта. Например, если манифест пакета создан для распространения на английском языке, то файл необходимо положить в папку с названием "en". Повторите эту процедуру для каждого языкового стандарта, например "ja" для японского языка и "de" для немецкого. Окончательный пользовательский пакет начального загрузчика может иметь следующую структуру папок.
CustomBootstrapperPackage
product.xml
CustomBootstrapper.msi
de
eula.rtf
package.xml
en
eula.rtf
package.xml
ja
eula.rtf
package.xml
Скопируйте распространяемые файлы в папку начального загрузчика. Для получения дополнительной информации см. Практическое руководство. Создание локализованного пакета загрузчика.
\Program Files\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages
Определить расположение папки начального загрузчика можно по значению Путь в следующем разделе реестра:
HKLM\Software\Microsoft\GenericBootstrapper\11.0
Для 64-разрядных операционных систем необходимо использовать следующий раздел реестра:
HKLM\Software\Wow6432Node\Microsoft\GenericBootstrapper\11.0
Каждый распространяемый компонент создается в своей подпапке в каталоге пакетов. Манифест продукта и распространяемые файлы сохраняются в эту подпапку. Локализованные версии манифестов компонента и пакета помещаются в подпапки с именем, соответствующим названию культуры.
После того как файлы будут скопированы в папку начального загрузчика, пакет начального загрузчика автоматически появится в диалоговом окне необходимых компонентов Visual Studio. Если пользовательский пакет начального загрузчика не появился, закройте и снова откройте диалоговое окно необходимых компонентов. Для получения дополнительной информации см. Диалоговое окно "Необходимые компоненты".
В следующей таблице перечислены свойства, которые заполняются начальным загрузчиком автоматически.
Свойство |
Описание |
---|---|
ApplicationName |
Имя приложения. |
ProcessorArchitecture |
Процессор и количество бит на слово в платформе, для которой предназначен исполняемый файл. В эти значения входят:
|
Номер версии для операционных систем Microsoft Windows 95, Windows 98 и Windows ME. Синтаксис версии — Major.Minor.ServicePack. |
|
Номер версии для операционных систем Windows NT, Windows 2000, Windows XP, Windows Vista, Windows Server 2008 и Windows 7. Синтаксис версии — Major.Minor.ServicePack. |
|
Версия сборки установщика Windows (msi.dll), который запускается во время установки. |
|
Данное свойство устанавливается, если пользователь имеет права администратора. Значения — true или false. |
|
InstallMode |
Режим установки показывает, откуда должен быть установлен компонент. В эти значения входят:
|
Отделение распространяемых компонентов от установок приложения
Размещение распространяемых файлов в проектах установки можно предотвратить. Для этого необходимо создать список распространяемых компонентов в папке RedistList каталога .NET Framework:
%ProgramFiles%\Microsoft.NET\RedistList
Список распространяемых компонентов — это XML файл, которому необходимо присвоить имя в следующем формате. Имя компании.Имя компонента.RedistList.xml. Например, если компонент называется Datawidgets и разработан компанией Acme, файл необходимо назвать Acme.DataWidgets.RedistList.xml. Пример содержания списка распространяемых компонентов:
<?xml version="1.0" encoding="UTF-8"?>
<FileList Redist="Acme.DataWidgets" >
<File AssemblyName="Acme.DataGrid" Version="1.0.0.0" PublicKeyToken="b03f5f7f11d50a3a" Culture="neutral" ProcessorArchitecture="MSIL" InGAC="true" />
</FileList>
См. также
Задачи
Практическое руководство. Установка необходимых компонентов при помощи ClickOnce-приложения
Ссылки
Диалоговое окно "Необходимые компоненты"
Справочные сведения о схеме пакетов и продуктов
Другие ресурсы
Воспользуйтесь начальным загрузчиком Visual Studio 2005 для запуска установки