in reply to changing passwords

You may want to look at the Win32::AdminMisc FAQ... Just an update, UserSetAttributes( $Server, $UserName, $UserFullName, $Password, $PasswordAge, $Privilege, $HomeDir, $Comment, $Flags, $ScriptPath ) is no longer used. According to the FAQ, the function is now obsolete. You probably want to update your code to use:
UserSetMiscAttributes( $Domain, $User, $Attribute, $Value[, $Attribute +, $Value]... ) This will set set particular account details for the user $User in dom +ain $Domain. If $Domain is null then the default domain will be assum +ed. $Attribute must be one of the valid account attributes and $Value + must be a valid attribute value. Example: Win32::AdminMisc::UserSetMiscAttributes('', 'cartman', USER_HOME_DIR => "c:\\users\\c +artman", USER_FULL_NAME => "Eric Cartma +n"); Returns: 0 if unsuccessful 1 if successful