X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fdll%2Fcpl%2Fusrmgr%2Fgroupprops.c;h=a455446a91297ec7d4902ed30d2496a2a763f90f;hp=d34acd3eb51c2305ea01a9370730e0f76de5eea4;hb=b63e09b1792e06ffc56226b2c21b82d232c6a0fa;hpb=af7cfc0a353bbff6b1b98f02f4869cdd826c8dfe diff --git a/reactos/dll/cpl/usrmgr/groupprops.c b/reactos/dll/cpl/usrmgr/groupprops.c index d34acd3eb51..a455446a912 100644 --- a/reactos/dll/cpl/usrmgr/groupprops.c +++ b/reactos/dll/cpl/usrmgr/groupprops.c @@ -389,7 +389,7 @@ GetGeneralGroupData(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData) { PLOCALGROUP_INFO_1 groupInfo = NULL; - PLOCALGROUP_MEMBERS_INFO_1 membersInfo = NULL; + PLOCALGROUP_MEMBERS_INFO_2 membersInfo = NULL; DWORD dwRead; DWORD dwTotal; DWORD_PTR resumeHandle = 0; @@ -435,7 +435,7 @@ GetGeneralGroupData(HWND hwndDlg, NetApiBufferFree(groupInfo); /* Set group members */ - NetLocalGroupGetMembers(NULL, pGroupData->szGroupName, 1, (LPBYTE*)&membersInfo, + NetLocalGroupGetMembers(NULL, pGroupData->szGroupName, 2, (LPBYTE*)&membersInfo, MAX_PREFERRED_LENGTH, &dwRead, &dwTotal, &resumeHandle); @@ -443,32 +443,45 @@ GetGeneralGroupData(HWND hwndDlg, { ZeroMemory(&lvi, sizeof(lvi)); lvi.mask = LVIF_TEXT | LVIF_STATE | LVIF_IMAGE; - lvi.pszText = membersInfo[i].lgrmi1_name; lvi.state = 0; - if (membersInfo[i].lgrmi1_sidusage == SidTypeGroup || - membersInfo[i].lgrmi1_sidusage == SidTypeWellKnownGroup) + if (membersInfo[i].lgrmi2_sidusage == SidTypeGroup || + membersInfo[i].lgrmi2_sidusage == SidTypeWellKnownGroup) { lvi.iImage = 0; } - else if (membersInfo[i].lgrmi1_sidusage == SidTypeUser) + else if (membersInfo[i].lgrmi2_sidusage == SidTypeUser) { /* FIXME: handle locked user properly! */ lvi.iImage = 1; } - if (membersInfo[i].lgrmi1_sidusage == SidTypeWellKnownGroup) + if (membersInfo[i].lgrmi2_sidusage == SidTypeWellKnownGroup) { TCHAR szSid[256]; - GetTextSid(membersInfo[i].lgrmi1_sid, szSid); + GetTextSid(membersInfo[i].lgrmi2_sid, szSid); wsprintf(szGroupName, TEXT("%s (%s)"), - membersInfo[i].lgrmi1_name, + membersInfo[i].lgrmi2_domainandname, szSid); lvi.pszText = szGroupName; } + else + { + LPWSTR ptr; + + ptr = wcschr(membersInfo[i].lgrmi2_domainandname, L'\\'); + if (ptr != NULL) + { + lvi.pszText = ++ptr; + } + else + { + lvi.pszText = membersInfo[i].lgrmi2_domainandname; + } + } (void)ListView_InsertItem(hwndLV, &lvi); }