ICE36
O ICE36 valida que cada ícone na tabela Icon é listado pelo menos uma vez na propriedade ARPPRODUCTICON ou nas tabelas Class, ProgId ou Shortcut.
Durante o anúncio, o instalador instala todos os ícones listados na tabela Icon no computador do usuário. Ter ícones não utilizados na tabela Icon não impede que a instalação seja executada, no entanto, aumenta desnecessariamente o tamanho do arquivo .msi e o tempo e o espaço necessários para anunciar um recurso.
Se um ícone não for referenciado na propriedade ou tabela e nenhuma interface do usuário for fornecida para criar uma referência no tempo de execução, você deverá remover o ícone para obter melhorar o desempenho.
O ICE36 postará uma mensagem se houver um ícone na tabela Icon que não seja referenciado nas tabelas Class, ProgId ou Shortcut e se nenhuma interface do usuário for fornecida para criar essa referência no tempo de execução.
O ICE36 relata o erro a seguir para o exemplo mostrado.
Icon Bloat. Icon Icon4 is not used in the Class, Shortcut, or ProgID table. This adversely affects performance.
Tabela Icon (parcial)
Nome | Dados |
---|---|
Icon1 | Control1 |
Icon2 | Control2 |
Icon3 | Control3 |
Icon4 | Control4 |
Tabela ProgID (parcial)
ProgID |
---|
Property1 |
Tabela Class (parcial)
CLSID |
---|
{3E469ABA-3644-11d2-8892-00A0C981B015} |
Tabela Shortcut (parcial)
Atalho | Icon_ |
---|---|
Shortcut1 | Icon2 |