Partager via


ServiceControl Table

La table ServiceControl est utilisée pour contrôler les services installés ou désinstallés.

Note

Les services qui s’appuient sur la présence d’un assembly dans le Global Assembly Cache (GAC) ne peuvent pas être installés ou démarrés à l’aide des tables ServiceInstall et ServiceControl. Si vous devez démarrer un service qui dépend d’un assembly dans le GAC, vous devez utiliser une action personnalisée séquencée après l’action InstallFinalize ou une action valider une action personnalisée. Pour plus d’informations sur l’installation d’assemblys dans le GAC, consultez Installation d’assemblys dans le global Assembly Cache.

 

La table ServiceControl contient les colonnes suivantes.

Colonne Type Clé Nullable
ServiceControl identificateur Y N
Nom mise en forme N N
Événement entier N N
Arguments mise en forme N Y
Attendre entier N Y
Composant_ identificateur N N

 

Colonnes

ServiceControl

Il s’agit de la clé primaire de cette table.

nom de

Cette colonne est la chaîne qui nomme le service. Cette colonne peut être utilisée pour contrôler un service qui n’est pas installé.

événement

Cette colonne contient les opérations à effectuer sur le service nommé. Notez que lors de l’arrêt d’un service, tous les services qui dépendent de ce service sont également arrêtés. Lors de la suppression d’un service en cours d’exécution, le programme d’installation arrête le service.

Les valeurs de ce champ sont des champs de bits qui peuvent être combinés en une seule valeur qui représente plusieurs opérations.

Les valeurs suivantes sont utilisées uniquement pendant une installation.

Constant Hexadécimal Décimal Description
msidbServiceControlEventStart 0x001 1 Démarre le service pendant l’action StartServices .
msidbServiceControlEventStop 0x002 2 Arrête le service pendant l’action StopServices .
(aucun) 0x004 4 < > réservée
msidbServiceControlEventDelete 0x008 8 Supprime le service pendant l’action DeleteServices.

 

Les valeurs suivantes sont utilisées uniquement lors d’une désinstallation.

Constant Hexadécimal Décimal Description
msidbServiceControlEventUninstallStart 0x010 16 Démarre le service pendant l’action StartServices .
msidbServiceControlEventUninstallStop 0x020 32 Arrête le service pendant l’action StopServices .
(aucun) 0x040 64 < > réservée
msidbServiceControlEventUninstallDelete 0x080 128 Supprime le service pendant l’action DeleteServices.

 

arguments

Liste d’arguments pour le démarrage des services. Les arguments sont séparés par des caractères null [~]. Par exemple, la liste des arguments One, Two et Three sont répertoriés comme suit : One[~]Two[~]Three.

Attendre

En laissant ce champ null ou en entrant une valeur de 1, le programme d’installation attend un maximum de 30 secondes pour que le service se termine avant de continuer. L’attente peut être utilisée pour autoriser un temps supplémentaire pour qu’un événement critique retourne une erreur d’échec. La valeur 0 dans ce champ signifie attendre que le gestionnaire de contrôle de service (SCM) signale que ce service est dans un état en attente avant de poursuivre l’installation.

Component_

Clé externe à la colonne de l’une des de la table de composants.

Remarques

Les actions StartServices, StopServiceset DeleteServices dans tables de séquences traiter les informations de ce tableau. Pour plus d’informations sur l’utilisation de tables de séquences , consultez Utilisation d’une table de séquences.

Utilisez la colonne Name pour démarrer, arrêter ou supprimer des services en cours de remplacement par l’installation ou qui dépendent d’un nouveau service installé. Par exemple, l’entrée de MyService dans la colonne ServiceControl peut lier ce service à MyComponent dans la colonne Component_. Si le champ bit de la colonne Événement est défini pour démarrer lors de l’installation, le programme d’installation démarre MyService lors de l’installation de MyComponent.

Validation

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69