我使用wix 3.8构建安装程序。我有这样的自定义属性:
<Property Id="FOO" Value="1234" />
我用来设置自定义注册表值:
<RegistryKey Id='ID1' Root='HKLM' Key='Software\ACME\Bar' Action='create'>
...
<RegistryValue Type='binary' Name='FooBinary' Value='[FOO]'/>
...
一切正常但是当我卸载软件包时,FooBinary停留在注册表中。只有在我使用自定义属性时才会发生这种情况我做错了什么?
答案 0 :(得分:2)
Acording to documentation您可以将 ForceDeleteOnUninstall 属性值是添加到 RegistryKey 元素。
将此属性设置为“yes”以删除包含其所有值的键 卸载父组件时的子项。注意这个值 仅在程序创建其他值或子项时才有用 在此密钥下,您希望卸载以删除它们。 MSI已经 删除它创建的所有值和子键,所以这个选项就是 增加了卸载的额外开销。默认为“no”。