Partager via


ICE92

ICE92 vérifie qu’un composant sans GUID d’ID de composant n’est pas également spécifié en tant que composant permanent. Cette action personnalisée ICE vérifie la présence de composants dans la table de composants sans GUID spécifié dans le champ ComponentId et vérifie que l’indicateur msidbComponentAttributesPermanent n’a pas été défini dans le champ Attributs. ICE92 vérifie également qu’aucun composant n’a à la fois les attributs msidbComponentAttributesPermanent et msidbComponentAttributesUninstallOnSupersedence.

Si la colonne ComponentId a la valeur Null, le programme d’installation n’inscrit pas le composant et le composant ne peut pas être supprimé ou réparé par le programme d’installation.

Résultats

ICE92 publie l’erreur suivante.

Erreur ICE92 Description
Le composant « [1] » n’a aucun ComponentId et est marqué comme permanent. L’entrée de ce composant dans la table Component a Null dans la colonne ComponentId et a msidbComponentAttributesPermanent dans la colonne Attributes.

 

ICE92 publie l’avertissement suivant.

Avertissement ICE92 Description
Le composant « [1] » est marqué comme permanent et désinstallé lors du remplacement. L’attribut uninstall-on-supersedence sera ignoré, car le composant est permanent. L’entrée de ce composant dans la table Component a à la fois les attributs msidbComponentAttributesPermanent et msidbComponentAttributesUninstallOnSupersedence spécifiés.

 

Exemple

ICE92 signale l’erreur suivante pour l’exemple :

The Component 'Component1' has no ComponentId and is marked as permanent.

Table Composant (partielle)

Composant ComponentId Directory_ Attributs KeyPath
Component1   DirectoryA 16 FileA

 

Référence ICE