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

<xml/>

 
Plain XML based source scripts!
 
Free
 
Free, no strings attached!
 
Build Automation
 
Command-line interface for automated application build process!
 
Community
 
Thriving community support!
Why WiX?
ICE32

What does ICE32 check?

ICE32 validates that keys and foreign keys in the .msi file are of the same size and column definition types. This ICE custom action makes the comparison using the _Validation table and using the definition types that are returned by MsiViewGetColumnInfo.

When does ICE32 show up?

ICE32 posts errors if the .msi file contains any foreign keys to keys of a different column length or column data type.

How can I fix ICE32?

If the foreign key and key defined differ in size, you should change the data type length to match.

If there is a foreign key and key defined that differ in their definition types, the foreign key and key pairs must be defined so that their data types match.

Note: As long as you use a good MSI template to start with and do not manually add any extra custom tables to the database, you should never see any ICE32 errors.