0
我需要将查询作为通配符发送到LDAP。我有以下代码:将VBScript LDAP查询导入数组
Function SearchLDAP(strUsrName)
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommand.CommandText = _
"SELECT cn FROM 'LDAP://DC=SYSTEL,DC=LOCAL' WHERE " _
& "objectCategory='user' AND cn = '" &strUsrName&"*'"
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF
'Wscript.Echo objRecordSet.Fields("cn").Value
Dim strReturnUser : strReturnUser = objRecordSet.Fields("cn").Value
objRecordSet.MoveNext
Loop
SearchLDAP = strReturnUser
End Function
如果我运行的msgbox SearchLDAP(“A”),这将显示只有最后进入一个消息。如果我取消注释“Wscript.Echo objRecordSet.Fields(”cn“)。Value”它将输出以控制所有条目。
我需要做的是将所有返回的值显示在如下消息框中:“User 1; User2; User3;”等等...不是单独的消息框,而是一个输出中的所有条目。
我需要运行一个命令,如“MSGBOX SearchLDAP(” A“)的功能,不具有‘在函数中MSGBOX’来做到这一点。什么意义?
我似乎无法弄清楚如果需要在一个数组,如果是的话,如何让项目进入1个阵列,我可以再输出。
感谢advnace!
太棒了!感谢你及时的答复。正是我需要的。 – user3320719