Sto cercando di capire come Windows (XP attraverso 7) gestisce l'installazione e la disinstallazione dei file MSI. Sono venuto in situazioni in cui Windows Installer non è in grado di disinstallare perché manca il file MSI originale, il che mi porta a credere che memorizza da qualche parte una copia di tutti i pacchetti MSI installati. Dove?
Ho avuto un paio di teorie.
Si aspetta che risieda nella stessa cartella da cui è stato installato. Le chiavi del Registro di sistema
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
indicano la cartella di installazione originale e i messaggi di errore quando manca il file MSI indicano spesso questo. La rimozione del file MSI da questa cartella non ostacola il processo di disinstallazione, quindi ho rifiutato questa teoria.C:\Windows\Installer
. Questa cartella contiene in realtà un mucchio di file MSI apparentemente casuali. Ma questo elenco è incompleto. Trovo le voci nella chiave di registro menzionata in 1) che non ha una copia MSI in questa cartella.
Quindi come funziona? In che modo Windows Installer è in grado di disinstallare le applicazioni installate da MSI anche se MSI non è in 1) e non in 2)?