Partager via


Table MsiServiceConfigFailureActions

La table MsiServiceConfigFailureActions répertorie les opérations à exécuter après l’échec d’un service. Les opérations spécifiées dans ce tableau s’exécutent lors du prochain démarrage du système.

Windows Installer 4.5 ou versions antérieures : Non prises en charge. Cette table est disponible à partir de Windows Installer 5.0.

La table MsiServiceConfigFailureActions contient les colonnes suivantes.

Colonne Type Clé Nullable
MsiServiceConfigFailureActions Identificateur O N
Nom Formatted N N
Événement Integer N N
ResetPeriod Integer N O
RebootMessage Formatted N Y
Commande Formatted N O
Actions Texte N O
DelayActions Texte N O
Component_ Identificateur N N

 

Colonnes

MsiServiceConfigFailureActions

Il s’agit de la clé primaire de cette table qui identifie une action d’échec.

Nom

Cette colonne contient le nom d’un service qui fait partie de ce package ou qui est déjà installé.

Événement

Cette colonne spécifie quand modifier la configuration du service. Les valeurs suivantes sont des champs de bits qui peuvent être combinés pour représenter plusieurs opérations. Toutes les autres valeurs de champ de bits sont ignorées.

Constante Description
msidbServiceConfigEventInstall1
Modification lors de l’installation du composant.
msidbServiceConfigEventUninstall2
Modification lors de la désinstallation du composant.
msidbServiceConfigEventReinstall4
Modification lors de la réinstallation du composant.

 

ResetPeriod

Période de réinitialisation en secondes du nombre d’échecs du service. Le Gestionnaire de contrôle de service (SCM) compte le nombre de fois où chaque service a échoué depuis le dernier redémarrage du système. Le nombre est réinitialisé à zéro si le service n’échoue pas pendant la période de réinitialisation. Lorsque le service échoue pour la Nième fois, le système exécute l’action spécifiée dans l’élément [N-1] du tableau spécifié dans le champ Actions.

Laissez le champ ResetPeriod vide pour indiquer que le nombre d’échecs ne doit jamais être réinitialisé.

RebootMessage

Message envoyé aux utilisateurs avant de redémarrer l’ordinateur en réponse à une action SC_ACTION_REBOOT spécifiée dans la colonne Actions. Vous pouvez utiliser une chaîne vide, « » pour envoyer le message actuel inchangé. Vous pouvez utiliser la syntaxe [~] du type de données Mis en forme pour supprimer le message actuel et n’envoyer aucun message.

Commande

Ligne de commande exécutée par le processus créé par la fonction CreateProcess en réponse à une action SC_ACTION_RUN_COMMAND spécifiée dans la colonne Actions. Le nouveau processus s’exécute sous le même compte que le service et uniquement si le champ Action est SC_ACTION_RUN_COMMAND. Vous pouvez utiliser une chaîne vide, « » pour utiliser la ligne de commande actuelle inchangée. Vous pouvez utiliser la syntaxe [~] du type de données Mis en forme pour supprimer la ligne de commande actuelle et n’exécuter aucune opération en cas d’échec du service.

Actions

Ce champ contient un tableau de valeurs entières qui spécifient les actions effectuées par le SCM en cas d’échec du service. Séparez les valeurs du tableau par [~]. La valeur entière dans le Nième élément du tableau spécifie l’action effectuée lorsque le service échoue pour la Nième fois. Chaque membre du tableau est l’une des valeurs entières suivantes.

Constante Description
SC_ACTION_NONE0
Aucune action.
SC_ACTION_REBOOT2
Redémarrez l'ordinateur.
SC_ACTION_RESTART1
Redémarrez le service.
SC_ACTION_RUN_COMMAND3
Exécutez une commande.

 

DelayActions

Ce champ contient un tableau de valeurs entières qui spécifient le temps d’attente en millisecondes avant d’effectuer l’action spécifiée dans la colonne Action. Séparez les valeurs du tableau par [~]. Le nombre d’éléments dans le tableau DelayActions doit être égal au nombre d’éléments dans le tableau Actions. Le Nième élément du tableau DelayActions spécifie le délai pour le nième élément du tableau Actions.

Component_

Clé externe à la colonne 1 de la table Component.

Validation

ICE102
ICE03
ICE06
ICE32
ICE45
ICE46
ICE69