NetUserGetGroups

The NetUserGetGroups function retrieves a list of global groups to which a specified user belongs.

Security Requirements

Only members of the Administrators or Account Operators local group can successfully execute NetUserGetGroups or on a computer that has local security enabled, except when users request details about their own accounts.

NET_API_STATUS NetUserGetGroups(

LPWSTR servername,  
LPWSTR username,  
DWORD level,  
LPBYTE *bufptr,  
DWORD prefmaxlen,  
LPDWORD entriesread,  
LPDWORD totalentries  
);  

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 server program running on the local computer.

username

Pointer to a Unicode string containing the name of the user to search for in each group account.

level

Specifies one of the following values to return the level of information provided.

Value Meaning
0 The bufptr parameter points to an array of GROUP_USERS_INFO_0 structures.
1 The bufptr parameter points to an array of GROUP_USERS_INFO_1 structures.

bufptr

Pointer to the buffer in which the data set with the level parameter is stored. The buffer passed in must have been previously allocated with NetApiBufferAlloc. The returned buffer should be deallocated using the NetApiBufferFree function.

prefmaxlen

Preferred maximum length, in 8-bit bytes of returned data.

entriesread

Pointer to a DWORD that contains the actual enumerated element count.

totalentries

Pointer to a DWORD that contains the total number of entries that could have been enumerated from the current resume position.

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_UserNotFound The user name could not be found.

Remarks

The NetUserGetGroups function returns an array of GROUP_INFO_0 structure, that specifies the names of all groups to which the user belongs. LAN Manager groups are separate and distinct from Windows NT system groups.

See Also

NetUserGetInfo