43 if (uLen1 != uLen2 ||
_tcscmp(szPassword1, szPassword2) != 0)
46 TEXT(
"The passwords you entered are not the same!"),
315 lvi.pszText =
user.usri3_name;
321 user.usri3_full_name);
373 wsprintf(szText,
TEXT(
"Do you really want to delete the user \"%s\"?"), szUserName);
433 DWORD resume_handle = 0;
443 &totalentries, &resume_handle);
447 for (
i = 0;
i < entriesread;
i++)
449 memset(&lvi, 0x00,
sizeof(lvi));
451 lvi.pszText =
pBuffer[
i].usri20_name;
525 if (pnmv->item.iItem == -1)
535 if (pnmv->item.pszText ==
NULL)
539 lstrcpy(szNewUserName, pnmv->item.pszText);
542 if (
lstrcmp(szOldUserName, szNewUserName) == 0)
585 if (lpnmlv->
iItem != -1)
591 if (uItem != (
UINT)-1)
637 memset(&lvi, 0x00,
sizeof(lvi));
void user(int argc, const char *argv[])
BOOL CheckAccountName(HWND hwndDlg, INT nIdDlgItem, LPTSTR lpAccountName)
#define IDC_USERS_PROPERTIES
#define IDC_USER_NEW_FULL_NAME
#define IDC_USER_NEW_CANNOT_CHANGE
#define IDC_USER_NEW_DESCRIPTION
#define IDM_USER_CHANGE_PASSWORD
#define IDC_USER_NEW_NAME
#define IDD_CHANGE_PASSWORD
#define IDC_EDIT_PASSWORD1
#define IDC_EDIT_PASSWORD2
#define IDC_USER_NEW_NEVER_EXPIRES
#define IDM_USER_PROPERTIES
#define IDC_USER_NEW_PASSWORD2
#define IDC_USER_NEW_FORCE_CHANGE
#define IDC_USER_NEW_DISABLED
#define IDC_USER_NEW_PASSWORD1
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)
NET_API_STATUS WINAPI NetUserAdd(LPCWSTR servername, DWORD level, LPBYTE bufptr, LPDWORD parm_err)
NET_API_STATUS WINAPI NetUserGetInfo(LPCWSTR servername, LPCWSTR username, DWORD level, LPBYTE *bufptr)
NET_API_STATUS WINAPI NetUserSetInfo(LPCWSTR servername, LPCWSTR username, DWORD level, LPBYTE buf, LPDWORD parm_err)
NET_API_STATUS WINAPI NetUserDel(LPCWSTR servername, LPCWSTR username)
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 UF_ACCOUNTDISABLE
#define UF_DONT_EXPIRE_PASSWD
#define UF_PASSWD_CANT_CHANGE
struct _USER_INFO_3 * PUSER_INFO_3
struct _USER_INFO_1003 * PUSER_INFO_1003
#define USER_MAXSTORAGE_UNLIMITED
#define FILTER_NORMAL_ACCOUNT
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
#define UNREFERENCED_PARAMETER(P)
#define ListView_InsertItem(hwnd, pitem)
#define ListView_EditLabel(hwndLV, i)
#define ListView_InsertColumn(hwnd, iCol, pcol)
#define ListView_SetImageList(hwnd, himl, iImageList)
#define ListView_GetEditControl(hwndLV)
#define ListView_GetItemText(hwndLV, i, iSubItem_, pszText_, cchTextMax_)
#define ListView_GetNextItem(hwnd, i, flags)
#define LVS_EX_FULLROWSELECT
#define LVN_BEGINLABELEDIT
#define ListView_SetExtendedListViewStyle(hwndLV, dw)
struct tagNMLISTVIEW * LPNMLISTVIEW
#define ListView_SetItemText(hwndLV, i, iSubItem_, pszText_)
#define ListView_SetItem(hwnd, pitem)
#define ImageList_AddIcon(himl, hicon)
#define ListView_DeleteItem(hwnd, i)
DWORD usri3_password_expired
BOOL UserProperties(HWND hwndDlg)
static BOOL UserDelete(HWND hwndDlg)
struct _USER_DATA * PUSER_DATA
INT_PTR CALLBACK ChangePasswordDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID SetUsersListColumns(HWND hwndListView)
INT_PTR CALLBACK UsersPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID UpdateUsersList(HWND hwndListView)
static VOID OnInitDialog(HWND hwndDlg)
static VOID UpdateNewUserOptions(HWND hwndDlg, PUSER_INFO_3 userInfo, BOOL bInit)
static VOID UserNew(HWND hwndDlg)
static BOOL OnNotify(HWND hwndDlg, PUSER_DATA pUserData, NMHDR *phdr)
struct _USER_DATA USER_DATA
static BOOL OnBeginLabelEdit(LPNMLVDISPINFO pnmv)
INT_PTR CALLBACK NewUserDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID UserChangePassword(HWND hwndDlg)
static VOID UpdateUserProperties(HWND hwndDlg)
static BOOL CheckPasswords(HWND hwndDlg, INT nIdDlgItem1, INT nIdDlgItem2)
static BOOL OnEndLabelEdit(LPNMLVDISPINFO pnmv)
static VOID UserRename(HWND hwndDlg)
LPTSTR GetDlgItemTextAlloc(HWND hwndDlg, INT nDlgItem)
UINT WINAPI GetMenuDefaultItem(_In_ HMENU hMenu, _In_ UINT fByPos, _In_ UINT gmdiFlags)
BOOL WINAPI SetMenuDefaultItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI CheckDlgButton(_In_ HWND, _In_ int, _In_ UINT)
BOOL WINAPI ClientToScreen(_In_ HWND, _Inout_ LPPOINT)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
HWND WINAPI SetFocus(_In_opt_ HWND)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
BOOL WINAPI DestroyMenu(_In_ HMENU)
BOOL WINAPI TrackPopupMenu(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _Reserved_ int, _In_ HWND, _Reserved_ LPCRECT)
#define SendDlgItemMessage
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
BOOL WINAPI DestroyIcon(_In_ HICON)
#define DOMAIN_GROUP_RID_USERS