1 #ifndef _ACLEDIT_H 2 #define _ACLEDIT_H 3 4 #include <windef.h> 5 6 extern HINSTANCE hDllInstance; 7 8 typedef struct _ACL_HELP_CONTROL 9 { 10 LPWSTR lpHelpFile; 11 DWORD dwMainDialogTopic; 12 DWORD dwACLEditorDialogTopic; 13 DWORD Reserved1; 14 DWORD dwAddEntryDialogTopic; 15 DWORD Reserved2; 16 DWORD Reserved3; 17 DWORD dwAccountDialogTopic; 18 } ACL_HELP_CONTROL, *PACL_HELP_CONTROL; 19 20 typedef struct _ACL_DLG_CONTROL 21 { 22 UCHAR ucVersion; 23 BOOL bIsContainer; 24 BOOL bAllowNewObject; 25 BOOL bMapSpecificToGeneric; 26 LPDWORD lpdwGenericAccessMap; 27 LPDWORD lpdwGenericMappingNewObjects; 28 LPWSTR lpDialogTitle; 29 PACL_HELP_CONTROL pHelpInfo; 30 LPWSTR lpSubReplaceTitle; 31 LPWSTR lpSubReplaceObjectsTitle; 32 LPWSTR lpSubReplaceConfirmation; 33 LPWSTR lpSpecialAccess; 34 LPWSTR lpSpecialNewAccess; 35 } ACL_DLG_CONTROL, *PACL_DLG_CONTROL; 36 37 typedef struct _ACL_EDIT_ENTRY{ 38 DWORD dwType; 39 DWORD dwAccessMask; 40 DWORD dwAccessMask1; 41 LPWSTR lpName; 42 } ACL_EDIT_ENTRY, *PACL_EDIT_ENTRY; 43 44 typedef struct _ACL_EDIT_CONTROL 45 { 46 DWORD dwNumberOfEntries; 47 PACL_EDIT_ENTRY pEntries; 48 LPWSTR lpDefaultPermissionName; 49 } ACL_EDIT_CONTROL, *PACL_EDIT_CONTROL; 50 51 typedef DWORD (CALLBACK *PACL_CHANGE)(HWND hWnd, 52 HINSTANCE hInstance, 53 PVOID pCallbackContext, 54 PSECURITY_DESCRIPTOR pNewSD, 55 PSECURITY_DESCRIPTOR pNewObjectSD, 56 BOOL bApplyToSubContainers, 57 BOOL bApplyToSubObjects, 58 LPDWORD lpdwChangeContextStatus); 59 60 #endif /* _ACLEDIT_H */ 61