卸载不会删除注册表项
我创建了两个具有不同产品代码和版本的MSI(mypkg1.0.0和mypkg2.0.0)。两个MSI分别在安装期间创建下面的注册表项。创建注册表项的两个MSI的组件代码是相同的。 mypkg1.0.0 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\{companyname}\1.0 mypkg2.0.0 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\{companyname}\2.0 我已成功安装了两个MSI,并创建了以上注册表项。如果我卸载两个已安装的MSI中的任何一个,则不会删除相应的注册表项。仅针对上次卸载的MSI删除了注册表项。 场景:1 mypkg2.0.0卸载,HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node {companyname} \ 2.0 =>没有删除 mypkg1.0.0卸载,HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node {companyname} \ 1.0 =>删除 场景:2 mypkg1.0.0卸载,HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node {companyname} \ 1.0 =>没有删除 mypkg2.0.0卸载,HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node {companyname} \ 2.0 =>删除 如果安装了两个软件包,为什么不删除注册表项。虽然产品代码和版本不同,我们是否需要更改组件代码?