ICE Validators

This validation suite contains a set of ICE validators that test if the Advanced Installer guidelines for package generation are infringed.

The following best practice rules are tested:

ICE NameDescriptionResolutionAutomatic Fix
AI_ICE01Tests whether the SelfReg table was authored in the MSI database. There are several drawbaks when using this method. For more details please see SelfReg table documentation in MSDN. It is recommended using the Registry. To fix it, go to the Files and Folders view and enable Extract registration info from native library option. To acces it, use the file's context menu and select the “Properties...” item.Yes
AI_ICE02Tests whether the TypeLib table was authored in the MSI database. There are several drawbacks when using this method. For more details please see TypeLib table documentation in MSDN. It is recommended using the Registry. To fix it, go to the Files and Folders view and enable Extract registration info from native library option. To acces it, use the file's context menu and select the “Properties...” item.Yes
AI_ICE03Tests whether VBScript or JScript custom actions are authored in the MSI database. Script custom actions are difficult to write, also debugging them is not an easy task. Some anti-virus programs may kill them.Use an executable file or dynamic-link library.No
AI_ICE04Tests whether nested install custom actions are authored in the MSI database. This Windows Installer feature is deprecated.Use Prerequistes or chained package instead.No
AI_ICE05Tests whether the custom actions authored in the Wizard Dialogs Stage is also present in Install Execution Stage. A custom action present only in UI will not be executed during an un-managed install (basic or no user interface).To fix it, go to the Custom Actions view and add the custom action under Install Execution StageYes
AI_ICE06Tests whether the properties associted with dialog controls are public. A non-public property will not be available durring the execute phase of the installation.To fix it, go to the Dialogs view, select the control, and in the Properties pane make the associated property public (app caps).Yes
AI_ICE07Tests whether the properties associted with dialog controls have a default value. The default value will be used durring an un-managed install (basic or no user interface).To fix it, go to the Dialogs view, select the control, and in the Properties pane edit the “Default Value” field.No