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?
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).

Filter     Display # 
# Article Title Hits
1 ICE01 933
2 ICE02 723
3 ICE03 2206
4 ICE04 813
5 ICE05 828
6 ICE06 698
7 ICE07 724
8 ICE08 770
9 ICE09 1010
10 ICE10 685
11 ICE11 658
12 ICE12 665
13 ICE13 735
14 ICE14 714
15 ICE15 718
16 ICE16 760
17 ICE17 813
18 ICE18 851
19 ICE19 788
20 ICE20 844
21 ICE21 744
22 ICE22 667
23 ICE23 729
24 ICE24 702
25 ICE25 687
26 ICE26 687
27 ICE27 743
28 ICE28 698
29 ICE29 776
30 ICE30 853
31 ICE31 826
32 ICE32 694
33 ICE33 3003
34 ICE34 818
35 ICE35 670
36 ICE36 718
37 ICE38 1314
38 ICE39 742
39 ICE40 693
40 ICE41 650
41 ICE42 675
42 ICE43 1112
43 ICE44 750
44 ICE45 681
45 ICE46 693
46 ICE47 743
47 ICE48 849
48 ICE49 789
49 ICE50 715
50 ICE51 886
51 ICE52 654
52 ICE53 835
53 ICE54 697
54 ICE55 703
55 ICE56 1244
56 ICE57 786
57 ICE58 634
58 ICE59 688
59 ICE60 762
60 ICE61 893
61 ICE62 674
62 ICE63 704
63 ICE64 774
64 ICE65 656
65 ICE66 655
66 ICE67 703
67 ICE68 761
68 ICE69 906
69 ICE70 676
70 ICE71 761
71 ICE72 675
72 ICE73 808
73 ICE74 637
74 ICE75 678
75 ICE76 666
76 ICE77 856
77 ICE78 801
78 ICE79 778
79 ICE80 1118
80 ICE81 634
81 ICE82 777
82 ICE83 744
83 ICE84 684
84 ICE85 657
85 ICE86 673
86 ICE87 642
87 ICE88 689
88 ICE89 664
89 ICE90 1638
90 ICE91 1390
91 ICE92 671
92 ICE93 628
93 ICE94 635
94 ICE95 727
95 ICE96 669
96 ICE98 798
97 ICE99 904