Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 100
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Sham:
Сейчас добавляется в словарь по наличию подстроки "CN=Person" в objMember.objectCategory. Видимо, можно попробовать добавить дополнительную проверку к itemExists = False ещё and objMember.objectClass = "user". Проверить не могу. »
Сделал, получилось так

Код: Выделить весь код
Sub recursive(objUnit, objDict)
    itemExists = False
    For Each objMember in objUnit
        If InStr(1, objMember.objectCategory, "CN=Person", vbTextCompare) > 0 Then
            itemExists = objDict.Exists(objMember.sAMAccountName)
            If itemExists = False and objMember.objectClass = "user" Then
                               objDict.Add objMember.sAMAccountName, objMember.distinguishedName
            End If
        Else
            recursive objMember, objDict
        End If
    Next
End Sub
Получаю ошибку

Цитата:
Error getting Users container: 13 - Несоответствие типа
Наверно надо что-то еще тут менять

Код: Выделить весь код
' Bind to the Users folder in the domain.
Set objUsers = GetObject("LDAP://CN=Users," & objRootDSE.Get("defaultNamingContext"))
If (Err.Number <> 0) Then
    objShell.LogEvent 1, "Error getting Users container: " & Err.Number & " - " & Err.Description
    WScript.Quit
End If
или я неправильно добавил условие and objMember.objectClass = "user"

Отправлено: 21:42, 26-03-2022 | #7