ICE92

ICE92 sprawdza, czy składnik bez identyfikatora GUID identyfikatora składnika nie jest również określony jako składnik stały. Ta niestandardowa akcja ICE sprawdza tabelę składników składników bez identyfikatora GUID określonego w polu ComponentId i sprawdza, czy flaga msidbComponentAttributesPermanent nie została ustawiona w polu Atrybuty. ICE92 sprawdza również, czy żaden składnik nie ma zarówno msidbComponentAttributesPermanent, jak i msidbComponentAttributesUninstallOnSupersedence atrybutów.

Jeśli kolumna ComponentId ma wartość null, instalator nie rejestruje składnika i nie można usunąć ani naprawić składnika przez instalatora.

Wynik

ICE92 publikuje następujący błąd.

Błąd ICE92 Opis
Składnik "[1]" nie ma identyfikatora ComponentId i jest oznaczony jako trwały. Wpis dla tego składnika w tabeli Component ma wartość null w kolumnie ComponentId i ma msidbComponentAttributesPermanent w kolumnie Atrybuty.

 

ICE92 publikuje następujące ostrzeżenie.

Ostrzeżenie ICE92 Opis
Składnik "[1]" jest oznaczony jako trwały i zastąpiony odinstalowywaniem. Atrybut uninstall-on-supersedence zostanie zignorowany, ponieważ składnik jest trwały. Wpis dla tego składnika w tabeli składników zawiera zarówno msidbComponentAttributesPermanent, jak i msidbComponentAttributesUninstallOnSupersed ence określone atrybuty.

 

Przykład

ICE92 zgłasza następujący błąd na przykład:

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

tabela składników (częściowa)

Składnik Identyfikator składnika Katalog_ Atrybuty KeyPath
Składnik1   KatalogA 16 FileA

 

dokumentacji ICE