Ok Shawn, I need some help. Since you didn't like the Perl version, I translated it into something you can read, but the program dies when the a filter is applied. What maistake did I make.
code:
break on
EnumOUsForComputers("LDAP://us-tyco-e/OU=NCS, OU=Machines, DC=us,DC=tycoelectronics, DC=com", "computer");
Function EnumOUsForComputers($LDAP, $Filter)
;$Filter = 'computer' | 'user'
dim $pos
$objOU = GetObject($LDAP);
"LDAP string='$LDAP'" ? ?
if VarTypeName($objOU)='Object'
$objOU.Filter = $Filter,""
for each $item in $objOU
$Name = $item.get("Name")
"@error @Serror $Name"
substr($Name,4,instr($Name,"/")-1) ?
next
$objOU.Filter = "organizationalUnit",""
"@error @serror"
for each $item in $objOU
? "In OU loop"
$pos = instr($LDAP,OU=)
$DN = Left($LDAP,$pos-1) + $Name + ", " + substr($LDAP, $pos)
? $DN
EnumOUsForComputers($DN);
next
else
"GetObject COM error: " + @error + " " + @serror
endif
Endfunction
[ 13 June 2002, 16:20: Message edited by: Howard Bullock ]