如何在用户 GUID 内创建注册表项?我需要通过 VBS 执行此操作,它将在 500 个用户上运行。
原始密钥,例如:
HKEY_CURRENT_USER\Identities\{GUID}\Software\Microsoft\Internet Account Manager\Accounts\00000006
我需要在键“00000006”旁边的“帐户”下创建一个键(00000099)。
答案1
您可以使用 wmi 注册表提供程序来处理事先不知道名称的注册表项
它有一个方法枚举键这将为您提供给定密钥的所有子密钥。您可以使用它来获取所有身份,如下所示:
Const HKCU = &H80000001 'HKEY_CURRENT_USER
Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\./root/default:StdRegProv")
sBaseKey = "Identities\"
iRC = oReg.EnumKey(HKCU, sBaseKey, aSubKeys)
For Each sKey In aSubKeys
Msgbox sKey
Next
只要你知道身份,你就可以用它来构建你需要的完整路径,并使用创建你的密钥创建密钥方法。你甚至可以使用正常注册表写入此时用于密钥创建的方法,但是由于您已经有了 StdRegProv 对象,所以我只会使用它。