ICE 102

Valide les tables MsiServiceConfig et MsiServiceConfigFailureActions.

Vérifie que la valeur de la colonne Event des tables MsiServiceConfig et MsiServiceConfigFailureActions est msidbServiceConfigEventInstall, msidbServiceConfigEventUninstall ou msidbServiceConfigEventReinstall. Vérifie que la valeur de la colonne Component_ des tables MsiServiceConfig et MsiServiceConfigFailureActions est une clé valide de la table Composants.

Vérifie que les valeurs de la colonne ConfigType de la table MsiServiceConfig sont des valeurs autorisées.

Vérifie que les valeurs des colonnes Actions et Actions différées de la table MsiServiceConfigFailureActions sont séparées par [~]. Vérifie que le nombre de valeurs répertoriées dans la colonne Actions et le nombre de valeurs répertoriées dans la colonne Actions différées de chaque ligne de la table MsiServiceConfigFailureActions sont identiques.

Si la valeur du champ ConfigType de la table MsiServiceConfig est SERVICE_CONFIG_DELAYED_AUTO_START, la valeur du champ Argument doit être 0 ou 1.

Si la valeur du champ ConfigType de la table MsiServiceConfig est SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO, la valeur du champ Argument doit contenir une chaîne valide de constantes de privilèges.

Si la valeur du champ ConfigType de la table MsiServiceConfig est SERVICE_CONFIG_SERVICE_SID_INFO la valeur du champ Argument doit être SERVICE_SID_TYPE_NONE, SERVICE_SID_TYPE_RESTRICTED ou SERVICE_SID_TYPE_UNRESTRICTED.

Si la valeur du champ ConfigType de la table MsiServiceConfig est SERVICE_CONFIG_PRESHUTDOWN_INFO, la valeur du champ Argument doit être positive ou vide. Si la valeur du champ ConfigType de la table MsiServiceConfig est SERVICE_CONFIG_FAILURE_ACTIONS_FLAG, la valeur du champ Argument doit contenir 0 ou 1.

Windows Installer 4.5 ou versions antérieures : non prises en charge. Cet ICE est disponible à partir de Windows Installer 5.0.

Résultats

ICE102 publie les erreurs suivantes.

Erreur ICE102 Description
Dans l’entrée de table MsiServiceConfig (MsiServiceConfig = )[1], ConfigType =%d n’est pas un paramètre valide. Il devrait être compris entre 3 et 7. Le champ Config de la table MsiServiceConfig ne contient pas de valeur autorisée.
Dans l’entrée de table MsiServiceConfig (MsiServiceConfig = )[1], Argument =%s n’est pas un paramètre %s valide. Il doit être %s. Le champ Config de la table MsiServiceConfig ne contient pas de valeur autorisée.
Dans l’entrée de table MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], Actions=[3] n’est pas un paramètre valide. Il doit s'agir d'une liste d'entiers positifs séparés par des zéros. Le champ Actions de MsiServiceConfigFailureActions ne contient pas de tableau d’entiers positifs. Séparez les valeurs du tableau par [~].
Dans l’entrée de table MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], DelayActions=[4] n’est pas un paramètre valide. Il doit s'agir d'une liste d'entiers positifs séparés par des zéros. Le champ Actions de MsiServiceConfigFailureActions ne contient pas de tableau d’entiers positifs. Séparez les valeurs du tableau par [~].
Dans l’entrée de table MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], le nombre d’actions (=%d) n’est pas égal au nombre indiqué dans DelayActions (=%d). Ils doivent être égaux. Le nombre d’éléments dans les champs Actions et DelayActions de la table MsiServiceConfigFailureActions n’est pas le même. Le nombre d’éléments dans ces tableaux doit être le même.

 

ICE102 publie les avertissements suivants.

Avertissement ICE104 Description
Dans l’entrée de table MsiServiceConfig (MsiServiceConfig = )[1], le champ Argument est laissé vide. La valeur préshutdown utilisée par défaut sera 180000 Le délai est de 180 000 millisecondes, car le champ Argument de la table MsiServiceConfig est vide.
Dans l’entrée de table MsiServiceConfigFailureActions (MsiServiceConfigFailureActions = )[1], ResetPeriod est laissé vide. Il sera remplacé par INFINITE. Le nombre d’échecs n’est jamais réinitialisé, car le champ ResetPeriod du MsiServiceConfigFailureActions est vide.