Estoy tratando de descubrir cómo Windows (XP a través de 7) maneja la instalación y desinstalación de archivos MSI. He surgido en situaciones en las que Windows Installer no puede desinstalar porque le falta el archivo MSI original, lo que me lleva a creer que almacena una copia de todos los paquetes MSI instalados en algún lugar. ¿Dónde?
He tenido un par de teorías.
Espera que resida en la misma carpeta desde la que se instaló. Las claves de registro en
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
sí apuntan a la carpeta de instalación original, y los mensajes de error cuando falta el archivo MSI a menudo apuntan a esto. Sin embargo, eliminar el archivo MSI de esta carpeta no obstaculiza el proceso de desinstalación, por lo que he rechazado esta teoría.C:\Windows\Installer
. Esta carpeta en realidad contiene un montón de archivos MSI aparentemente aleatorios. Pero esta lista está incompleta. Sí encuentro entradas en la clave de registro mencionada en 1) que no tiene una copia MSI en esta carpeta.
Entonces, ¿cómo funciona esto? ¿Cómo puede el instalador de Windows desinstalar aplicaciones instaladas por MSI aunque MSI no esté en 1) y no en 2)?