Dela via


ICE92

ICE92 verifierar att en komponent utan ett komponent-ID-GUID inte också anges som en permanent komponent. Den här anpassade ICE-åtgärden kontrollerar -komponenttabellen efter komponenter utan GUID- som anges i fältet ComponentId och verifierar att flaggan msidbComponentAttributesPermanent inte har angetts i fältet Attribut. ICE92 verifierar också att ingen komponent har både msidbComponentAttributesPermanent och msidbComponentAttributesUninstallOnSupersedence attribut.

Om kolumnen ComponentId är null registrerar installationsprogrammet inte komponenten och komponenten kan inte tas bort eller repareras av installationsprogrammet.

Resultat

ICE92 publicerar följande fel.

ICE92-fel Beskrivning
Komponenten [1] har inget ComponentId och är markerad som permanent. Posten för den här komponenten i tabellen Komponent har null i kolumnen ComponentId och har msidbComponentAttributesPermanent i kolumnen Attribut.

 

ICE92 publicerar följande varning.

ICE92-varning Beskrivning
Komponenten [1] är markerad som permanent och avinstallera på ersättande. Attributet uninstall-on-supersedence ignoreras eftersom komponenten är permanent. Posten för den här komponenten i tabellen Component har både msidbComponentAttributesPermanent och msidbComponentAttributesUninstallOnSupersedence angivna attribut.

 

Exempel

ICE92 rapporterar följande fel i exemplet:

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

komponenttabell (delvis)

Komponent ComponentId Katalog_ Attribut KeyPath
Komponent1   KatalogA 16 FileA

 

ICE-referens