ICE18
ICE18 valida se todos os diretórios vazios usados como um caminho de chave para um componente estão listados na tabela CreateFolder.
Se a coluna KeyPath da tabela Component for Null, significa que o diretório listado na coluna Directory_ é o caminho da chave para esse componente. Como as pastas criadas pelo instalador são excluídas quando ficam vazias, essa pasta deve ser listada na tabela CreateFolder para impedir que o instalador tente instalar todas as vezes.
Não torne o diretório SystemFolder o caminho da chave de um componente. Como essa pasta está presente em todos os sistemas operacionais, o instalador sempre detectará o caminho da chave mesmo que o componente não esteja presente. Nesse caso, o caminho da chave deve ser um arquivo, uma entrada do registro ou uma fonte de dados ODBC.
Ao executar uma validação, o ICE18 verifica primeiro se os seguintes itens são fatos:
- A coluna KeyPath da tabela Component contém um valor Null.
- Não há arquivos listados para o componente na tabela File.
- Não há arquivos para o componente listado na tabela RemoveFile e que o valor no DirProperty é o mesmo que na coluna Directory_ da tabela Component.
- Não há arquivos para o componente listado na tabela DuplicateFile e que o valor no DestFolder é o mesmo que na coluna Directory_ da tabela Component.
- Não há arquivos para o componente listado na tabela MoveFile e que o valor no DestFolder é o mesmo que na coluna Directory_ da tabela Component.
Se todos eles forem verdadeiros, o ICE18 validará que:
- A coluna Component_ da tabela CreateFolder tem o mesmo valor que a coluna Component da tabela Component.
- A coluna Directory_ da tabela CreateFolder tem o mesmo valor que a coluna Directory_ da tabela Component.
ICE18 postará uma mensagem de erro se o pacote de instalação especificar um diretório como o caminho de chave para o componente que não está listado na tabela CreateFolder.