Tabella ServiceControl

La tabella ServiceControl viene usata per controllare i servizi installati o disinstallati.

Nota

I servizi che si basano sulla presenza di un assembly nella Global Assembly Cache (GAC) non possono essere installati o avviati usando le tabelle ServiceInstall e ServiceControl . Se è necessario avviare un servizio che dipende da un assembly nella GAC, è necessario usare una sequenza di azioni personalizzata dopo l'azione InstallFinalize o un'azione personalizzata di commit. Per informazioni sull'installazione di assembly nel gaC, vedere Installazione di assembly nella Global Assembly Cache.

 

La tabella ServiceControl contiene le colonne seguenti.

Colonna Tipo Chiave Nullable
ServiceControl Identificatore S N
Nome Formattato N N
Evento Integer N N
Argomenti Formattato N S
Attesa Integer N S
Componente_ Identificatore N N

 

Colonne

ServiceControl

Questa è la chiave primaria di questa tabella.

Nome

Questa colonna è la stringa che denomina il servizio. Questa colonna può essere usata per controllare un servizio non installato.

Evento

Questa colonna contiene le operazioni da eseguire nel servizio denominato. Si noti che quando si arresta un servizio, vengono arrestati anche tutti i servizi che dipendono da tale servizio. Quando si elimina un servizio in esecuzione, il programma di installazione arresta il servizio.

I valori di questo campo sono campi bit che possono essere combinati in un singolo valore che rappresenta diverse operazioni.

I valori seguenti vengono usati solo durante un'installazione.

Costante Valore esadecimale Decimal Descrizione
msidbServiceControlEventStart 0x001 1 Avvia il servizio durante l'azione StartServices.
msidbServiceControlEventStop 0x002 2 Arresta il servizio durante l'azione StopServices.
(nessuna) 0x004 4 <reserved>
msidbServiceControlEventDelete 0x008 8 Elimina il servizio durante l'azione DeleteServices.

 

I valori seguenti vengono usati solo durante una disinstallazione.

Costante Valore esadecimale Decimal Descrizione
msidbServiceControlEventUninstallStart 0x010 16 Avvia il servizio durante l'azione StartServices.
msidbServiceControlEventUninstallStop 0x020 32 Arresta il servizio durante l'azione StopServices.
(nessuna) 0x040 64 <reserved>
msidbServiceControlEventUninstallDelete 0x080 128 Elimina il servizio durante l'azione DeleteServices.

 

Argomenti

Elenco di argomenti per l'avvio dei servizi. Gli argomenti sono separati da caratteri Null [~]. Ad esempio, l'elenco di argomenti Uno, Due e Tre sono elencati come: One[~]Two[~]Three.

Aspettare

Lasciando il campo Null o immettendo un valore pari a 1, il programma di installazione attende un massimo di 30 secondi per il completamento del servizio prima di procedere. L'attesa può essere usata per consentire un tempo aggiuntivo per un evento critico per restituire un errore di errore. Un valore pari a 0 in questo campo significa attendere solo fino a quando il gestore del controllo del servizio (SCM) segnala che il servizio si trova in uno stato in sospeso prima di continuare con l'installazione.

Componente_

Chiave esterna alla colonna una della tabella componente.

Commenti

Le azioni StartServices, StopServices e DeleteServices nelle tabelle di sequenza elaborano le informazioni contenute in questa tabella. Per informazioni sull'uso delle tabelle di sequenza, vedere Uso di una tabella sequenza.

Utilizzare la colonna Nome per avviare, arrestare o eliminare i servizi che vengono sostituiti dall'installazione o che dipendono da un nuovo servizio in fase di installazione. Ad esempio, l'immissione di MyService nella colonna ServiceControl può collegare questo servizio a MyComponent nella colonna Component_. Se il campo di bit nella colonna Evento è impostato per l'avvio durante l'installazione, il programma di installazione avvia MyService durante l'installazione di MyComponent.

Convalida

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69