ICE38
ICE38 valida que cada componente que está sendo instalado sob o perfil do usuário atual também especifica uma chave do Registro sob a raiz HKEY_CURRENT_USER na coluna KeyPath da tabela Component.
Resultado
ICE38 posta um erro se um componente instalado sob o perfil do usuário não especificar uma chave de registro HKCU.
Exemplo
O ICE38 relata os seguintes erros para a amostra mostrada.
Erro ICE38 | Descrição |
---|---|
O componente Component1 é instalado no perfil do usuário. Ele deve usar uma chave do Registro em HKCU como seu KeyPath, não um arquivo. | O valor da coluna de atributos de Component1 é 0, o que significa que o componente deve usar um arquivo como seu KeyPath. Isso causa dificuldades quando vários usuários instalam o componente no mesmo computador. Para corrigir esse erro no Component1, defina o bit RegistryKeyPath na coluna Atributos da tabela Componente e altere a entrada na coluna KeyPath para um valor listado na coluna Registro da tabela Registro. |
O componente Component2 é instalado no perfil do usuário. Ele deve usar uma chave do Registro em HKCU como seu KeyPath. O KeyPath é atualmente NULL. | Component2 tem o bit RegistryKeyPath definido na coluna Atributos da tabela Componente . O campo KeyPath deve, portanto, conter uma chave para a coluna Registro da Tabela do Registro mas a coluna KeyPath é Nulo. Para corrigir esse erro, altere o valor KeyPath para uma entrada válida na tabela do Registro. |
O componente Component3 é instalado no perfil do usuário. É KeyPath chave de registro deve cair sob HKCU. | O Component3 tem o bit RegistryKeyPath definido na coluna Atributos da tabela Componente mas a raiz da entrada do Registro especificada na coluna Raiz da tabela Registro especifica HKEY_LOCAL_MACHINE em vez de HKEY_CURRENT_USER. Para corrigir esse erro, use uma entrada de registro válida em HKEY_LOCAL_MACHINE como o KeyPath para este componente ou altere o valor na coluna raiz da tabela Registro para -1 ou 1. |
A entrada do Registro KeyPath para o componente Component4 não existe. | O Component4 tem o bit RegistryKeyPath definido na coluna Atributos da tabela Componente mas a entrada na coluna KeyPath não existe na Tabela do Registro . Para corrigir esse erro, adicione uma entrada para Reg4 à tabela do Registro que é um em HKEY_CURRENT_USER. |
A entrada do Registro Reg5 é definida como o KeyPath para o componente Component5, mas essa entrada do Registro não pertence ao Component5. | A entrada do Registro referenciada na coluna KeyPath do componente foi encontrada e fica sob a árvore HKCU, mas a coluna Component_ da entrada do Registro não se refere ao mesmo componente que o listou como KeyPath. Isso significa que a entrada do Registro usada como KeyPath do componente só seria criada quando algum outro componente fosse instalado. Para corrigir esse erro, altere o valor KeyPath para se referir a uma entrada do Registro que pertence ao componente ou altere a entrada do Registro para pertencer ao componente usando-o como um KeyPath. |
Directory Table (parcial)
Diretório | Directory_Parent | DefaultDir |
---|---|---|
Dir1 | StartMenuFolder | |
Dir2 | Pasta da área de trabalho | |
Dir3 | Dir3 | AppData |
Dir4 | Dir3 | SubDir |
Tabela de componentes (parcial)
Componente | Directory_ | Atributos | Caminho-chave |
---|---|---|---|
Componente1 | Dir1 | 0 | Ficheiro1 |
Componente2 | Dir2 | 4 | |
Componente3 | Dir3 | 4 | Reg3 |
Componente4 | Dir4 | 4 | Reg4 |
Componente5 | Dir5 | 4 | Reg5 |
Tabela de Registo (parcial)
Registo | Raiz | Valor | Component_ |
---|---|---|---|
Reg3 | 2 | Componente3 | |
Reg5 | 0 | Componente4 |
Tópicos relacionados