我正在尝试将 Windows 桌面搜索设置为使用不同于系统默认过滤器 (nlhtml.dll) 的 html 过滤器。当我查找 PersistentHandler ( HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.html\PersistentHandler
) 时,它指向 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{eec97550-47a9-11cf-b952-00aa0051fe20}
.
我想改变上面clsid的值。以下是 WiX 片段
<?define PersistentHandler_HtmlIFilter="eec97550-47a9-11cf-b952-00aa0051fe20"?>
<RegistryValue Action="write" Root="HKLM" Key="SOFTWARE\Classes\CLSID\{$(var.PersistentHandler_HtmlIFilter)}" Value="MY HTML Persistent Handler" Type="string" />
但值没有改变。
关于许可; 只有 TrustedInstaller 可以完全控制此条目。 Administrator、SYSTEM等用户只有读取权限。
如何使用 WiX 获得更高的权限来更改此注册表。这是一个更大项目的一部分,我只编辑 WiX 脚本的一个片段 (<Fragment>.. </Fragment>
)。
谢谢。
最佳答案
你不能。仅限于 TrustedInstaller 的注册表键表示受 Windows Resource Protection 保护的键. Windows Installer 不会修改这些键。
关于windows - 如何在 WiX 片段中获得编辑注册表 CLSID 的提升权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9465652/