NetUserSetInfo功能设置用户帐户的参数。
安全要求
只有管??理员或帐户操作员本地组的成员才能在远程服务器或启用了本地安全性的计算机上成功执行NetUserSetInfo.用户可以致电NetUserSetInfo以设置他/她自己的帐户的某些信息。
NET_API_STATUS NetUserSetInfo(
LPWSTR服务器名称, | |
LPWSTR用户名, | |
DWORD水平, | |
LPBYTEBUF, | |
LPDWORDparm_err | |
); |
参数
服务器名称
指向包含要执行该函数的远程服务器名称的Unicode字符串。NULL指针或字符串指定本地计算机。
用户名
指向包含用户帐户名称的Unicode字符串以设置信息。
水平
指定以下值之一来设置提供的信息级别。
值 | 含义 |
0 | BUF参数指向USER_INFO_0结构。 |
1 | BUF参数指向USER_INFO_1结构。 |
2 | BUF参数指向USER_INFO_2结构。 |
3 | BUF参数指向USER_INFO_3结构。 |
21 | BUF参数指向USER_INFO_21结构。 |
22 | BUF参数指向USER_INFO_22结构。 |
1003 | BUF参数指向USER_INFO_1003结构。 |
1005 | BUF参数指向USER_INFO_1005结构。 |
1006 | BUF参数指向USER_INFO_1006结构。 |
1007 | BUF参数指向USER_INFO_1007结构。 |
1008 | BUF参数指向USER_INFO_1008结构。 |
1009 | BUF参数指向USER_INFO_1009结构。 |
1010 | BUF参数指向USER_INFO_1010结构。 |
1011 | BUF参数指向USER_INFO_1011结构。 |
1012 | BUF参数指向USER_INFO_1012结构。 |
1013 | BUF参数指向USER_INFO_1013结构。 |
1014 | BUF参数指向USER_INFO_1014结构。 |
1017 | BUF参数指向USER_INFO_1017结构。 |
1020 | BUF参数指向USER_INFO_1020结构。 |
1024 | BUF参数指向USER_INFO_1024结构。 |
1051 | BUF参数指向USER_INFO_1051结构。 |
1053 | BUF参数指向USER_INFO_1053结构。 |
BUF
指向存储有水平参数的数据的缓冲区的指针。返回的缓冲区应使用NetApiBufferFree功能取消分配。
parm_err
可选的指向DWORD的指针,其中包含导致ERROR_INVALID_PARAMETER的第一个参数的索引。如果NULL,参数不会返回错误。
备注
只能由具有管理权限的用户或应用程序调用{??989796216}功能来更改用户密码。但是,密码可以由知道当前密码的用户或应用程序更改,并且呼叫NetUserChangePassword.当管理员调用NetUserSetInfo时,唯一的限制是新的密码长度必须与系统模式一致。
管理员本地组的成员可以设置任何可修改的元素。所有用户都可以为自己的帐户设置user_info_2数据结构的usri2_usr_comment,usri2_parms和usri2_country_code元素。为此,用户必须使用ParmNum参数,并且不能传递整个结构。
帐号操作员的本地组的成员无法设置管理员类帐户的详细信息,给予现有帐户管理员权限,或更改任何帐户的操作员权限。如果尝试通过数据库中的管理员权限更改特权级别或禁用最后一个帐户,NetUserSetInfo将失败并返回NERR_LastAdmin。
您可以使用USER_INFO_1致电NetUserSetInfo,并使用usri1_name成员指定一个值。但是,该值将被忽略。指定组名称的正确方法是使用USER_INFO_0调用NetUserSetInfo,并使用usri0_name成员指定一个值。
NetUserSetInfo功能无法用于更改LAN Manager服务器未创建的用户帐户的主目录。
返回值
如果该函数成功,则返回NERR_SUCCESS。
如果函数失败,则返回值是以下错误代码之一。
值 | 含义 |
ERROR_ACCESS_DENIED | 用户无权访问所请求的信息。 |
NERR_InvalidComputer | 计算机名无效。 |
NERR_NotPrimary | 该操作只允许在域的主域控制器上。 |
NERR_SpeGroupOp | 指定的特殊组(用户组,管理员组,本地组或访客组)不允许操作。 |
NERR_LastAdmin | 最后一个管理帐户不允许操作。 |
NERR_BadPassword | 共享名或密码无效。 |
NERR_PasswordTooShort | 密码短于所需密码。 |
NERR_UserNotFound | 无法找到用户名。 |
也可以看看