在禁用 regedit 的登录脚本中运行 .REG 文件?

在禁用 regedit 的登录脚本中运行 .REG 文件?

我需要运行 .REG 来在注销时向注册表添加条目,但我们的 GP 环境禁用了 regedit。我可能可以通过打开 regedit、运行脚本,然后再将其关闭来实现这一点,但我希望有比这更优雅的解决方案。

答案1

你试过了吗注册表编辑器

REG.EXE 允许您从命令行执行许多注册表操作。当您想快速进行更改而不打开 RegEdit 时,这非常有用,它还允许您将注册表操作嵌入登录脚本和批处理文件中。

答案2

为什么不使用 WMI 脚本,而是使用 cscript.exe 运行。

' taken from
' http://www.activexperts.com/activmonitor/windowsmanagement/adminscripts/registry/


' computer name we want to modify ("." for local, "pcname" for remote pc, no "\\" needed)
strComputer = "."


' leave these constants
const HKEY_LOCAL_MACHINE = &H80000002
Set StdOut = WScript.StdOut

' connect to the registry on the specified computer
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ 
strComputer & "\root\default:StdRegProv")

StdOut.WriteLine "Changing Registry on " & strComputer


' registry key we want to modify 
strKeyPath = "SOFTWARE\MyCompany\"


' create a new key.
' strKeyPath = "SOFTWARE\MyCompany\New registry folder"
' oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath

' write a string value
strValueName = "String Value Name"
strValue = "string value"
oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue

' write a integer value
strValueName = "DWORD Value Name"
dwValue = 82
oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue

答案3

根据 MS KB831787防止访问注册表编辑工具策略更改在 Windows XP 和 Windows Server 2003 中如果您更新 GPO 模板,即使在 Windows XP/2003 上也以静默模式运行 regedit。

从 KB831787 开始,

有一项新功能可用于更改 Microsoft Windows XP 和 Microsoft Windows Server 2003 使用“阻止访问注册表编辑工具”策略的方式。使用此功能,您可以配置注册表设置,以便使用以下配置之一:

  • 注册表编辑器可以以交互模式或静默模式启动。
  • 注册表编辑器只能在静默模式下启动(regedit /s)。当应用“防止访问注册表编辑工具”策略时,这是 Windows 2000 和 Windows NT 4.0 中的默认行为。
  • 注册表编辑器根本无法启动。这是在应用“阻止访问注册表编辑工具”策略时 Windows XP 中的默认行为。

相关内容