Практическое руководство. Добавление установщиков в приложение служб
Обновлен: Ноябрь 2007
В состав Visual Studio входят компоненты установки, которые могут устанавливать ресурсы, связанные с приложениями служб. Компоненты установки регистрируются в системе, в которой они устанавливаются, в качестве отдельной службы; после этого они дают знать о своем существовании диспетчеру управления службами. При работе с приложениями служб для автоматического добавления в проект соответствующих установщиков можно воспользоваться ссылкой в окне "Свойства". Дополнительные сведения о компонентах установки и о принципах их работы см. в разделе Знакомство с компонентами установки.
Примечание. |
---|
Значения свойств службы копируются в класс установщика из класса службы. При изменении значений свойств в классе службы соответствующие значения в классе установщика автоматически обновляться не будут. |
При добавлении установщика в проекте создается новый класс (по умолчанию он называется ProjectInstaller), а внутри этого класса создаются экземпляры соответствующих компонентов установки. Этот класс служит для сбора и объединения всех нужных приложению компонентов установки. Например, если добавить в приложение вторую службу и щелкнуть ссылку "Добавить установщик", то второй класс установщика создаваться не будет; вместо этого в уже существующий класс будет добавлен дополнительный компонент установки для второй службы.
Для правильной установки служб не требуется писать какой-то особый код установщиков. Тем не менее, иногда бывает нужно добавить в процесс установки дополнительную функциональность. Для этого может потребоваться изменить содержимое установщиков. Дополнительные сведения см. в разделе Практическое руководство. Настройка компонентов установки.
Следующим (после добавления установщиков в приложение) этапом является создание проекта установки, который установит откомпилированные файлы проекта и запустит установщики, необходимые для установки службы. Для создания полного проекта установки в него необходимо сначала добавить выходной файл проекта приложения службы, а затем требуемое для установки службы настраиваемое действие. Дополнительные сведения о проектах установки см. в разделе Проекты установки. Дополнительные сведения о настраиваемых действиях см. в разделе Пошаговое руководство. Создание настраиваемого действия.
Примечание. |
---|
Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих настроек или выпуска. Чтобы изменить параметры, выберите в меню Сервис пункт Импорт и экспорт параметров. Дополнительные сведения см. в разделе Параметры Visual Studio. |
Чтобы добавить установщики в приложение службы, выполните следующие действия:
В обозревателе решений откройте представление Конструктор для службы, к в которую необходимо добавить компонент установки.
Щелкните фон конструктора для выбора самой службы, а не какого-либо из ее элементов.
Наведя указатель на конструктор, щелкните правой кнопкой мыши и выберите команду Добавить установщик.
В проект будет добавлен новый класс ProjectInstaller и два компонента установки ServiceProcessInstaller и ServiceInstaller, а значения свойств службы будут скопированы в компоненты.
Щелкните компонент ServiceInstaller и убедитесь в том, что значение свойства ServiceName соответствует значению свойства ServiceName самой службы.
Чтобы задать способ запуска службы, щелкните компонент ServiceInstaller и укажите соответствующее значение свойства StartType:
Значение
Результат
После установки служба запускается вручную. Дополнительные сведения см. в разделе Практическое руководство. Запуск служб.
После любой перезагрузки компьютера служба будет запускаться сама.
Служба запускаться не будет.
Для задания контекста безопасности, в котором должна выполняться служба, щелкните компонент ServiceProcessInstaller и задайте соответствующие значения свойств. Дополнительные сведения см. в разделе Практическое руководство. Назначение службам контекста безопасности.
Необходимо перегрузить все методы, в которых должны выполняться дополнительные действия. Дополнительные сведения см. в разделе Практическое руководство. Переопределение методов по умолчанию для компонентов установки.
Повторите шаги 1–7 для всех остальных служб, имеющихся в проекте.
Примечание. Для каждой дополнительной службы в проекте необходимо добавить в класс установщика ProjectInstaller дополнительный компонент ServiceInstaller. Компонент ServiceProcessInstaller, добавленный на третьем шаге, работает со всеми имеющимися в проекте установщиками служб.
Создайте проект установки, а также все настраиваемые действия, необходимые для развертывания и установки службы. Дополнительные сведения о проектах установки см. в разделе Проекты установки. Дополнительные сведения о настраиваемых действиях см. в разделе Пошаговое руководство. Создание настраиваемого действия.
См. также
Задачи
Практическое руководство. Установка и удаление служб
Практическое руководство. Запуск служб
Практическое руководство. Назначение службам контекста безопасности
Практическое руководство. Настройка компонентов установки
Практическое руководство. Переопределение методов по умолчанию для компонентов установки