Si lees algo sobre cómo funciona el sistema instalador de Windows, es obvio que aplicaron algunas ideas de bases de datos transaccionales para la instalación y el mantenimiento del programa, sin mencionar que los .msi
archivos en sí son una base de datos.
Siempre existe la pregunta en el diseño de cualquier base de datos: ¿desea velocidad o precisión / seguridad? Dado que los instaladores pueden modificar la configuración del sistema y que un error podría hacer que el sistema no funcione, se le ha dado prioridad a la seguridad sobre la velocidad. Una de las razones por las cuales los .msi
instaladores son tan lentos es porque los archivos de reversión se crean para cada archivo, etc., que se modificarán y luego se eliminarán, lo que permite que los cambios se "reviertan" si algo sale mal en medio de las cosas ( como un corte de energía o un bloqueo del sistema).
Ahora, creo que el propio motor MSI exige la instalación, modificación o eliminación de un solo programa a la vez; si intenta ejecutarlo .msi
mientras otro desinstala, por ejemplo, no se ejecutará o esperará la desinstalación que se está ejecutando actualmente. para terminar. Los instaladores que no son MSI pueden no comportarse de esta manera, ya que no usan el motor MSI. Pero debido a esta decisión de diseño de seguridad, esta es probablemente la razón por la que appwiz.cpl
insiste en que solo se llame a un desinstalador a la vez.
CCleaner le permite iniciar desinstaladores sin esperar a que finalicen los que se estaban ejecutando anteriormente. Los instaladores de MSI probablemente todavía no funcionen en paralelo debido a lo anterior.