NetGroupAdd

The NetGroupAdd function creates a global group in the security database.

Security Requirements

Only members of the Administrators or Account Operators local group can successfully execute NetGroupAdd.

NET_API_STATUS NetGroupAdd(

LPWSTR servername,  
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.

level

Specifies one of the following values to set the level of information pointed to in the buf parameter.

Value Meaning
0 Specify group name. The buf parameter contains a pointer to a GROUP_INFO_0 structure.
1 Specify group name and a comment. The buf parameter contains a pointer to a GROUP_INFO_1 structure.
2 Specifies information about the group. The buf parameter contains a pointer to a GROUP_INFO_2 structure.

buf

Pointer to a buffer containing the global group information structure.

parm_err

Optional pointer to a DWORD to return the index of the first parameter in error when ERROR_INVALID_PARAMETER is returned. If NULL, the parameter is not returned on error.

Return Values

If the function succeeds, the return value is 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_GroupExists The group already exists.
NERR_NotPrimary The operation is allowed only on the primary domain controller of the domain.
ERROR_INVALID_LEVEL The value specified for the Level parameter is invalid.
NERR_SpeGroupOp The operation is not allowed on specified special groups, which are user groups, admin groups, local groups, or guest groups.

See Also

NetGroupAddUser, NetGroupDel