ICE43
O ICE43 valida que os atalhos que não referenciam um recurso como destino (atalhos não anunciados) estão em componentes que têm uma entrada do Registro HKCU como caminho de chave.
Result
O ICE43 postará uma mensagem de erro se um atalho não anunciado estiver em um componente que não tenha uma entrada do Registro HKCU como o caminho de chave.
Exemplo
O ICE43 relatará os erros a seguir para o exemplo mostrado.
Erro do ICE43 | Descrição |
---|---|
O componente Component1 tem atalhos não anunciados. Ele precisa usar uma chave do Registro em HKCU como o KeyPath, não um arquivo. | A coluna de atributos de Component1 é 0, o que significa que o componente usa um arquivo como o KeyPath. Isso faz com que os atalhos não anunciados nesse componente sejam instalados SOMENTE para o primeiro usuário no computador. Os usuários que instalam o componente posteriormente não veem os atalhos, porque o componente aparece para o instalador como já existente no computador. Para corrigir esse erro, defina o bit RegistryKeyPath dos atributos para alternar o Component para uma entrada do Registro e, em seguida, altere o valor de KeyPath para uma entrada válida na tabela Registry. |
O componente Component2 tem atalhos não anunciados. Ele precisa usar uma chave do Registro em HKCU como o KeyPath. O KeyPath é atualmente nulo. | A coluna Attributes é definida para usar o Registro, mas o KeyPath é nulo. O KeyPath precisa se referir a uma entrada na tabela Registry. Para corrigir esse erro, altere o valor de KeyPath para uma entrada válida na tabela Registry. |
O componente Component3 tem atalhos não anunciados. A chave do Registro KeyPath precisa se enquadrar em HKCU. | A coluna Attributes é definida para usar o Registro, mas a entrada do Registro referenciada não está em HKCU. Para corrigir esse erro, alterne para uma entrada de Registro diferente como o KeyPath para esse componente ou altere o valor Root da entrada do Registro para -1 ou 1. |
A entrada do Registro KeyPath para o componente Component4 não existe. | A entrada do Registro referenciada na coluna KeyPath do componente não está na tabela Registry. Para corrigir esse erro, crie uma entrada. |
O Reg5 da entrada do Registro é definido como o KeyPath para o componente Component5, mas essa entrada do Registro não pertence ao Component5. | Há uma entrada do Registro referenciada na coluna KeyPath do componente que está abaixo da árvore HKCU, mas a coluna Component_ da entrada do Registro não referencia o mesmo componente que a listou como o KeyPath. Isso significa que a entrada do Registro usada como KeyPath do componente só será criada se algum outro componente tiver sido instalado. Para corrigir esse erro, altere o valor de KeyPath para que ele se refira a uma entrada do Registro que pertença ao componente ou altere a entrada do Registro para pertencer ao componente usando-o como um KeyPath. |
Tabela Component (parcial)
Componente | Atributos | KeyPath |
---|---|---|
Component1 | 0 | Arquivo1 |
Component2 | 4 | |
Component3 | 4 | Reg3 |
Component4 | 4 | Reg4 |
Component5 | 4 | Reg5 |
Tabela Registry (parcial)
Registro | Root | Valor | Component_ |
---|---|---|---|
Reg3 | 2 | Component3 | |
Reg5 | 0 | Component4 |
Tópicos relacionados