Registry-Wert für alle User aktualisierenHKEY_USERS umgeht HKEY_LOCAL
Wie lässt sich ein Registry-Wert für alle Anwender eines Rechners aktualisieren? Um den Wert für alle User in einem Aufwasch zu aktualisieren, ohne dafür auf HKEY-LOCAL– Rechte zurückgreifen zu müssen, verwenden Sie den HKEY_USERS-Befehl. Der folgende Code, den Sie unter dieser Adresse herunterladen können, ermittelt alle Anwender unter HKEY_USERS und setzt einen Binärwert:
const HKEY_USERS = &H80000003
Dim binValue()
strComputer = “.”
Set objReg=GetObject(“winmgmts:{impersonationLevel=impersonate}!\\” _
& strComputer & “\root\default:StdRegProv”)
strKeyPath = “”
objReg.EnumKey HKEY_USERS, strKeyPath, arrSubKeys
strKeyPath = “\Control Panel\PowerCfg\GlobalPowerPolicy”
strKeyPathUser = “\Software\Microsoft\Windows\CurrentVersion\Explorer”
For Each subkey In arrSubKeys
if objReg.GetBinaryValue(HKEY_USERS, subkey & strKeyPath, “Policies”, binValue) = 0 then
objReg.GetStringValue HKEY_USERS, subkey & strKeyPathUser, “Logon User Name”, userName
Wscript.Echo “Updating SID – ” & subkey & “, Username – ” & userName
binValue(51)=128
objReg.SetBinaryValue HKEY_USERS, subkey & strKeyPath, “Policies”, binValue
end if
Next