我是wix新手,但我必须用它来做一个项目。我需要禁用用户更改密码的功能。为此,我想添加/更改注册表项,但这不起作用:

<DirectoryRef Id="TARGETDIR">
    <Component Id="RegistryEntries" Guid="*">
        <RegistryKey Root="HKCU"
                     Key="Software\Microsoft\Windows\CurrentVersion\Policies\System">
            <RegistryValue Type="integer" Name="DisablePW" Value="1" KeyPath="yes"/>
            <RegistryValue Type="string" Value="Default Value"/>
        </RegistryKey>
    </Component>
</DirectoryRef>

在策略下,还没有系统密钥,所以我假设这将创建一个系统密钥。

最佳答案

您永远不应该写入如此关键且受策略控制的Windows注册表项。
我猜域控制器将通过group policy还原这些设置:
…默认情况下,Microsoft Windows每隔90分钟刷新一次策略设置,并随机刷新30分钟的偏移量
当然,在登录脚本或其他一些管理功能期间,也可以重置一些内容。
这不是解决方案-您的应用程序需要重新设计。你到底为什么要禁用用户更改密码的功能?这是一个非常糟糕的做法来搅乱设置,如这些。任何低于Software\Microsoft\Windows\CurrentVersion\Policies\的东西都不应该被弄乱。

关于xml - 使用wix安装程序创建注册表项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26130989/

10-13 03:16