2012-04-12 10 views
6

Sto scrivendo un programma di installazione basato su Wix che deve essere aggiornato da vecchie installazioni non basate su msi. Sto trovando istanze di componenti precedentemente installati cercando direttamente nel registro.Dove sono tutte le posizioni possibili delle voci del Registro di sistema UninstallString?

Per trovare il programma di disinstallazione di un componente, mi guardo

HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\MyProgram 

e ottenere il valore UninstallString. Questo va bene, ma mi sono reso conto che per un po '32 installare su un computer a 64 bit, la voce è in realtà a

HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\MyProgram 

C'è nessun altro posto che dovrei essere alla ricerca?

risposta

5

C'è una terza voce:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall 
2

Ho controllato questo, e queste sono le uniche due posizioni. Il secondo è utilizzato per memorizzare programmi a 32 bit su una versione a 64 bit di Windows. Non ci sono altri casi che devono essere controllati.