Table ServiceControl

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

Notes

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 avez besoin de démarrer un service qui dépend d’un assembly dans le GAC, vous devez utiliser une séquence d’action personnalisée après l' action InstallFinalize ou une action personnalisée de validation. 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 O N
Nom Correct N N
Événement Integer N N
Arguments Correct N O
Wait Integer N O
Composant_ Identificateur N N

Colonnes

ServiceControl

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

Nomme

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 valeur unique qui représente plusieurs opérations.

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

Constante Valeur hexadécimale Decimal 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é>
msidbServiceControlEventDelete 0x008 8 Supprime le service pendant l' action DeleteServices.

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

Constante Valeur hexadécimale Decimal 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é>
msidbServiceControlEventUninstallDelete 0x080 128 Supprime le service pendant l' action DeleteServices.

Arguments

Liste d’arguments pour démarrer les services. Les arguments sont séparés par des caractères null [ ~ ] . Par exemple, la liste des arguments un, deux et trois sont répertoriées comme suit : un [ ~ ] deux [ ~ ] trois.

Qu'

Si vous laissez ce champ null ou si vous entrez une valeur de 1, le programme d’installation attend un maximum de 30 secondes avant que le service ne se termine. L’attente peut être utilisée pour permettre à un événement critique de renvoyer une erreur d’échec. La valeur 0 dans ce champ signifie d’attendre uniquement jusqu’à ce que le gestionnaire de contrôle des services (SCM) signale que ce service est en état d’attente avant de poursuivre l’installation.

-_

Clé externe vers la colonne de l’une des tables de composants.

Notes

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

Utilisez la colonne nom pour démarrer, arrêter ou supprimer des services qui sont remplacés par l’installation ou qui dépendent d’un nouveau service en cours d’installation. Par exemple, l’entrée de MyService dans la colonne ServiceControl peut lier ce service à MyComponent dans la _ colonne Component. Si le champ de bits de la colonne d’événement est défini pour démarrer lors de l’installation de, le programme d’installation démarre MyService lors de l’installation de MonComposant.

Validation

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69