try changeing uid=@userid to cn=@FullName

or maybe even better try this code:

Code:

Global $UserdistinguishedName,$defaultNamingContext

$objRootDSE = GetObject("LDAP://rootDSE")
$defaultNamingContext = $objRootDSE.Get("defaultNamingContext")

GetUserdistinguishedName(@FULLNAME,@DOMAIN)

? "UserdistinguishedName: " + $UserdistinguishedName

$objOU = GetObject("LDAP://"+$UserdistinguishedName)
;? $objOU.Name
$objUser.GetInfo
$FirstName = $objUser.Get("givenName")
$LastName = $objUser.Get("sn")
$DisplayName = $objUser.Get("displayName")
$Title = $objUser.Get("title")

? $FirstName
? $LastName
? $DisplayName
? $Title

? "Done!"

Get $a

Function GetUserDistinguishedName($FullName,$Domain)

$ADS_UF_ACCOUNTDISABLE = 2

$ObjConnectION = CreateObject("ADODB.ConnectION")
$ObjConnectION.Open("PROVIDER=ADSDSOOBJECT;")
$ObjCOMMAND = CreateObject("ADODB.COMMAND")
$ObjCOMMAND.ActiveConnectION = $ObjConnectION
$ObjCOMMAND.COMMANDTEXT = "<GC://" + $defaultNamingContext + ">;(OBJECTCATEGORY=User);UserACCOUNTCONTROL,DistinguishedName;SUBTREE"
$ObjRecordset = $ObjCOMMAND.Execute
While Not $ObjRecordset.EOF
$POSITIVE = InStr($ObjRecordset.Fields("DistinguishedName"),"CN=" + $FullName)
If $POSITIVE <> 0
$ObjUser = GetObject("LDAP://" + $ObjRecordset.Fields("DistinguishedName"))
$ObjUser.GetInfo
$UserDistinguishedName = $ObjUser.Get("DistinguishedName")
EndIf
$ObjRecordset.MoveNext
Loop
$ObjConnectION.Close

EndFunction




Edited by benny69 (2006-08-03 05:07 AM)