NetGroupSetInfo 函数 (lmaccess.h)

NetGroupSetInfo 函数在安全数据库中设置全局组的参数,该组是安全帐户管理器 (SAM) 数据库,如果是域控制器,则为 Active Directory。

语法

NET_API_STATUS NET_API_FUNCTION NetGroupSetInfo(
  [in]  LPCWSTR servername,
  [in]  LPCWSTR groupname,
  [in]  DWORD   level,
  [in]  LPBYTE  buf,
  [out] LPDWORD parm_err
);

参数

[in] servername

指向常量字符串的指针,该字符串指定要对其执行函数的远程服务器的 DNS 或 NetBIOS 名称。 如果此参数为 NULL,则使用本地计算机。

[in] groupname

指向常量字符串的指针,该字符串指定要为其设置信息的全局组的名称。 有关更多信息,请参见下面的“备注”部分。

[in] level

指定数据的信息级别。 此参数的取值可为下列值之一:

含义
0
指定全局组名称。 buf 参数指向GROUP_INFO_0结构。
1
指定全局组名称和注释。 buf 参数指向GROUP_INFO_1结构。
2
指定有关全局组的详细信息。 buf 参数指向GROUP_INFO_2结构。 请注意,在 Windows XP 及更高版本上,建议改用 GROUP_INFO_3
3
指定有关全局组的详细信息。 buf 参数指向GROUP_INFO_3结构。

Windows 2000: 不支持此级别。

1002
仅指定有关全局组的注释。 buf 参数指向GROUP_INFO_1002结构。
1005
指定全局组属性。 buf 参数指向GROUP_INFO_1005结构。
 

有关更多信息,请参见下面的“备注”部分。

[in] buf

指向包含数据的缓冲区的指针。 此数据的格式取决于 级别 参数的值。 有关详细信息,请参阅 网络管理功能缓冲区

[out] parm_err

指向一个值的指针,该值接收组信息结构的第一个成员的索引,ERROR_INVALID_PARAMETER错误代码后出错。 如果此参数为 NULL,则错误时不会返回索引。 有关更多信息,请参见下面的“备注”部分。

返回值

如果函数成功,则返回值NERR_Success。

如果函数失败,则返回值可能是以下错误代码之一。

返回代码 说明
ERROR_ACCESS_DENIED
用户无权访问请求的信息。
ERROR_INVALID_PARAMETER
其中一个函数参数无效。 有关更多信息,请参见下面的“备注”部分。
NERR_InvalidComputer
计算机名称无效。
NERR_NotPrimary
仅允许在域的主域控制器上执行此操作。
NERR_GroupNotFound
找不到全局组名称。
NERR_SpeGroupOp
不允许对某些特殊组执行该操作。 这些组包括用户组、管理员组、本地组和来宾组。

注解

如果要为 Active Directory 编程,则可以调用某些 Active Directory 服务接口 (ADSI) 方法,以实现通过调用网络管理组函数实现的相同功能。 有关详细信息,请参阅 IADsGroup

如果在运行 Active Directory 的域控制器上调用此函数,则会根据 安全对象的访问控制列表 (ACL) 来允许或拒绝访问。 默认 ACL 仅允许域管理员和帐户操作员调用此函数。 在成员服务器或工作站上,只有管理员和 Power Users 才能调用此函数。 有关详细信息,请参阅 网络管理功能的安全要求。 有关 ACL、ACE 和访问令牌的详细信息,请参阅访问控制模型

Group 对象的安全描述符用于执行此函数的访问检查。 通常,调用方必须对整个 对象具有写入访问权限,才能成功调用此函数。

设置全局组新名称的正确方法是使用 GROUP_INFO_0 结构调用 NetGroupSetInfo 函数。 指定 grpi0_name 成员中的新值。 如果使用 GROUP_INFO_1 结构并在 grpi1_name 成员中指定值,则会忽略新的名称值。

如果 NetGroupSetInfo 函数返回ERROR_INVALID_PARAMETER,则可以使用 parm_err 参数来指示组信息结构的第一个成员无效。 (组信息结构以GROUP_INFO_开头,其格式由 级别 参数指定。) 下表列出了可在 parm_err 参数中返回的值以及出错的相应结构成员。 (前缀 grpi*_ 指示成员可以以多个前缀开头,例如,grpi1_或 grpi2_.)

成员
GROUP_NAME_PARMNUM grpi*_name
GROUP_COMMENT_PARMNUM grpi*_comment
GROUP_ATTRIBUTES_PARMNUM grpi*_attributes
 

用户帐户名称限制为 20 个字符,组名限制为 256 个字符。 此外,帐户名称不能以句点结尾,并且不能包含逗号或以下任何可打印字符:“,/,,,[,],:,|, <,,, >+,=,;,?,*。 名称也不能包含范围 1-31 中的字符,这些字符不可打印。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 lmaccess.h (包括 Lm.h)
Library Netapi32.lib
DLL Netapi32.dll

另请参阅

GROUP_INFO_0

GROUP_INFO_1

GROUP_INFO_1002

GROUP_INFO_1005

GROUP_INFO_3

组函数

NetGroupGetInfo

网络管理功能

网络管理概述