Próbuję dowiedzieć się, w jaki sposób system Windows (XP do 7) obsługuje instalowanie i odinstalowywanie plików MSI. Pojawiłem się w sytuacjach, w których Instalator Windows nie może odinstalować, ponieważ brakuje mu oryginalnego pliku MSI, co prowadzi mnie do przekonania, że gdzieś przechowuje kopię wszystkich zainstalowanych pakietów MSI. Gdzie?
Miałem kilka teorii.
Oczekuje, że znajdzie się w tym samym folderze, z którego został zainstalowany. Klucze rejestru w
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
nie wskazują oryginalny folder instalacyjny, a komunikaty o błędach, gdy brakuje pliku MSI, często wskazują na to. Usunięcie pliku MSI z tego folderu nie utrudnia jednak procesu odinstalowywania, więc odmówiłem przyjęcia tej teorii.C:\Windows\Installer
. Ten folder zawiera kilka pozornie losowo nazwanych plików MSI. Ale ta lista jest niekompletna. Znajduję wpisy w kluczu rejestru wymienionym w 1), który nie ma kopii MSI w tym folderze.
Jak to działa? W jaki sposób instalator Windows może odinstalować aplikacje zainstalowane w MSI, mimo że MSI nie ma w 1) ani w 2)?