Take a look at this. The code has been tested using a "Domain Local" group on my W2K active Directory domain and verified via "Active Directory Users and Computers".

The input parameters have been tested using the NetBIOS domain name and the NT4 samaccountname. This UDF will work with users, computers, and groups. It will not work with OUs as they do not have an equivelent NT4 name (sAMAccountName property).

Code:
Function RenameADobject ($Domain, $OldSamName, $NewSamName)

Dim $DN, $NameTranslate, $oDN, $rc
$NameTranslate = CREATEOBJECT ("NameTranslate")
if @Error = 0
$NameTranslate.Init (1, $Domain)
if @Error = 0
$NameTranslate.Set (3, $Domain + "\" + $OldSamName)
if @Error = 0
$DN = $NameTranslate.Get(1)
if @Error <> 0
;Writelog("RenameADobject: NameTranslate Get error " + @error + " " + @serror)
Exit @error
endif
else
;Writelog("RenameADobject: NameTranslate Set error " + @error + " " + @serror)
Exit @error
endif
else
;Writelog("RenameADobject: Init NameTranslate error " + @error + " " + @serror)
Exit @error
endif
else
;Writelog("RenameADobject: NameTranslate CreateObject error " + @error + " " + @serror)
Exit @error
endif

$oDN = GetObject("LDAP://$Domain/" + $DN)
$Parent = $oDN.Parent
$oDN.sAMAccountName = $NewSamName
$oDN.SetInfo
if @Error <> 0
Exit @error
endif

$oParent = GetObject($Parent)
$oDN = $oParent.MoveHere("LDAP://" + $DN, "CN=" + $NewSamName)
Exit @error
Endfunction

_________________________
Home page: http://www.kixhelp.com/hb/