我在注册表中添加了一个注册表项值,并且我想在卸载时修改该注册表项值,但我不想从注册表中删除该值。如何在不删除注册表中的密钥的情况下在卸载时修改注册表项值?
1)我试图用自定义操作执行卸载来修改注册表值。但是注册表值在卸载时从注册表中删除。
2)如果我使组件变得透明,那么它不会修改卸载时的键值。
<Component Id="SampleRegComp"
Guid="3865FE52-F8EE-4E29-B321-BDF0FD6D3F58"
Permanent="yes">
<RegistryKey Action="create"
Key="SOFTWARE\Microsoft\Notepad"
Root="HKCU">
<RegistryValue Name="StatusBar" Type="integer" Value="1" />
</RegistryKey>
</Component>
<CustomAction
Id="ModifyOutlookRegInitSign_12"
Return="ignore"
Directory="TARGETDIR"
ExeCommand= ""[SystemFolder]reg.exe" ADD "HKCU\SOFTWARE\Microsoft\Notepad" /v StatusBar /t integer /d 0 /f" >
</CustomAction>
安装
我放置了空组件guid,但卸载后注册表项'StatusBar'的值仍为'1'。在自定义操作中,我试图在卸载时将其更改为'0',但它不会修改。 – 123r789
是的,我发现我犯了什么错误。在我的自定义操作中,我将整型而不是REG_DWORD放在类型中。 – 123r789