Freigeben über


ICE92

ICE92 überprüft, ob eine Komponente ohne Komponenten-ID-GUID nicht auch als permanente Komponente angegeben ist. Diese benutzerdefinierte ICE-Aktion überprüft die Komponententabelle auf Komponenten ohne GUID im Feld "ComponentId" angegeben und überprüft, ob die msidbComponentAttributesPermanent Flag nicht im Feld "Attribute" festgelegt wurde. ICE92 überprüft außerdem, dass keine Komponente sowohl die msidbComponentAttributesPermanent als auch msidbComponentAttributesUninstallOnSupersedence-Attribute Attribute aufweist.

Wenn die Spalte "ComponentId" null ist, registriert das Installationsprogramm die Komponente nicht, und die Komponente kann nicht vom Installationsprogramm entfernt oder repariert werden.

Ergebnis

ICE92 sendet den folgenden Fehler.

ICE92-Fehler Beschreibung
Die Komponente "[1]" hat keine ComponentId und ist als dauerhaft markiert. Der Eintrag für diese Komponente in der Tabelle "Komponente" weist in der Spalte "ComponentId" null auf und weist msidbComponentAttributesPermanent in der Spalte "Attribute" auf.

 

ICE92 veröffentlicht die folgende Warnung.

ICE92-Warnung Beschreibung
Die Komponente "[1]" ist als permanente und deinstallierte Übersehrung gekennzeichnet. Das Attribut "uninstall-on-supersedence" wird ignoriert, da die Komponente dauerhaft ist. Der Eintrag für diese Komponente in der Component-Tabelle hat sowohl die msidbComponentAttributesPermanent als auch msidbComponentAttributesUninstallOnSupersedence Attribute angegeben.

 

Beispiel

ICE92 meldet den folgenden Fehler für das Beispiel:

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

Komponententabelle (teilweise)

Bestandteil ComponentId Verzeichnis_ Attribute KeyPath
Komponente1   DirectoryA 16 Filea

 

ICE Reference