NetUserChangePassword

The NetUserChangePassword function changes a user's password for a specified network server or domain.

Security Requirements

A server or domain can be configured to require a user to log on before changing the password on a user account. In that case, only members of the Administrators or Account Operators local group or the user himself can change the password for a user account. If logging on is not required, the user can change the password for any user account, as long as the user knows the current password.

NET_API_STATUS NetUserChangePassword(
  LPWSTR domainname,  
  LPWSTR username,    
  LPWSTR oldpassword, 
  LPWSTR newpassword  
);
 

Parameters

domainname
Pointer to a null-terminated Unicode string that specifies the name of a remote server or domain. The NetUserChangePassword function changes the user's password on that remote server or domain.

A value of NULL in the domainname parameter specifies the logon domain of the caller.

username
Pointer to a null-terminated Unicode string that specifies a user name. The NetUserChangePassword function changes the password for that user.

A value of NULL in the username parameter specifies the logon user name of the caller.

oldpassword
Pointer to a null-terminated Unicode string that specifies the user's old password on the server or domain.
newpassword
Pointer to a null-terminated Unicode string that specifies the user's new password on the server or domain.

Return Values

If the function is successful, it returns account information and the return value is NERR_Success.

If the function fails, the return value is one of the following error codes.

Value Meaning
ERROR_ACCESS_DENIED The user does not have access to the requested information.
ERROR_INVALID_PASSWORD The user has entered an invalid password.
NERR_InvalidComputer The computer name is invalid.
NERR_NotPrimary The operation is allowed only on the primary domain controller of the domain.
NERR_UserNotFound The user name could not be found.
NERR_PasswordTooShort The password is shorter than required. The password could also have been too long, too recent in its change history, not enough unique characters, or some other faulty indication of password restrictions.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Unsupported.
  Windows CE: Unsupported.
  Header: Declared in lmaccess.h.
  Import Library: Use netapi32.lib.

See Also

Networking (Net) Overview, Net Functions, NetUserSetInfo