Hi,

Now I want to use the var it returns, but when I use it I get an errormsg: IDispatch pointers not allowed in expressions!

Here is the code:

FUNCTION mailbox($getou)
$mailbox=GETOBJECT("LDAP://$getou")
? "getobj @serror"
;? "Mailbox Information for $username:"
;? "User Information:"
;? "Display Name: " $mailbox.get("cn")
;? "Given Name: " $mailbox.get("givenname")
;? "Last Name: " $mailbox.get("sn")
;? "Alias: " $mailbox.get("uid")
;? "Mailbox Information:"
;? "Primary SMTP: " $mailbox.get("mail")
;? "X.400 Address: " $mailbox.get("textencodedoraddress")
;? "Home MTA: " $mailbox.get("home-mta")
;? "Home MDA: " $mailbox.get("home-mda")

ENDFUNCTION


function getOU($userName)
DIM $dn,$objRootDSE,$strDomain
DIM $objConnection,$objCommand
DIM $objRecordSet
$getOU = "Not Found"
$objRootDSE = GETOBJECT("LDAP://RootDSE")
$strDomain = $objRootDSE.Get("DefaultNamingContext")

$objConnection = CREATEOBJECT("ADODB.Connection")
$objConnection.Open ("Provider=ADsDSOObject;")
$objCommand = CREATEOBJECT("ADODB.Command")
$objCommand.ActiveConnection = $objConnection
$objCommand.CommandText =
"<LDAP://" + $strDomain + ">;((saMAccountName=" + $userName + "))" +
";distinguishedName,name;subtree"

$objRecordSet = $objCommand.Execute

WHILE Not $objRecordSet.EOF
$dn = $objRecordSet.Fields("distinguishedName").Value
$getOU = $dn
$objRecordSet.MoveNext
LOOP

mailbox($getou)

ENDFUNCTION


BREAK on

? "Enter username: " GETS $username

getOU($username)

Hope you can help me