在 OSDeploy 任务序列期间设置当前用户下的注册表项

在 OSDeploy 任务序列期间设置当前用户下的注册表项

我有 TS 在 HKEY_Local_Machine 中设置注册表项,没有问题。

我的问题是,我希望默认为 HKEY_Current_User 设置一个键。我希望取消选中 Internet 属性 LAN 设置中的“自动检测设置”,以便任何登录的用户都能够看到。

我认为正确的方法是

Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\DefaultConnectionSettings

但由于它位于当前用户中,我发现很难通过 OSDeploy TS 将其设置为默认设置。希望将其设置为默认设置,以便对所有机器进行无接触构建。

任何帮助,将不胜感激。

答案1

一般来说,这更多是通过 GPO 而不是 OSD 来控制的,但从技术上讲这没有问题。

您需要做的是修改默认用户配置文件,即所有未来配置文件的创建模板。最基本的方法(但绝不是最糟糕的方法)是使用内置工具 REG.EXE 首先加载默认用户配置文件,如下所示:

reg load "hku\Default" "C:\Users\Default\NTUSER.DAT" 

接下来修改您的密钥(应输入不带空格或分隔符的二进制数据作为 /d 参数):

reg add HKU\default\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections /v DefaultConnectionSettings /t REG_BINARY /d 460000... /f

最后卸载hive

reg unload "hku\Default"

这里最大的问题可能是您获得了一个难以管理的二进制密钥。

您可以通过使用 regedit 在正在运行的计算机上加载默认用户配置文件(位于同一位置 hku\default)来解决此问题。然后导航到您的路径,修改密钥并将其导出到 reg 文件中。然后您可以使用

reg import <path to regfile>

代替 reg add。

无论您认为哪种方法更好,请将这些步骤放入简单的 cmd 中,并在 osd 期间使用运行命令行运行。理论上,您甚至可以直接在参考图像中执行此操作,从而完全绕过在 OSD 期间执行此操作的需要。但我个人不建议这样做,因为这始终意味着此设置的更改是参考图像的完全重建。

相关内容