Se você ler algo sobre como o sistema instalador do Windows funciona, é óbvio que eles aplicaram algumas idéias de bancos de dados transacionais para programar a instalação e manutenção, sem mencionar que os .msi
próprios arquivos são um banco de dados.
Sempre existe a pergunta no design de qualquer banco de dados - você quer velocidade ou precisão / segurança? Dado que os instaladores podem modificar a configuração do sistema e que um acidente pode tornar o sistema inoperante, a segurança recebe prioridade sobre a velocidade. Um dos motivos pelos quais os .msi
instaladores são tão lentos é porque os arquivos de reversão são criados para cada arquivo etc. que serão modificados e excluídos posteriormente - permitindo que as alterações sejam "revertidas" se algo der errado no meio das coisas ( como falta de energia ou falha no sistema).
Agora, acredito que o mecanismo MSI impõe a instalação, modificação ou remoção de apenas um programa por vez - se você tentar executar um .msi
enquanto outro está desinstalando, por exemplo, ele não será executado ou aguardará a desinstalação atualmente em execução terminar. Os instaladores não MSI podem não se comportar dessa maneira - pois eles não usam o mecanismo MSI. Mas, devido a essa decisão de design de segurança, é provavelmente por isso que appwiz.cpl
insiste apenas em permitir que um desinstalador seja chamado de uma só vez.
O CCleaner permite que você inicie desinstaladores sem esperar pela conclusão dos que estão sendo executados anteriormente. Os instaladores do MSI provavelmente ainda não funcionarão em paralelo devido ao acima.