Partager via


ICE35

ICE35 valide que les composants contenant des fichiers compressés stockés dans un fichier d’armoire ne sont pas définis pour s’exécuter à partir de la source. Avec Windows Installer 2.0 ou version ultérieure, cette restriction a été supprimée.

ICE35 interroge la colonne Cabinet de la table Media pour déterminer quels fichiers sont compressés et stockés dans un fichier d’armoire. Il interroge la table Fichier pour déterminer quels composants contiennent ces fichiers. Enfin, elle vérifie la table composant pour déterminer si les bits d’exécution de source sont définis dans la colonne Attributs.

Résultat

ICE35 publie un message d’erreur s’il existe un fichier compressé stocké dans un fichier d’armoire appartenant à un composant avec le bit msidbComponentAttributesSourceOnly défini dans la colonne Attributs de la table composant . Avec Windows Installer 2.0 ou version ultérieure, il s’agit d’une erreur par un message d’avertissement. Un package qui prend uniquement en charge Windows Installer 2.0 et versions ultérieures a la propriété PID_PAGECOUNT du flux d’informations récapitulatives définie sur une valeur d’au moins 200.

ICE35 publie un message d’avertissement s’il existe un fichier compressé stocké dans un fichier d’armoire appartenant à un composant avec le bit msidbComponentAttributesOptional défini dans la colonne Attributs de la table composant . Ce message d’avertissement a été supprimé avec Windows Installer 2.0 et versions ultérieures.

Si plusieurs fichiers d’un composant se trouvent dans un fichier d’armoire, ICE35 signale des erreurs pour chaque fichier qui a l’exécution à partir du jeu de bits source.

Exemple

ICE35 signale les erreurs et avertissements suivants pour l’exemple illustré à l’aide d’une version antérieure à Windows Installer version 2.0.

Erreur ICE35 Description
ERREUR : Le composant Component3 ne peut pas être exécuté à partir de la source uniquement, car son fichier membre « File3 » est compressé. Il existe un fichier compressé stocké dans un fichier d’armoire et ce fichier appartient à un composant avec le bit SourceOnly défini dans la colonne Attributs de la table composant . Pour corriger cette erreur, remplacez les 2 bits inférieurs de la valeur Attributs de Component2 par « 00 », ce qui signifie Local uniquement ou supprimez File4 du fichier CAB.
ERREUR : Le composant Component3 ne peut pas être exécuté à partir de la source uniquement, car son fichier membre « File3 » est compressé. Il existe un fichier compressé stocké dans un fichier d’armoire et ce fichier appartient à un composant avec le bit SourceOnly défini dans la colonne Attributs de la table composant . Étant donné que les fichiers d’un composant ne doivent pas tous provenir du même média, ICE35 signale des erreurs pour chaque fichier du composant qui se trouve dans une armoire.
Pour corriger cette erreur, remplacez les 2 bits inférieurs de la valeur Attributs de Component2 par « 00 », ce qui signifie Local uniquement ou supprimez File4 du fichier CAB.

 

media Table (partielle)

DiskID LastSequence Cabinet
1 2  
2 4 One.cab
3 5 #Two.cab

 

table de fichiers (partielle)

Lime Composant_ Séquence
Fichier1 Component1 1
Fichier2 Composant2 2
Fichier3 Composant2 3
Fichier4 Component3 4
Fichier5 Component3 5

 

table de composants (partielle)

Composant Attributs
Component1 0
Composant2 2
Component3 1

 

table de raccourcis (partielle)

Raccourci Icône_
Raccourci1 Icône 2

 

Notez que les fichiers peuvent également être marqués comme compressés à l’aide du Word Count Summary Property of the Summary Information stream.

de référence ICE