我需要运行.REG在注销时向registry添加条目,但我们的GP环境会禁用registry。 我可以做到这一点,通过打开registry,运行脚本,然后再把它closures,但我希望有一个比这更优雅的解决scheme。
你有没有试过REG.EXE ?
REG.EXE允许您从命令行执行多个registry操作。 当您想要在不打开RegEdit的情况下快速进行更改时,这可能很有用,而且还允许您将registry操作embedded到login脚本和batch file中。
为什么不使用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
根据MS KB831787 阻止在Windows XP和Windows Server 2003中访问registry编辑工具的策略更改 ,即使在Windows XP / 2003中,如果更新GPO模板,也可以在静默模式下运行registry编辑器。
从KB831787,
新function可用于更改Microsoft Windows XP和Microsoft Windows Server 2003使用“防止访问registry编辑工具”策略的方式。 使用此function,您可以configurationregistry设置,以便您可以使用以下configuration之一:
- registry编辑器可以以交互模式或静默模式启动。
- registry编辑器只能在静默模式下启动(regedit / s) 。 这是在Windows 2000和Windows NT 4.0中应用“禁止访问registry编辑工具”策略时的默认行为。
- registry编辑器根本无法启动。 当应用“禁止访问registry编辑工具”策略时,这是Windows XP中的默认行为。