| 1 | /** | 
 
 
 
 
 | 2 | * This file has no copyright assigned and is placed in the Public Domain. | 
 
 
 
 
 | 3 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 
 
 
 
 | 5 | */ | 
 
 
 
 
 | 6 | #ifndef _UMX_H_ | 
 
 
 
 
 | 7 | #define _UMX_H_ | 
 
 
 
 
 | 8 |  | 
 
 
 
 
 | 9 | #include <_mingw_unicode.h> | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 | #define UME_MENU_TEXT_LEN 50 | 
 
 
 
 
 | 12 | #define UME_VERSION 0 | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | #define UMS_LISTBOX_USERS 0 | 
 
 
 
 
 | 15 | #define UMS_LISTBOX_GROUPS 1 | 
 
 
 
 
 | 16 |  | 
 
 
 
 
 | 17 | #define UM_GETSELCOUNT (WM_USER + 1000) | 
 
 
 
 
 | 18 | #define UM_GETUSERSELA (WM_USER + 1001) | 
 
 
 
 
 | 19 | #define UM_GETUSERSELW (WM_USER + 1002) | 
 
 
 
 
 | 20 | #define UM_GETGROUPSELA (WM_USER + 1003) | 
 
 
 
 
 | 21 | #define UM_GETGROUPSELW (WM_USER + 1004) | 
 
 
 
 
 | 22 | #define UM_GETCURFOCUSA (WM_USER + 1005) | 
 
 
 
 
 | 23 | #define UM_GETCURFOCUSW (WM_USER + 1006) | 
 
 
 
 
 | 24 | #define UM_GETOPTIONS (WM_USER + 1007) | 
 
 
 
 
 | 25 | #define UM_GETOPTIONS2 (WM_USER + 1008) | 
 
 
 
 
 | 26 |  | 
 
 
 
 
 | 27 | #define UM_GETUSERSEL __MINGW_NAME_AW(UM_GETUSERSEL) | 
 
 
 
 
 | 28 | #define UM_GETGROUPSEL __MINGW_NAME_AW(UM_GETGROUPSEL) | 
 
 
 
 
 | 29 | #define UM_GETCURFOCUS __MINGW_NAME_AW(UM_GETCURFOCUS) | 
 
 
 
 
 | 30 |  | 
 
 
 
 
 | 31 | typedef struct _UMS_LOADMENUA { | 
 
 
 
 
 | 32 | DWORD dwVersion; | 
 
 
 
 
 | 33 | CHAR szMenuName[UME_MENU_TEXT_LEN + 1]; | 
 
 
 
 
 | 34 | HMENU hMenu; | 
 
 
 
 
 | 35 | CHAR szHelpFileName[MAX_PATH]; | 
 
 
 
 
 | 36 | DWORD dwMenuDelta; | 
 
 
 
 
 | 37 | } UMS_LOADMENUA,*PUMS_LOADMENUA; | 
 
 
 
 
 | 38 |  | 
 
 
 
 
 | 39 | typedef struct _UMS_LOADMENUW { | 
 
 
 
 
 | 40 | DWORD dwVersion; | 
 
 
 
 
 | 41 | WCHAR szMenuName[UME_MENU_TEXT_LEN + 1]; | 
 
 
 
 
 | 42 | HMENU hMenu; | 
 
 
 
 
 | 43 | WCHAR szHelpFileName[MAX_PATH]; | 
 
 
 
 
 | 44 | DWORD dwMenuDelta; | 
 
 
 
 
 | 45 | } UMS_LOADMENUW,*PUMS_LOADMENUW; | 
 
 
 
 
 | 46 |  | 
 
 
 
 
 | 47 | #define UMS_LOADMENU __MINGW_NAME_AW(UMS_LOADMENU) | 
 
 
 
 
 | 48 | #define PUMS_LOADMENU __MINGW_NAME_AW(PUMS_LOADMENU) | 
 
 
 
 
 | 49 |  | 
 
 
 
 
 | 50 | #define UM_SELTYPE_USER 0x10 | 
 
 
 
 
 | 51 | #define UM_SELTYPE_NORMALUSER 0x1 | UM_SELTYPE_USER | 
 
 
 
 
 | 52 | #define UM_SELTYPE_REMOTEUSER 0x2 | UM_SELTYPE_USER | 
 
 
 
 
 | 53 | #define UM_SELTYPE_GROUP 0x20 | 
 
 
 
 
 | 54 | #define UM_SELTYPE_LOCALGROUP 0x4 | UM_SELTYPE_GROUP | 
 
 
 
 
 | 55 | #define UM_SELTYPE_GLOBALGROUP 0x8 | UM_SELTYPE_GROUP | 
 
 
 
 
 | 56 |  | 
 
 
 
 
 | 57 | typedef struct _UMS_GETSELA { | 
 
 
 
 
 | 58 | DWORD dwRID; | 
 
 
 
 
 | 59 | LPSTR pchName; | 
 
 
 
 
 | 60 | DWORD dwSelType; | 
 
 
 
 
 | 61 | LPSTR pchFullName; | 
 
 
 
 
 | 62 | LPSTR pchComment; | 
 
 
 
 
 | 63 | } UMS_GETSELA,*PUMS_GETSELA; | 
 
 
 
 
 | 64 |  | 
 
 
 
 
 | 65 | typedef struct _UMS_GETSELW { | 
 
 
 
 
 | 66 | DWORD dwRID; | 
 
 
 
 
 | 67 | LPWSTR pchName; | 
 
 
 
 
 | 68 | DWORD dwSelType; | 
 
 
 
 
 | 69 | LPWSTR pchFullName; | 
 
 
 
 
 | 70 | LPWSTR pchComment; | 
 
 
 
 
 | 71 | } UMS_GETSELW,*PUMS_GETSELW; | 
 
 
 
 
 | 72 |  | 
 
 
 
 
 | 73 | #define UMS_GETSEL __MINGW_NAME_AW(UMS_GETSEL) | 
 
 
 
 
 | 74 | #define PUMS_GETSEL __MINGW_NAME_AW(PUMS_GETSEL) | 
 
 
 
 
 | 75 |  | 
 
 
 
 
 | 76 | typedef struct _UMS_GETSELCOUNT { | 
 
 
 
 
 | 77 | DWORD dwItems; | 
 
 
 
 
 | 78 | } UMS_GETSELCOUNT,*PUMS_GETSELCOUNT; | 
 
 
 
 
 | 79 |  | 
 
 
 
 
 | 80 | #define UM_FOCUS_TYPE_DOMAIN 1 | 
 
 
 
 
 | 81 | #define UM_FOCUS_TYPE_WINNT 2 | 
 
 
 
 
 | 82 | #define UM_FOCUS_TYPE_LM 3 | 
 
 
 
 
 | 83 | #define UM_FOCUS_TYPE_UNKNOWN 4 | 
 
 
 
 
 | 84 |  | 
 
 
 
 
 | 85 | typedef struct _UMS_GETCURFOCUSA { | 
 
 
 
 
 | 86 | CHAR szFocus[MAX_PATH]; | 
 
 
 
 
 | 87 | DWORD dwFocusType; | 
 
 
 
 
 | 88 | CHAR szFocusPDC[MAX_PATH]; | 
 
 
 
 
 | 89 | PVOID psidFocus; | 
 
 
 
 
 | 90 | } UMS_GETCURFOCUSA,*PUMS_GETCURFOCUSA; | 
 
 
 
 
 | 91 |  | 
 
 
 
 
 | 92 | typedef struct _UMS_GETCURFOCUSW { | 
 
 
 
 
 | 93 | WCHAR szFocus[MAX_PATH]; | 
 
 
 
 
 | 94 | DWORD dwFocusType; | 
 
 
 
 
 | 95 | WCHAR szFocusPDC[MAX_PATH]; | 
 
 
 
 
 | 96 | PVOID psidFocus; | 
 
 
 
 
 | 97 | } UMS_GETCURFOCUSW,*PUMS_GETCURFOCUSW; | 
 
 
 
 
 | 98 |  | 
 
 
 
 
 | 99 | #define UMS_GETCURFOCUS __MINGW_NAME_AW(UMS_GETCURFOCUS) | 
 
 
 
 
 | 100 | #define PUMS_GETCURFOCUS __MINGW_NAME_AW(PUMS_GETCURFOCUS) | 
 
 
 
 
 | 101 |  | 
 
 
 
 
 | 102 | typedef struct _UMS_GETOPTIONS { | 
 
 
 
 
 | 103 | WINBOOL fSaveSettingsOnExit; | 
 
 
 
 
 | 104 | WINBOOL fConfirmation; | 
 
 
 
 
 | 105 | WINBOOL fSortByFullName; | 
 
 
 
 
 | 106 | } UMS_GETOPTIONS,*PUMS_GETOPTIONS; | 
 
 
 
 
 | 107 |  | 
 
 
 
 
 | 108 | typedef struct _UMS_GETOPTIONS2 { | 
 
 
 
 
 | 109 | WINBOOL fSaveSettingsOnExit; | 
 
 
 
 
 | 110 | WINBOOL fConfirmation; | 
 
 
 
 
 | 111 | WINBOOL fSortByFullName; | 
 
 
 
 
 | 112 | WINBOOL fMiniUserManager; | 
 
 
 
 
 | 113 | WINBOOL fLowSpeedConnection; | 
 
 
 
 
 | 114 | } UMS_GETOPTIONS2,*PUMS_GETOPTIONS2; | 
 
 
 
 
 | 115 |  | 
 
 
 
 
 | 116 | #define SZ_UME_UNLOADMENU "UMEUnloadMenu" | 
 
 
 
 
 | 117 | #define SZ_UME_INITIALIZEMENU "UMEInitializeMenu" | 
 
 
 
 
 | 118 | #define SZ_UME_REFRESH "UMERefresh" | 
 
 
 
 
 | 119 | #define SZ_UME_MENUACTION "UMEMenuAction" | 
 
 
 
 
 | 120 |  | 
 
 
 
 
 | 121 | #define SZ_UME_LOADMENUW "UMELoadMenuW" | 
 
 
 
 
 | 122 | #define SZ_UME_GETEXTENDEDERRORSTRINGW "UMEGetExtendedErrorStringW" | 
 
 
 
 
 | 123 | #define SZ_UME_CREATEW "UMECreateW" | 
 
 
 
 
 | 124 | #define SZ_UME_DELETEW "UMEDeleteW" | 
 
 
 
 
 | 125 | #define SZ_UME_RENAMEW "UMERenameW" | 
 
 
 
 
 | 126 |  | 
 
 
 
 
 | 127 | #define SZ_UME_LOADMENUA "UMELoadMenuA" | 
 
 
 
 
 | 128 | #define SZ_UME_GETEXTENDEDERRORSTRINGA "UMEGetExtendedErrorStringA" | 
 
 
 
 
 | 129 | #define SZ_UME_CREATEA "UMECreateA" | 
 
 
 
 
 | 130 | #define SZ_UME_DELETEA "UMEDeleteA" | 
 
 
 
 
 | 131 | #define SZ_UME_RENAMEA "UMERenameA" | 
 
 
 
 
 | 132 |  | 
 
 
 
 
 | 133 | #define SZ_UME_LOADMENU __MINGW_NAME_AW(SZ_UME_LOADMENU) | 
 
 
 
 
 | 134 | #define SZ_UME_GETEXTENDEDERRORSTRING __MINGW_NAME_AW(SZ_UME_GETEXTENDEDERRORSTRING) | 
 
 
 
 
 | 135 | #define SZ_UME_CREATE __MINGW_NAME_AW(SZ_UME_CREATE) | 
 
 
 
 
 | 136 | #define SZ_UME_DELETE __MINGW_NAME_AW(SZ_UME_DELETE) | 
 
 
 
 
 | 137 | #define SZ_UME_RENAME __MINGW_NAME_AW(SZ_UME_RENAME) | 
 
 
 
 
 | 138 |  | 
 
 
 
 
 | 139 | typedef DWORD (WINAPI *PUMX_LOADMENUW)(HWND hWnd,PUMS_LOADMENUW pumsload); | 
 
 
 
 
 | 140 | typedef DWORD (WINAPI *PUMX_LOADMENUA)(HWND hWnd,PUMS_LOADMENUA pumsload); | 
 
 
 
 
 | 141 |  | 
 
 
 
 
 | 142 | typedef LPWSTR (WINAPI *PUMX_GETEXTENDEDERRORSTRINGW)(VOID); | 
 
 
 
 
 | 143 | typedef LPSTR (WINAPI *PUMX_GETEXTENDEDERRORSTRINGA)(VOID); | 
 
 
 
 
 | 144 | typedef VOID (WINAPI *PUMX_UNLOADMENU)(VOID); | 
 
 
 
 
 | 145 | typedef VOID (WINAPI *PUMX_INITIALIZEMENU)(VOID); | 
 
 
 
 
 | 146 | typedef VOID (WINAPI *PUMX_REFRESH)(HWND hwndParent); | 
 
 
 
 
 | 147 | typedef VOID (WINAPI *PUMX_MENUACTION)(HWND hwndParent,DWORD dwEventId); | 
 
 
 
 
 | 148 | typedef VOID (WINAPI *PUMX_CREATEW)(HWND hwndParent,PUMS_GETSELW pumsSelection); | 
 
 
 
 
 | 149 | typedef VOID (WINAPI *PUMX_CREATEA)(HWND hwndParent,PUMS_GETSELA pumsSelection); | 
 
 
 
 
 | 150 | typedef VOID (WINAPI *PUMX_DELETEW)(HWND hwndParent,PUMS_GETSELW pumsSelection); | 
 
 
 
 
 | 151 | typedef VOID (WINAPI *PUMX_DELETEA)(HWND hwndParent,PUMS_GETSELA pumsSelection); | 
 
 
 
 
 | 152 | typedef VOID (WINAPI *PUMX_RENAMEW)(HWND hwndParent,PUMS_GETSELW pumsSelection,LPWSTR pchNewName); | 
 
 
 
 
 | 153 | typedef VOID (WINAPI *PUMX_RENAMEA)(HWND hwndParent,PUMS_GETSELA pumsSelection,LPSTR pchNewName); | 
 
 
 
 
 | 154 |  | 
 
 
 
 
 | 155 | #define PUMX_LOADMENU __MINGW_NAME_AW(PUMX_LOADMENU) | 
 
 
 
 
 | 156 | #define PUMX_GETEXTENDEDERRORSTRING __MINGW_NAME_AW(PUMX_GETEXTENDEDERRORSTRING) | 
 
 
 
 
 | 157 | #define PUMX_CREATE __MINGW_NAME_AW(PUMX_CREATE) | 
 
 
 
 
 | 158 | #define PUMX_DELETE __MINGW_NAME_AW(PUMX_DELETE) | 
 
 
 
 
 | 159 | #define PUMX_RENAME __MINGW_NAME_AW(PUMX_RENAME) | 
 
 
 
 
 | 160 |  | 
 
 
 
 
 | 161 | DWORD WINAPI UMELoadMenuA(HWND hwndMessage,PUMS_LOADMENUA pumsload); | 
 
 
 
 
 | 162 | DWORD WINAPI UMELoadMenuW(HWND hwndMessage,PUMS_LOADMENUW pumsload); | 
 
 
 
 
 | 163 | LPSTR WINAPI UMEGetExtendedErrorStringA(VOID); | 
 
 
 
 
 | 164 | LPWSTR WINAPI UMEGetExtendedErrorStringW(VOID); | 
 
 
 
 
 | 165 | VOID WINAPI UMEUnloadMenu(VOID); | 
 
 
 
 
 | 166 | VOID WINAPI UMEInitializeMenu(VOID); | 
 
 
 
 
 | 167 | VOID WINAPI UMERefresh(HWND hwndParent); | 
 
 
 
 
 | 168 | VOID WINAPI UMEMenuAction(HWND hwndParent,DWORD dwEventId); | 
 
 
 
 
 | 169 | VOID WINAPI UMECreateA(HWND hwndParent,PUMS_GETSELA pumsSelection); | 
 
 
 
 
 | 170 | VOID WINAPI UMECreateW(HWND hwndParent,PUMS_GETSELW pumsSelection); | 
 
 
 
 
 | 171 | VOID WINAPI UMEDeleteA(HWND hwndParent,PUMS_GETSELA pumsSelection); | 
 
 
 
 
 | 172 | VOID WINAPI UMEDeleteW(HWND hwndParent,PUMS_GETSELW pumsSelection); | 
 
 
 
 
 | 173 | VOID WINAPI UMERenameA(HWND hwndParent,PUMS_GETSELA pumsSelection,LPSTR pchNewName); | 
 
 
 
 
 | 174 | VOID WINAPI UMERenameW(HWND hwndParent,PUMS_GETSELW pumsSelection,LPWSTR pchNewName); | 
 
 
 
 
 | 175 | #endif |