Windows Installer
Unrestricted access to Windows Installer functionality!
Open Source
Open source!


Plain XML based source scripts!
Free, no strings attached!
Build Automation
Command-line interface for automated application build process!
Thriving community support!
Why WiX?
Internal Consistency Evaluators (ICEs)
Internal consistency evaluators are simply custom actions written in VBScript, JScript, or as a DLL or EXE. When these custom actions are executed, they scan the database for entries in database records that are valid when examined individually but that may cause incorrect behavior in the context of the whole installation database.

ICE custom actions return four kinds of messages.

  • Errors: Error messages report database authoring that cause incorrect behavior. Errors may cause run-time problems for the installation database and/or the application which can be installed from the installation database. For example, using the same GUID for two components is not allowed and this will result in an ICE error during validation.
  • Warnings: Warning messages report database authoring that causes incorrect behavior in certain cases. Warnings can also report unexpected side-effects of database authoring. For example, entering the same property name in two conditions that differ only by the case of letters in the name. Because the installer is case-sensitive, the installer treats these as different properties.
  • Failures: Failure messages report the failure of the ICE custom action. Failure is commonly caused by a database with such severe problems that the ICE cannot even run.
  • Informational: Informational messages provide information from the ICE and do not indicate a problem with the database. Often they are information about the ICE itself, such as a brief description. They can also provide progress information as the ICE runs.

The mechanism to do a package validation is fairly simple. To validate a database, you will need to use a special validation tool to merge a .cub file (sometimes called ice cubes) containing the Internal Consistency Evaluators (ICEs) into your database, execute the ICEs, and report the results. You can use “MSI Validation Tool” that comes with MS Platform SDK or use third party utilities like “Wise Package Validation Wizard”.

Authors of installation packages can also write ICE custom actions or use the standard set of ICEs included in the .cub files provided with the SDK. A .CUB file is a special type of database that can also be opened by an MSI editing tool like ORCA (Orca comes with MS Platform SDK).

Title Filter     Display # 
# Article Title Hits
1 ICE01 3956
2 ICE02 3442
3 ICE03 12805
4 ICE04 3675
5 ICE05 3446
6 ICE06 3602
7 ICE07 3502
8 ICE08 3945
9 ICE09 5606
10 ICE10 3720
11 ICE11 2935
12 ICE12 3883
13 ICE13 3169
14 ICE14 3067
15 ICE15 3316
16 ICE16 3823
17 ICE17 4693
18 ICE18 4872
19 ICE19 4014
20 ICE20 4942
<< Start < Prev 1 2 3 4 5 Next > End >>
Page 1 of 5