Partilhar via


Tabela ServiceControl

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

Observação

Os serviços que dependem da presença de um de montagem de no GAC (Global Assembly Cache) não podem ser instalados ou iniciados usando as tabelas ServiceInstall e ServiceControl. Se você precisar iniciar um serviço que depende de um assembly no GAC, deverá usar uma ação personalizada sequenciada após o de ação InstallFinalize ou uma ação personalizada commit. 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 seguintes colunas.

Coluna Tipo Chave Nulo
Controlo de Serviço Identificador Y N
Designação Formatado N N
Evento inteiro N N
Argumentos Formatado N Y
Aguarde inteiro N Y
Component_ Identificador N N

 

Colunas

ServiceControl

Esta é a chave primária desta tabela.

Nome

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 interromper 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 apenas 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 <reservado>
msidbServiceControlEventDelete 0x008 8 Exclui o serviço durante a ação DeleteServices.

 

Os valores a seguir são usados apenas 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 <reservado>
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.

Aguarde

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

Component_

Chave externa para a coluna um da Tabela de Componentes .

Comentários

O StartServices, StopServicese DeleteServices ações 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 a MyComponent na coluna Component_. Se o campo bit na coluna Evento estiver definido para iniciar durante a instalação, o instalador iniciará MyService ao instalar MyComponent.

Validação

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69