登录脚本,用于从 AD 中提取用户电话号码,然后在 HKCU 中使用该值创建注册表项



我正在尝试创建一个登录脚本,该脚本从活动目录中提取登录用户的电话分机,然后我想获取该变量并使用它来在HKCU\software\中使用该分机号创建一个注册表字符串值。

我可以创建注册表项,并从 AD 中提取数据,但我对如何将信息从 AD 传递到我的注册表项感到困惑。

示例扩展是 1234,我想创建一个注册表值 HKCUsoftwareshoreline teleworksshoreware clientAgentID, "1234"

感谢您的任何帮助!

脚本 1

Dim objSysInfo, objUser
Set objSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
set strtelno = objuser.telephonenumber ' Currently logged in User

脚本 2

Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set objRegistry = GetObject("winmgmts:\" & strComputer & "rootdefault:StdRegProv")
strKeyPath = "SOFTWAREshoreline teleworksshoreware client"
KeyPath = "SOFTWAREshoreline teleworksshoreware client"
strValueName = "AgentID"
strValue = "1234"
objRegistry.CreateKey HKEY_CURRENT_USER, strKeyPath, strvaluename, strvalue

从外观上看,你非常接近。尝试(未经测试的代码):

Dim objSysInfo, objUser
Set objSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
set strtelno = objuser.telephonenumber ' Currently logged in User
Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set objRegistry = GetObject("winmgmts:\" & strComputer & "rootdefault:StdRegProv")
strKeyPath = "SOFTWAREshoreline teleworksshoreware client"
KeyPath = "SOFTWAREshoreline teleworksshoreware client"
strValueName = "AgentID"
strValue = strtelno ' <-- This sets the Telephone Number
objRegistry.CreateKey HKEY_CURRENT_USER, strKeyPath, strvaluename, strvalue

最新更新