我正在编写一个 C++ 代码,它使用 OpenLocalMachineGPO 添加一个注册表项来为其所有用户设置一个主题。OpenLocalMachineGPO 打开计算机的默认 GPO。
我打算通过 Powershell cmdlet 执行相同的操作,但我无法理解在上述 C++ 代码中获取机器默认 GPO 的方法。Get-GPO 似乎仅适用于域或站点上的组策略。我找不到设置本地组策略编辑器显示的本地计算机策略的方法。
我正在编写一个 C++ 代码,它使用 OpenLocalMachineGPO 添加一个注册表项来为其所有用户设置一个主题。OpenLocalMachineGPO 打开计算机的默认 GPO。
我打算通过 Powershell cmdlet 执行相同的操作,但我无法理解在上述 C++ 代码中获取机器默认 GPO 的方法。Get-GPO 似乎仅适用于域或站点上的组策略。我找不到设置本地组策略编辑器显示的本地计算机策略的方法。
我认为使用 PowerShell 的正确方法是访问注册表驱动器。您会在这里找到一种安装方式HKUSERS
,您可以找到.DEFAULT
适合您主题的地方。
PS C:\Users\JPB> $hkusers = New-PSDrive -Name HKUSERS -PSProvider Registry -Root Registry::HKEY_USERS
PS C:\Users\JPB> cd hkusers:
PS C:\Users\JPB> dir .DEFAULT
Hive: HKEY_USERS\.DEFAULT
SKC VC Name Property
--- -- ---- --------
9 0 Control Panel {}
0 2 Environment {TEMP, TMP}
4 0 EUDC {}
3 0 Keyboard Layout {}
4 0 Printers {}
9 0 Software {}
1 0 SYSTEM {}