Как структура вывода в C

#c #wnet

#c #wnet

Вопрос:

В моей программе я хочу получить локальные группы пользователя. Мой код:

 LPLOCALGROUP_USERS_INFO_0 pBuf = NULL; //STRUCTURE
DWORD dwLevel = 0;
DWORD dwFlags = LG_INCLUDE_INDIRECT ; 
DWORD dwPrefMaxLen = MAX_PREFERRED_LENGTH; 
DWORD dwEntriesRead = 0;
DWORD dwTotalEntries = 0; 
NET_API_STATUS nStatus;
nStatus = NetUserGetLocalGroups(NULL,
                               L"Nastya",
                               dwLevel,
                               dwFlags,
                               (LPBYTE *) amp;pBuf,
                               dwPrefMaxLen,
                               amp;dwEntriesRead,
                               amp;dwTotalEntries);
DWORD i;
 

Я хочу вывести pBuf:

 if (nStatus == NERR_Success) 
{
   wprintf(L"t-- %sn", pBuf->lgrui0_name);
}
 

Но я получаю только первый элемент «HomeUsers».
Как я могу получить все элементы этой структуры?

 typedef struct _LOCALGROUP_USERS_INFO_0 {
  LPWSTR lgrui0_name;
} LOCALGROUP_USERS_INFO_0, *PLOCALGROUP_USERS_INFO_0, *LPLOCALGROUP_USERS_INFO_0;
 

Комментарии:

1. Почему бы вам не прочитать пример кода, приведенный на странице документации для NetUserGetLocalGroups ?

2. Я прочитал это, но я не понял некоторых вещей и хочу написать сам. Но я не могу вывести pBuf

3. Как я могу это решить? Пожалуйста, помогите мне.

4. Структуры C представляют расположение битов в памяти с минимальным количеством языковых механизмов сверху. В отличие от объектов javascript, не существует простого способа перечисления полей, и вы должны просто явно распечатать каждое поле.