NetUserSetInfo
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_0 |
1 |
The buf
parameter points to a USER_INFO_1 |
2 |
The buf
parameter points to a USER_INFO_2 |
3 |
The buf
parameter points to a USER_INFO_3 |
21 |
The buf
parameter points to a USER_INFO_21 |
22 |
The buf
parameter points to a USER_INFO_22 |
1003 |
The buf
parameter points to a USER_INFO_1003 |
1005 |
The buf
parameter points to a USER_INFO_1005 |
1006 |
The buf
parameter points to a USER_INFO_1006 |
1007 |
The buf
parameter points to a USER_INFO_1007 |
1008 |
The buf
parameter points to a USER_INFO_1008 |
1009 |
The buf
parameter points to a USER_INFO_1009 |
1010 |
The buf
parameter points to a USER_INFO_1010 |
1011 |
The buf
parameter points to a USER_INFO_1011 |
1012 |
The buf
parameter points to a USER_INFO_1012 |
1013 |
The buf
parameter points to a USER_INFO_1013 |
1014 |
The buf
parameter points to a USER_INFO_1014 |
1017 |
The buf
parameter points to a USER_INFO_1017 |
1020 |
The buf
parameter points to a USER_INFO_1020 |
1024 |
The buf
parameter points to a USER_INFO_1024 |
1051 |
The buf
parameter points to a USER_INFO_1051 |
1053 |
The buf
parameter points to a USER_INFO_1053 |
buf
Pointer to
the buffer in which the data set with the level parameter is stored. The
returned buffer should be deallocated using the NetApiBufferFree
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_1
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