Se você ler alguma coisa sobre como o sistema instalador do Windows funciona, é óbvio que eles aplicaram algumas ideias de bancos de dados transacionais para programar a instalação e manutenção, sem mencionar que os arquivos .msi
são um banco de dados.
Há sempre a questão em projetar 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 poderia deixar o sistema inoperável, a segurança recebeu prioridade sobre a velocidade. Uma das razões pelas quais .msi
instaladores são tão lentos é porque os arquivos de reversão são feitos para cada arquivo, etc. que serão modificados e depois excluídos depois - permitindo que quaisquer alterações sejam "revertidas" se algo der errado no meio de coisas (como falta de energia ou falha do sistema).
Agora, acredito que o próprio mecanismo MSI imponha 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 será Aguarde a conclusão da desinstalação em execução no momento. Os instaladores não-MSI podem não se comportar dessa maneira, pois não usam o mecanismo MSI. Mas, devido a essa decisão de design de segurança, provavelmente é por isso que appwiz.cpl
insiste em permitir que apenas um desinstalador seja chamado de uma só vez.
O CCleaner permite que você inicie desinstaladores sem esperar que os que estão sendo executados anteriormente terminem. Os instaladores da MSI provavelmente ainda não funcionarão em paralelo devido ao acima.