One thing that probably happens here is the attributes that you use
GetInfoEx to fetech might not be set on the object. So when you try to
retrieve it back, it is not in the cache, so ADSI probably did an implicit
GetInfo for you, so in turn you get the other attributes back. Could you
check whether it is the case? In this scenario, ADSI should not do an
implicit GetInfo if GetInfoEx call fails to get the attribute back, but this
issue should have been fixed in win2k sp3 and on XP. What OS are you running
on?
weiqing tu
This posting is provided "AS IS" with no warranties, and confers no rights.
> The members attribute of the group object is returned, and
> since we have nearly 20.000 users in our domain, some
> groups have thousands of members.
> This generates a lot of unnecessarily network traffic ..
> Audun
> >-----Original Message-----
> >GetInfoEx call should only return the attributes that you
> ask for. What are
> >the additional attributes that are returned back? Could
> you elaborate it?
> >weiqing tu
> >This posting is provided "AS IS" with no warranties, and
> confers no rights.
> >> The logonscript maps disks -etc. based on the info field
> >> of the group's that the user is a member of.
> >> (in that way I can change drive mappings for a group in
> >> AD - genius if you ask me :=)
> >> To keep the bandwith usage down I try to retrive only
> the
> >> spesific attributes I need for a group, but no success
> so
> >> far. I also get several other attributes back.
> >> Since we got 18.000 users in our domain, some of our
> >> groups have several hundred members.
> >> Added up for all groups a user is a member of, this is a
> >> lot of unnecessary network traffic 300 - 800 kb or more
> pr
> >> user at logon.
> >> Anyone ?
> >> Please notify me at:
> >> My latest code:
> >> Dim dso As IADsOpenDSObject
> >> Dim oGroup as IADS
> >> Set dso = GetObject("LDAP:")
> >> Set oGroup = dso.OpenDSObject(GroupAdsPath,
> vbNullString,
> >> vbNullString, ADS_SECURE_AUTHENTICATION Or
> ADS_FAST_BIND)
> >> oGroup.GetInfoEx Array
> >> ("Adspath", "Name", "memberof", "info"), 0
> >> sGroupMembersof = oGroup.memberof
> >> sInfo = oGroup.info
> >> sGroupAdspath = oGroup.ADsPath
> >> sGroup = oGroup.Name
> >.