23 DWORD dwSubAuthorities;
32 dwSidSize =
wsprintf(pTextSid,
TEXT(
"S-%lu-"), dwSidRev);
34 if ((psia->Value[0] != 0) || (psia->Value[1] != 0))
37 TEXT(
"0x%02hx%02hx%02hx%02hx%02hx%02hx"),
49 (
ULONG)(psia->Value[5]) +
50 (
ULONG)(psia->Value[4] << 8) +
51 (
ULONG)(psia->Value[3] << 16) +
52 (
ULONG)(psia->Value[2] << 24));
57 dwSidSize +=
wsprintf(pTextSid + dwSidSize,
TEXT(
"-%lu"),
78 DWORD resume_handle = 0;
122 &totalentries, &resume_handle);
126 for (
i = 0;
i < entriesread;
i++)
128 memset(&lvi, 0x00,
sizeof(lvi));
130 lvi.pszText = pUserBuffer[
i].usri20_name;
136 pUserBuffer[
i].usri20_full_name);
139 pUserBuffer[
i].usri20_comment);
166 if (nSelectedItems > 0)
257 TCHAR szGroupName[256];
276 for (
i = 0;
i < dwRead;
i++)
280 lvi.pszText = membersInfo[
i].lgrmi1_name;
282 lvi.iImage = (membersInfo[
i].lgrmi1_sidusage ==
SidTypeGroup ||
293 membersInfo[
i].lgrmi1_name,
296 lvi.pszText = szGroupName;
331 wsprintf(szText,
TEXT(
"Do you really want to remove the user \"%s\" from the group \"%s\"?"),
339 3, (
LPBYTE)&memberInfo, 1);
402 TCHAR szGroupName[256];
441 for (
i = 0;
i < dwRead;
i++)
465 membersInfo[
i].lgrmi2_domainandname,
468 lvi.pszText = szGroupName;
474 ptr =
wcschr(membersInfo[
i].lgrmi2_domainandname,
L'\\');
506 ERR(
"NetLocalGroupSetInfo failed. Status: %lu Index: %lu",
status, dwIndex);
592 psp->lParam = (
LPARAM)pszGroup;
619 psh.hwndParent = hwndDlg;
622 psh.pszCaption = szGroupName;
#define IDD_USER_ADD_MEMBERSHIP
#define IDC_GROUP_GENERAL_REMOVE
#define IDC_USER_ADD_MEMBERSHIP_LIST
#define IDD_GROUP_GENERAL
#define IDC_GROUP_GENERAL_MEMBERS
#define IDC_GROUP_GENERAL_NAME
#define IDC_GROUP_GENERAL_ADD
#define IDC_GROUP_GENERAL_DESCRIPTION
PDWORD WINAPI GetSidSubAuthority(PSID pSid, DWORD nSubAuthority)
PUCHAR WINAPI GetSidSubAuthorityCount(PSID pSid)
PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID pSid)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
#define HeapFree(x, y, z)
NET_API_STATUS WINAPI NetApiBufferFree(LPVOID Buffer)
NET_API_STATUS WINAPI NetUserEnum(LPCWSTR servername, DWORD level, DWORD filter, LPBYTE *bufptr, DWORD prefmaxlen, LPDWORD entriesread, LPDWORD totalentries, LPDWORD resume_handle)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL GroupProperties(HWND hwndDlg)
static VOID AddUsersToGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static VOID GetTextSid(PSID pSid, LPTSTR pTextSid)
struct _GENERAL_GROUP_DATA * PGENERAL_GROUP_DATA
struct _GENERAL_GROUP_DATA GENERAL_GROUP_DATA
INT_PTR CALLBACK GroupGeneralPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID InitGroupMembersList(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static VOID RemoveUserFromGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static BOOL AddSelectedUsersToGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static VOID InitGroupPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc, LPTSTR pszGroup)
static BOOL SetGeneralGroupData(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static VOID GetGeneralGroupData(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
INT_PTR CALLBACK AddUsersToGroupDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static BOOL OnGroupPropSheetNotify(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData, LPARAM lParam)
#define UF_ACCOUNTDISABLE
#define FILTER_NORMAL_ACCOUNT
#define MAX_PREFERRED_LENGTH
NET_API_STATUS WINAPI NetLocalGroupDelMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
NET_API_STATUS WINAPI NetLocalGroupGetMembers(LPCWSTR servername, LPCWSTR localgroupname, DWORD level, LPBYTE *bufptr, DWORD prefmaxlen, LPDWORD entriesread, LPDWORD totalentries, PDWORD_PTR resumehandle)
NET_API_STATUS WINAPI NetLocalGroupSetInfo(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, LPDWORD parm_err)
NET_API_STATUS WINAPI NetLocalGroupGetInfo(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE *bufptr)
NET_API_STATUS WINAPI NetLocalGroupAddMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
#define UNREFERENCED_PARAMETER(P)
#define PropSheet_Changed(d, w)
#define PSH_PROPSHEETPAGE
#define ListView_InsertItem(hwnd, pitem)
#define ListView_InsertColumn(hwnd, iCol, pcol)
#define ListView_SetImageList(hwnd, himl, iImageList)
#define ListView_GetItemText(hwndLV, i, iSubItem_, pszText_, cchTextMax_)
#define ListView_GetNextItem(hwnd, i, flags)
#define LVS_EX_FULLROWSELECT
#define ListView_GetItemCount(hwnd)
#define ListView_SetExtendedListViewStyle(hwndLV, dw)
#define ListView_GetSelectedCount(hwndLV)
struct tagNMLISTVIEW * LPNMLISTVIEW
#define ListView_DeleteAllItems(hwnd)
#define ListView_SetItemText(hwndLV, i, iSubItem_, pszText_)
#define ImageList_AddIcon(himl, hicon)
#define ListView_DeleteItem(hwnd, i)
LPWSTR lgrmi2_domainandname
LPWSTR lgrmi3_domainandname
LPTSTR GetDlgItemTextAlloc(HWND hwndDlg, INT nDlgItem)
#define ERROR_MEMBER_IN_ALIAS
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
HWND WINAPI GetParent(_In_ HWND)
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
BOOL WINAPI DestroyIcon(_In_ HICON)
* PSID_IDENTIFIER_AUTHORITY