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?
ICE83

What does ICE83 check?

ICE83 validates the MsiAssembly table.

Note: The MsiAssembly table specifies Windows Installer settings for Microsoft .NET Framework assemblies and Win32 assemblies. If there is at least one entry in the MsiAssembly table, the InstallExecuteSequence table must contain the MsiPublishAssemblies action and MsiUnpublishAssemblies action.

This ICE custom action posts an error if the key path for a component containing a Win32 assembly is set to the manifest file. Explicitly the error is posted if the value entered in the KeyPath field of the Component table equals the value entered in the File_Manifest field of the MsiAssembly table. This ICE custom action posts an error if there is at least one record in the MsiAssembly table and the InstallExecuteSequence table does not contain both the MsiPublishAssemblies Action and MsiUnpublishAssemblies Action.

When does ICE83 show up?

  • ICE83 posts an error when the KeyPath field for a Win32 Assembly is set to its manifest file.
  • ICE83 posts an error when there is at least one entry in the MsiAssembly table but the InstallExecuteSequence table does not contain both the MsiAssemblyPublish action and the MsiAssemblyUnpublish action.

How can I fix ICE83?

  • For a Win32 assembly, do not specify a manifest file as the component's key path file in the KeyPath field of the Component table.
  • If there is at least one entry in the MsiAssembly table, make sure that the InstallExecuteSequence table contains the MsiPublishAssemblies action and MsiUnpublishAssemblies action.