Freigeben über


ICE92

ICE92 verifiziert, dass eine Komponente ohne Komponenten-ID-GUID nicht auch als permanente Komponente angegeben ist. Diese benutzerdefinierte ICE-Aktion überprüft die Tabelle Component auf Komponenten ohne GUID, die im Feld ComponentId angegeben ist, und überprüft, ob das Flag msidbComponentAttributesPermanent im Feld Attributes nicht festgelegt wurde. ICE 92 überprüft auch, dass keine Komponente sowohl über das Attribut msidbComponentAttributesPermanent als auch das Attribut msidbComponentAttributesUninstallOnSupersedence verfügt.

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 meldet den folgenden Fehler.

ICE92-Fehler BESCHREIBUNG
Die Komponente '[1]' weist keine ComponentId auf und ist als permanent gekennzeichnet. Der Eintrag für diese Komponente in der Komponententabelle weist in der Spalte ComponentId NULL auf und weist msidbComponentAttributesPermanent in der Spalte Attribute auf.

 

ICE92 gibt die folgende Warnung aus.

ICE92-Warnung BESCHREIBUNG
Die Komponente '[1]' ist als permanent und uninstall-on-supersedence gekennzeichnet. Das uninstall-on-supersedence-Attribut wird ignoriert, da die Komponente dauerhaft ist. Für den Eintrag für diese Komponente in der Tabelle Component sind sowohl die Attribute msidbComponentAttributesPermanent als auchmsidbComponentAttributesUninstallOnSupersedence angegeben.

 

Beispiel

ICE92 meldet beispielsweise den folgenden Fehler:

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

Komponententabelle (teilweise)

Komponente ComponentId Directory_ Attribute KeyPath
Komponente1   DirectoryA 16 FileA

 

ICE-Referenz