Listar usuarios en el grupo de anuncios de forma recursiva con script de PowerShell sin CmdLets

Estoy tratando de enumerar a todos los miembros de un grupo de seguridad en un directorio activo sin usar CmdLets en PowerShell. Lo extraño con mi script es que funciona si enumero todo el directorio, pero si trato de especificar con una consulta ldap lo que quiero que aparezca en la lista, no funciona. Sé que mi consulta ldap es correcta porque la he usado en otra vbs similar y funciona. Las líneas comentadas son donde he intentado poner en la consulta.

$strFilter = "(&(objectCategory=person)(objectClass=user))"
#$strFilter = "(&(objectCategory=person)(objectClass=user)(memberOf=CN=Common Name,OU=User Groups,...,DC=ad,DC=domain,DC=com))" #... is just left out part of query

#$objDomain = New-Object System.DirectoryServices.DirectoryEntry
$objDomain = New-Object System.DirectoryServices.DirectoryEntry("LDAP://CN=Common Name,OU=User Groups,...,DC=ad,DC=domain,DC=com") #... is just left out part of query

$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1000
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = "Subtree"

$colProplist = "name"
foreach ($i in $colPropList){$objSearcher.PropertiesToLoad.Add($i)}

$colResults = $objSearcher.FindAll()

foreach ($objResult in $colResults)
    {$objItem = $objResult.Properties; $objItem.name}

Respuestas a la pregunta(3)

Su respuesta a la pregunta