UPDATE :
O Windows Installer possui " auto-reparo " para aplicativos instalados. Em essência, isso significa que ele continuará verificando se os arquivos no disco e as configurações no registro correspondem ao que o respectivo pacote instalou originalmente. Essas verificações geralmente não são executadas para tudo o que o pacote instalou, mas para o que é chamado de "caminhos chave ".
Em situações em que você vê autorrecuperação sendo executado em ciclos , geralmente significa que algum processo no sistema ou outro MSI alterou as configurações no sistema que o pacote que posteriormente auto-repara também mudou. Como o cara disse, é como um umidificador e um desumidificador lutando na mesma sala - ou um cachorro perseguindo a própria cauda. Você não chega a lugar nenhum até que o conflito seja encontrado e eliminado. O arquivo MSI vai continuar "este é o meu recurso, estou mudando de volta" de novo e de novo.
O que é necessário é identificar o conflito que os arquivos MSI ou processos do sistema estão discutindo: link .
Existem também outros erros de design nos arquivos MSI que podem acionar o mesmo problema, como caminhos-chave configurados para caminhos codificados específicos do usuário: C: \ Documents and settings \ usuário1 \ Desktop . Este caminho não será encontrado para outro usuário que estiver efetuando logon e para os resultados de reparo automático. Outro exemplo são caminhos-chave definidos para pastas que não são graváveis para a conta do sistema. Outro exemplo ainda é um caminho de chave definido para um arquivo temporário (que o sistema excluirá eventualmente).
Como você pode ver, há muitos cenários, mas sempre o mesmo problema: um arquivo MSI verifica se a instalação atual está correta e encontra uma discrepância que, então, tenta corrigir.