NetLocalGroupAdd 函数 (lmaccess.h)
NetLocalGroupAdd 函数在安全数据库中创建一个本地组,该组是安全帐户管理器 (SAM) 数据库,如果是域控制器,则为 Active Directory。
语法
NET_API_STATUS NET_API_FUNCTION NetLocalGroupAdd(
[in] LPCWSTR servername,
[in] DWORD level,
[in] LPBYTE buf,
[out] LPDWORD parm_err
);
parameters
[in] servername
指向字符串的指针,该字符串指定要在其中执行函数的远程服务器的 DNS 或 NetBIOS 名称。 如果此参数为 NULL,则使用本地计算机。
[in] level
数据的信息级别。 此参数的取值可为下列值之一:
值 | 含义 |
---|---|
|
本地组名称。 buf 参数指向LOCALGROUP_INFO_0结构。 |
|
要与组关联的本地组名称和注释。 buf 参数指向LOCALGROUP_INFO_1结构。 |
[in] buf
指向包含本地组信息结构的缓冲区的指针。 此数据的格式取决于 级别 参数的值。 有关详细信息,请参阅 网络管理功能缓冲区。
[out] parm_err
指向一个值的指针,该值接收本地组信息结构的第一个成员的索引,导致ERROR_INVALID_PARAMETER错误。 如果此参数为 NULL,则错误时不会返回索引。 有关详细信息,请参阅 NetLocalGroupSetInfo 主题中的“备注”部分。
返回值
如果函数成功,则返回值NERR_Success。
如果函数失败,则返回值可能是以下错误代码之一。
返回代码 | 说明 |
---|---|
|
调用方没有完成操作的适当访问权限。 |
|
指定的本地组已存在。 如果 buf 参数指向的结构中的组名成员已用作别名,则返回此错误。 |
|
级别参数无效。 |
|
参数不正确。 如果 buf 参数指向的结构中的一个或多个成员无效,则返回此错误。 |
|
组名称存在。 如果 buf 参数指向的结构中的组名成员已用作组名,则返回此错误。 |
|
计算机名称无效。 |
|
仅允许在域的主域控制器上执行该操作。 |
|
用户名存在。 如果 buf 参数指向的结构中的组名成员已用作用户名,则返回此错误。 |
注解
如果在运行 Active Directory 的域控制器上调用此函数,则会根据 安全对象的访问控制列表 (ACL) 允许或拒绝访问。 默认 ACL 仅允许域管理员和帐户操作员调用此函数。 在成员服务器或工作站上,只有管理员和高级用户可以调用此函数。 有关详细信息,请参阅 网络管理功能的安全要求。 有关 ACL、ACE 和访问令牌的详细信息,请参阅访问控制模型。
用户容器的安全描述符用于执行此函数的访问检查。 调用方必须能够创建组类的子对象。
用户帐户名称限制为 20 个字符,组名称限制为 256 个字符。 此外,帐户名称不能以句点结尾,并且不能包含逗号或以下任何可打印字符:“、、/、、[、]、:、|、 <、、 >、+、=、;、?、*。 名称也不能包含 1-31 范围内的字符,这些字符不可打印。
如果 NetLocalGroupAdd 函数返回ERROR_INVALID_PARAMETER并且未在parm_err参数中传递 NULL 指针,则返回时,parm_err 参数指示本地组信息结构的第一个无效成员。 本地组信息结构的格式在 level 参数中指定。 指向本地组信息结构的指针在 buf 参数中传递。 下表列出了可在 parm_err 参数中返回的值以及出错的相应结构成员。
值 | 成员 |
---|---|
LOCALGROUP_NAME_PARMNUM |
如果 level 参数为 0,则 LOCALGROUP_INFO_0 结构的 lgrpi0_name 成员无效。
如果 level 参数为 1,则 LOCALGROUP_INFO_1 结构的 lgrpi1_name 成员无效。 |
LOCALGROUP_COMMENT_PARMNUM | 如果 level 参数为 1,则 LOCALGROUP_INFO_1 结构的 lgrpi1_comment 成员无效。 |
向域控制器和 Active Directory 发出请求时,可以调用某些 Active Directory 服务接口 (ADSI) 方法,以获得与网络管理本地组函数相同的结果。 有关详细信息,请参阅 IADsGroup。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | lmaccess.h (包括 Lm.h) |
Library | Netapi32.lib |
DLL | Netapi32.dll |