I've made a simple function to determine what groups a user is in. It works
well. Like so:
============================================================
Private Sub showUserGroups(username as string)
Dim usr As ActiveDs.IADsUser
Dim mems As ActiveDs.IADsMembers
Dim m As ActiveDs.IADs
Set usr = GetObject(adsPath(username))
Set mems = usr.Groups
For Each m In mems
Debug.Print m.Class, m.Name
Next m
End Sub
Public Function adsPath(sName As String) As String
Dim conn As New ADODB.Connection
Dim rs As ADODB.Recordset
Dim oRoot As IADs
Dim oDomain As IADs
Dim sBase As String
Dim sFilter As String
Dim sDomain As String
Dim sAttribs As String
Dim sDepth As String
Dim sQuery As String
Dim sAns As String
Set oRoot = GetObject("LDAP://rootDSE")
sDomain = oRoot.Get("defaultNamingContext")
Set oDomain = GetObject("LDAP://" & sDomain)
sBase = "<" & oDomain.adsPath & ">"
sFilter = "(&(name=" & sName & "))"
sAttribs = "adsPath"
sDepth = "subTree"
sQuery = sBase & ";" & sFilter & ";" & sAttribs & ";" & sDepth
conn.Open "Data Source=Active Directory Provider;Provider=ADsDSOObject"
Set rs = conn.Execute(sQuery)
If rs.EOF Then Err.Raise 513, "adsPath", "Can't find """ & sName & """ in
Active Directory."
adsPath = rs("adsPath")
End Function
============================================================
How do I make something similar for groups? I want to find all groups that a
group is nested in.
Any help would be appreciated.
Tec