Como exatamente os arquivos são removidos durante a desinstalação do MSI?

Gostaria de saber o que exatamente acontece com os arquivos / componentes instalados durante o procedimento de desinstalação.

Para o procedimento de instalação e atualização, existe documentação confiável no MSDN (consulteRegras de versão de arquivo eVersão padrão do arquivo, por exemplo).

De qualquer forma, não consegui encontrar uma documentação da lógica de remoção de desinstalação no MSDN ou na documentação do WiX.

Portanto, minha pergunta é simples: eu gostaria de saber quando exatamente um arquivo é removido do sistema (o que nem sempre é o caso - por exemplo, se umSharedDLLRefCount existe / permanece para esse arquivo).

O mais próximo que encontrei foi o seguinte MSDNligação, que dá alguns conselhos, mas basicamente diz: "Teste você mesmo". Isso não é satisfatório para mim, porque gostaria de saber se posso confiar em um comportamento - talvez atual - do MSI antes de enviar qualquer instalador que use esse comportamento para os clientes.

Estou procurando respostas confiáveis para as seguintes perguntas:

Sob quais circunstâncias - além de uma definição "permanente" explícita ou usandoSharedDllRefCount - um arquivo / componente sobreviverá a uma ação de desinstalação?

Se uma DLL tiver agora uma versão superior à do momento em que foi instalada (por causa de hot patching), ela será removida com segurança? Nota: Testei isso e a resposta atual é sim, mas preciso saber se esse é o comportamento esperado e se posso confiar nele.

questionAnswers(2)

yourAnswerToTheQuestion