Поделиться через


Таблица ServiceControl

Таблица ServiceControl используется для управления установленными или удаленными службами.

Заметка

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

 

Таблица ServiceControl содержит следующие столбцы.

Столбец Тип Ключ Допустимое значение NULL
ServiceControl идентификатора Y N
Имя Форматированные N N
Событие целочисленного N N
Аргументы Форматированные N Y
Ждать целочисленного N Y
Компонент_ идентификатора N N

 

Столбцы

ServiceControl

Это первичный ключ этой таблицы.

имя

Этот столбец является строковым именованием службы. Этот столбец можно использовать для управления службой, которая не установлена.

событие

Этот столбец содержит операции, выполняемые в именованной службе. Обратите внимание, что при остановке службы все службы, зависящие от этой службы, также остановлены. При удалении запущенной службы установщик останавливает службу.

Значения в этом поле — это битовые поля, которые можно объединить в одно значение, представляющее несколько операций.

Следующие значения используются только во время установки.

Постоянный Шестнадцатиричный Десятичный Описание
msidbServiceControlEventStart 0x001 1 Запускает службу во время действия StartServices.
msidbServiceControlEventStop 0x002 2 Останавливает службу во время действия StopServices.
(нет) 0x004 4 зарезервированные><
msidbServiceControlEventDelete 0x008 8 Удаляет службу во время действия DeleteServices.

 

Следующие значения используются только во время удаления.

Постоянный Шестнадцатиричный Десятичный Описание
msidbServiceControlEventUninstallStart 0x010 16 Запускает службу во время действия StartServices.
msidbServiceControlEventUninstallStop 0x020 32 Останавливает службу во время действия StopServices.
(нет) 0x040 64 зарезервированные><
msidbServiceControlEventUninstallDelete 0x080 128 Удаляет службу во время действия DeleteServices.

 

Аргументы

Список аргументов для запуска служб. Аргументы разделяются символами NULL [~]. Например, список аргументов "Один", "Два" и "Три" перечислены как": One[~]Two[~]Three.

ожидание

Выход из этого поля null или ввод значения 1 приводит к тому, что установщик ожидает не более 30 секунд, пока служба завершится, прежде чем продолжить. Ожидание можно использовать, чтобы разрешить дополнительное время для критического события, чтобы вернуть ошибку сбоя. Значение 0 в этом поле означает, чтобы ждать только до тех пор, пока диспетчер управления службами (SCM) сообщает, что эта служба находится в состоянии ожидания, прежде чем продолжить установку.

Component_

Внешний ключ к столбцу одной из таблицы компонентов.

Замечания

Действия StartServices, StopServicesи DeleteServices в таблицах последовательностей обрабатывать сведения в этой таблице. Сведения об использовании таблиц последовательности см. в с помощью таблицы последовательности.

Используйте столбец Name для запуска, остановки или удаления служб, которые заменяются установкой или зависят от новой службы, установленной. Например, ввод MyService в столбец ServiceControl может связать эту службу с MyComponent в столбце Component_. Если битовое поле в столбце событий установлено для начала при установке, установщик запускает MyService при установке MyComponent.

Ратификация

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69