В. Как подготовить список всех почтовых SMTP-адресов, имеющихся у пользователя?
О. Следующий сценарий составляет список всех SMTP-адресов пользователей. Необходимо изменить переменную strRootDomain.
'
Option ExplicitDim objCommand, objConnection, objChild, objUserConnection, strBase,
strFilter, strAttributes, strsn, strgivenname,strinitials
Dim objShell, lngBiasKey, k, PasswordExpiry, strRootDomain, email
Dim strQuery, objRecordset, strName, strCN' ********************* ИЗМЕНИТЕ ЭТИ ЗНАЧЕНИЯ НА КОРЕНЬ ОБЛАСТИ ПОИСКА ПОЛЬЗОВАТЕЛЕЙ ***********************************
strRootDomain="ou=users,dc=savilltech,dc=net"
'
***********************************************************************
******************************************************************Set objCommand = CreateObject("ADODB.Command")
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
objCommand.ActiveConnection = objConnection
strBase = ""strFilter =
"(&(objectCategory=person)(objectClass=user)(proxyaddresses=*)(!(userac
countcontrol:1.2.840.113556.1.4.803:=2)))"
strAttributes = "sAMAccountName,cn,distinguishedName,displayname"
strQuery = strBase & ";" & strFilter & ";" & strAttributes & ";subtree"
objCommand.CommandText = strQuery
objCommand.Properties("Page Size") = 100
objCommand.Properties("Timeout") = 30
objCommand.Properties("Cache Results") = False
Set objRecordSet = objCommand.ExecuteWScript.echo "Running at " & Date()
Do Until objRecordSet.EOF
strName = objRecordSet.Fields("sAMAccountName").ValueWscript.Echo "Display Name: " &
objRecordSet.Fields("displayname").ValueSet objUserConnection = GetObject("LDAP://" &
objRecordSet.Fields("distinguishedName").Value)
For each email in objUserConnection.proxyAddresses
If Left (email,5) = "SMTP:" Then
WScript.Echo "Primary e-mail address: " & Mid (email,6)
ElseIf Left (email,5) = "smtp:" Then
WScript.Echo "Seconary e-mail address: " & Mid (email,6)
End If
NextobjRecordSet.MoveNext
LoopobjConnection.Close
Формат вывода можно изменить по необходимости. Запустите Cscript listsmtp.vbs.