NetUserSetInfo  0.C7E2 

The NetUserSetInfo function sets the parameters of a user account.

Security Requirements

Only members of the Administrators or Account Operators local group can successfully execute NetUserSetInfo on a remote server or on a computer that has local security enabled. A user may call NetUserSetInfo to set certain information on his or her own account.

NET_API_STATUS NetUserSetInfo(

    LPWSTR servername,

 

    LPWSTR username,

 

    DWORD level,

 

    LPBYTE buf,

 

    LPDWORD parm_err

 

   );

 

 

Parameters

servername

Pointer to a Unicode string containing the name of the remote server on which the function is to execute. A NULL pointer or string specifies the local computer.

username

Pointer to a Unicode string containing the name of the user account to set information.

level

Specifies one of the following values to set the level of information provided.

Value

Meaning

0

The buf parameter points to a USER_INFO_0ABGYP7 structure.

1

The buf parameter points to a USER_INFO_1A9GYP7 structure.

2

The buf parameter points to a USER_INFO_2A0GYP7 structure.

3

The buf parameter points to a USER_INFO_313DSY.G structure.

21

The buf parameter points to a USER_INFO_210UDZKE structure.

22

The buf parameter points to a USER_INFO_220VDZKE structure.

1003

The buf parameter points to a USER_INFO_1003IQE.JQ structure.

1005

The buf parameter points to a USER_INFO_1005ISE.JQ structure.

1006

The buf parameter points to a USER_INFO_1006ITE.JQ structure.

1007

The buf parameter points to a USER_INFO_1007IUE.JQ structure.

1008

The buf parameter points to a USER_INFO_1008IVE.JQ structure.

1009

The buf parameter points to a USER_INFO_1009IWE.JQ structure.

1010

The buf parameter points to a USER_INFO_1010136Q.76 structure.

1011

The buf parameter points to a USER_INFO_101112XQ.76 structure.

1012

The buf parameter points to a USER_INFO_101212YQ.76 structure.

1013

The buf parameter points to a USER_INFO_101312ZQ.76 structure.

1014

The buf parameter points to a USER_INFO_10145SFO8YP structure.

1017

The buf parameter points to a USER_INFO_1017133Q.76 structure.

1020

The buf parameter points to a USER_INFO_1020AXE.JQ structure.

1024

The buf parameter points to a USER_INFO_1024ARE.JQ structure.

1051

The buf parameter points to a USER_INFO_1051DOE.JQ structure.

1053

The buf parameter points to a USER_INFO_1053DQE.JQ structure.

 

buf

Pointer to the buffer in which the data set with the level parameter is stored. The returned buffer should be deallocated using the NetApiBufferFree1ARVKH1 function.

parm_err

Optional pointer to a DWORD that contains the index of the first parameter that causes ERROR_INVALID_PARAMETER. If NULL the parameter is not returned on error.

 

Remarks

The NetUserSetInfo function can be called to change a user's password only by users or applications having administrative privileges. However, the password can be changed by users or applications knowing the current password and calling NetUserChangePassword. When an administrator calls NetUserSetInfo, the only restriction applied is that the new password length must be consistent with system modals.

Members of the Administrators local group can set any modifiable element. All users can set the usri2_usr_comment, usri2_parms, and usri2_country_code, elements of the user_info_2 data structure for their own accounts. To do this, the user must use the ParmNum parameter and cannot pass the whole structure.

A member of the Account Operator's local group cannot set details for an Administrators class account, give an existing account Administrator privilege, or change the operator privilege of any account. If attempting to change the privilege level or disable the last account with Administrator privilege in the database, NetUserSetInfo fails and returns NERR_LastAdmin.

You can call NetUserSetInfo with USER_INFO_1A9GYP7 and specify a value using the usri1_name member. However, that value will be ignored. The correct way to specify the new name of the group is to call NetUserSetInfo with USER_INFO_0ABGYP7 and specify a value using the usri0_name member.

The NetUserSetInfo function cannot be used to change the home directory for user accounts that were not created by the LAN Manager server.

Return Values

If the function is successful, it returns 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.

NERR_InvalidComputer

The computer name is invalid.

NERR_NotPrimary

The operation is allowed only on the primary domain controller of the domain.

NERR_SpeGroupOp

The operation is not allowed on specified  special groups, which are user groups, admin groups, local groups, or guest groups.

NERR_LastAdmin

The operation is not allowed on the last administrative account.

NERR_BadPassword

The share name or password is invalid.

NERR_PasswordTooShort

The password is shorter than required.

NERR_UserNotFound

The user name could not be found.

 

See Also

NetUserGetInfo