Hi all,
been a while since I wrote any kind of code,
but recently we are required to check differences between 3 groups,
these should be identical, but since this is managed by the client of the application itself it most of the time isn't (who would suspect that)
to compare the groups we used a tool, but this is an irritating work around,
so I tried to write a small piece of code that just needs to run and will throw back an txt file with the differences.
Below is the part I use to get all the members out of the groups,
but I stumble upon a problem:
all 3 groups contains well over 3000 members,
by using the code below I get 3 arrays, all 3 are capped at 1500 entries.
I can't pinpoint the reason why they are capped so I was hoping someone could tell me where it goes wrong and point me in the correct direction to avoid this issue
#include <Array.au3>
$array_Group1 = GetMembersInGroup("LDAP://CN=Group1,OU=Organisations,DC=example,DC=com")
$array_Group2 = GetMembersInGroup("LDAP://CN=Group2,OU=Organisations,DC=example,DC=com")
$array_Group3 = GetMembersInGroup("LDAP://CN=Group3,OU=Organisations,DC=example,DC=com")
Func GetMembersInGroup($LDAP)
MsgBox(0,"",$LDAP)
Local $temp_array[0]
$objGroup = ObjGet($LDAP)
$objGroup.GetInfo
$arrMemberOf = $objGroup.GetEx("member")
For $strMember in $arrMemberOf
$array = stringsplit($strMember, ",")
$array2 = stringsplit($array[1],"=")
_ArrayAdd($temp_array,$array2[2])
Next
Return $temp_array
EndFunc
_ArrayDisplay($Group1)
_ArrayDisplay($Group2)
_ArrayDisplay($Group3)