Export (0) Print
Expand All

ICE36

ICE36 validates that every icon in the Icon table is listed at least once in the ARPPRODUCTICON property or the Class, ProgId, or Shortcut tables.

During advertisement, the installer installs all the icons listed in the Icon table on the user's computer. Having unused icons in the Icon table does not prevent the installation from running, however it does unnecessarily increase the size of the .msi file and the time and space required to advertise a feature.

If an icon is not referenced in the property or table and there is no UI provided to create a reference at run time, you should remove the icon to achieve better performance.

Result

ICE36 posts a message if there is a icon in the Icon table that is not referenced in the Class, ProgId, or Shortcut tables and if there is no UI provided to create such a reference at run time.

Example

ICE36 reports the following error for the example shown.

Icon Bloat. Icon Icon4 is not used in the Class, Shortcut, or ProgID table. This adversely affects performance.

Icon Table (partial)

NameData
Icon1Control1
Icon2Control2
Icon3Control3
Icon4Control4

 

ProgID Table (partial)

ProgID
Property1

 

Class Table (partial)

CLSID
{3E469ABA-3644-11d2-8892-00A0C981B015}

 

Shortcut Table (partial)

ShortcutIcon_
Shortcut1Icon2

 

Related topics

ICE Reference

 

 

Community Additions

ADD
Show:
© 2014 Microsoft