Compartilhar via


Tabela ServiceControl

A tabela ServiceControl é usada para controlar serviços instalados ou desinstalados.

Nota

Os serviços que dependem da presença de um assembly no GAC (Cache de Assembly Global) não podem ser instalados ou iniciados usando as tabelas ServiceInstall e ServiceControl. Se você precisar iniciar um serviço que dependa de um assembly no GAC, deverá usar uma ação personalizada sequenciada após a ação InstallFinalize ou uma ação personalizada de confirmação . Para obter informações sobre como instalar assemblies no GAC, consulte instalação de assemblies no cache de assembly global.

 

A tabela ServiceControl tem as colunas a seguir.

Coluna Tipo Chave Nullable
ServiceControl identificador de Y N
Nome Formatado N N
Acontecimento inteiro N N
Argumentos Formatado N Y
Esperar inteiro N Y
Componente_ identificador de N N

 

Colunas

ServiceControl

Essa é a chave primária desta tabela.

Nome do

Esta coluna é a cadeia de caracteres que nomeia o serviço. Esta coluna pode ser usada para controlar um serviço que não está instalado.

Evento

Esta coluna contém as operações a serem executadas no serviço nomeado. Observe que, ao parar um serviço, todos os serviços que dependem desse serviço também são interrompidos. Ao excluir um serviço em execução, o instalador interrompe o serviço.

Os valores neste campo são campos de bits que podem ser combinados em um único valor que representa várias operações.

Os valores a seguir são usados somente durante uma instalação.

Constante Hexadecimal Decimal Descrição
msidbServiceControlEventStart 0x001 1 Inicia o serviço durante a ação StartServices.
msidbServiceControlEventStop 0x002 2 Interrompe o serviço durante a ação StopServices.
(nenhum) 0x004 4 < > reservada
msidbServiceControlEventDelete 0x008 8 Exclui o serviço durante a ação DeleteServices.

 

Os valores a seguir são usados somente durante uma desinstalação.

Constante Hexadecimal Decimal Descrição
msidbServiceControlEventUninstallStart 0x010 16 Inicia o serviço durante a ação StartServices.
msidbServiceControlEventUninstallStop 0x020 32 Interrompe o serviço durante a ação StopServices.
(nenhum) 0x040 64 < > reservada
msidbServiceControlEventUninstallDelete 0x080 128 Exclui o serviço durante a ação DeleteServices.

 

Argumentos

Uma lista de argumentos para iniciar serviços. Os argumentos são separados por caracteres nulos [~]. Por exemplo, a lista de argumentos Um, Dois e Três está listada como: Um[~]Dois[~]Três.

espera

Deixar esse campo nulo ou inserir um valor de 1 faz com que o instalador aguarde no máximo 30 segundos para que o serviço seja concluído antes de continuar. A espera pode ser usada para permitir tempo adicional para um evento crítico retornar um erro de falha. Um valor 0 nesse campo significa aguardar apenas até que o SCM (gerenciador de controle de serviço) informe que esse serviço está em um estado pendente antes de continuar com a instalação.

Component_

Chave externa para a coluna um dos da Tabela de Componentes do.

Observações

As ações StartServices, StopServicese DeleteServices em tabelas de sequência processar as informações nesta tabela. Para obter informações sobre como usar tabelas de sequência, consulte Usando uma tabela de sequência.

Use a coluna Nome para iniciar, parar ou excluir serviços que estão sendo substituídos pela instalação ou que dependem de um novo serviço que está sendo instalado. Por exemplo, inserir MyService na coluna ServiceControl pode vincular esse serviço ao MyComponent na coluna Component_. Se o campo de bits na coluna Evento estiver definido para iniciar durante a instalação, o instalador iniciará o MyService ao instalar o MyComponent.

Validação

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69