ICE 100

ICE100 checks the authoring of the MsiEmbeddedUI table and the MsiEmbeddedChainer table.

Result

ICE100 posts the following errors.

ICE100 error Description
Too many DLLs marked as UI: [1] The Attributes column of the MsiEmbeddedUI table contains too many DLLs marked as a user interface DLL. Only one DLL should be marked as a user interface DLL.
UI DLL cannot have null/zero message filter: [1] A DLL marked as a user interface DLL in the Attributes column of the MsiEmbeddedUI table has null in the MessageFilter field. If a row references a user interface DLL, the value in MessageFilter field should not be null.
Resource DLLs must have null/zero message filters: [1] A DLL not marked as a user interface DLL in the MsiEmbeddedUI table must have null in the MessageFilter field. This field should be null if a row references a resource file and the value of Attributes is null.
Multiple DLLs marked with this filename: [2] (index: [1]) Multiple DLLs in the MsiEmbeddedUI table have the same file name. The FileName column should not contain duplicate names.

 

ICE100 posts the following warning.

ICE100 warning Description
Multiple chainers exist in MsiEmbeddedChainer table. Please ensure that only one is conditioned to run. There are multiple entries in the MsiEmbeddedChainer table. Only one embedded chainer can be launched. If multiple entries are both conditioned to run, it is undefined which entry will run. If the user is sure that only one entry's condition can resolve to true, this warning can be ignored.

 

ICE Reference

Directory Table