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)
258 TCHAR szGroupName[256];
277 for (
i = 0;
i < dwRead;
i++)
281 lvi.pszText = membersInfo[
i].lgrmi1_name;
283 lvi.iImage = (membersInfo[
i].lgrmi1_sidusage ==
SidTypeGroup ||
294 membersInfo[
i].lgrmi1_name,
297 lvi.pszText = szGroupName;
332 wsprintf(szText,
TEXT(
"Do you really want to remove the user \"%s\" from the group \"%s\"?"),
340 3, (
LPBYTE)&memberInfo, 1);
403 TCHAR szGroupName[256];
442 for (
i = 0;
i < dwRead;
i++)
466 membersInfo[
i].lgrmi2_domainandname,
469 lvi.pszText = szGroupName;
475 ptr =
wcschr(membersInfo[
i].lgrmi2_domainandname,
L'\\');
482 lvi.pszText = membersInfo[
i].lgrmi2_domainandname;
606 psp->lParam = (
LPARAM)pszGroup;
633 psh.hwndParent = hwndDlg;
636 psh.pszCaption = szGroupName;
NET_API_STATUS WINAPI NetLocalGroupDelMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
#define MAX_PREFERRED_LENGTH
#define ListView_GetNextItem(hwnd, i, flags)
NET_API_STATUS WINAPI NetLocalGroupAddMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
* PSID_IDENTIFIER_AUTHORITY
BOOL WINAPI DestroyIcon(_In_ HICON)
#define UNREFERENCED_PARAMETER(P)
#define IDC_GROUP_GENERAL_MEMBERS
#define ListView_GetItemText(hwndLV, i, iSubItem_, pszText_, cchTextMax_)
#define IDD_GROUP_GENERAL
#define LVS_EX_FULLROWSELECT
INT_PTR CALLBACK AddUsersToGroupDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID GetGeneralGroupData(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
#define ListView_InsertItem(hwnd, pitem)
PDWORD WINAPI GetSidSubAuthority(PSID pSid, DWORD nSubAuthority)
struct _GENERAL_GROUP_DATA * PGENERAL_GROUP_DATA
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
NET_API_STATUS WINAPI NetLocalGroupSetInfo(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, LPDWORD parm_err)
#define IDC_GROUP_GENERAL_NAME
#define ListView_InsertColumn(hwnd, iCol, pcol)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
#define ListView_GetSelectedCount(hwndLV)
static VOID InitGroupMembersList(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
BOOL GroupProperties(HWND hwndDlg)
NET_API_STATUS WINAPI NetLocalGroupGetInfo(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE *bufptr)
#define IDC_GROUP_GENERAL_REMOVE
INT_PTR CALLBACK GroupGeneralPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
VOID DebugPrintf(LPTSTR szFormat,...)
#define ListView_SetImageList(hwnd, himl, iImageList)
#define IDD_USER_ADD_MEMBERSHIP
#define ListView_DeleteItem(hwnd, i)
#define ListView_GetItemCount(hwnd)
#define ListView_SetItemText(hwndLV, i, iSubItem_, pszText_)
static VOID AddUsersToGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
_CONST_RETURN wchar_t *__cdecl wcschr(_In_z_ const wchar_t *_Str, wchar_t _Ch)
static BOOL SetGeneralGroupData(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
NET_API_STATUS WINAPI NetLocalGroupGetMembers(LPCWSTR servername, LPCWSTR localgroupname, DWORD level, LPBYTE *bufptr, DWORD prefmaxlen, LPDWORD entriesread, LPDWORD totalentries, PDWORD_PTR resumehandle)
#define PropSheet_Changed(d, w)
#define ListView_SetExtendedListViewStyle(hwndLV, dw)
INT WINAPI ImageList_AddIcon(HIMAGELIST himl, HICON hIcon)
#define IDC_GROUP_GENERAL_ADD
#define IDC_GROUP_GENERAL_DESCRIPTION
static VOID GetTextSid(PSID pSid, LPTSTR pTextSid)
#define ERROR_MEMBER_IN_ALIAS
PUCHAR WINAPI GetSidSubAuthorityCount(PSID pSid)
INT_PTR(CALLBACK * DLGPROC)(HWND, UINT, WPARAM, LPARAM)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
HWND WINAPI GetParent(_In_ HWND)
NET_API_STATUS WINAPI NetApiBufferFree(LPVOID Buffer)
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
#define IDC_USER_ADD_MEMBERSHIP_LIST
struct tagNMLISTVIEW * LPNMLISTVIEW
#define PSH_PROPSHEETPAGE
#define UF_ACCOUNTDISABLE
#define FILTER_NORMAL_ACCOUNT
static BOOL OnGroupPropSheetNotify(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData, LPARAM lParam)
static VOID InitGroupPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc, LPTSTR pszGroup)
static VOID RemoveUserFromGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
#define GetWindowTextLength
struct _GENERAL_GROUP_DATA GENERAL_GROUP_DATA
GLenum GLenum GLvoid GLvoid * column
static BOOL AddSelectedUsersToGroup(HWND hwndDlg, PGENERAL_GROUP_DATA pGroupData)
static SERVICE_STATUS status
#define HeapFree(x, y, z)
LPWSTR lgrmi3_domainandname
PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID pSid)
NET_API_STATUS WINAPI NetUserEnum(LPCWSTR servername, DWORD level, DWORD filter, LPBYTE *bufptr, DWORD prefmaxlen, LPDWORD entriesread, LPDWORD totalentries, LPDWORD resume_handle)
#define ListView_DeleteAllItems(hwnd)