📄 aclapi.h
字号:
#ifndef _ACLAPI_H#define _ACLAPI_H#if __GNUC__ >= 3#pragma GCC system_header#endif#include <windows.h>#include <accctrl.h>#ifdef __cplusplusextern "C" {#endifWINADVAPI VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,DWORD,ACCESS_MODE,DWORD);WINADVAPI VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,DWORD,ACCESS_MODE,DWORD);WINADVAPI DWORD WINAPI BuildSecurityDescriptorA(PTRUSTEE_A,PTRUSTEE_A ,ULONG,PEXPLICIT_ACCESS_A, ULONG,PEXPLICIT_ACCESS_A,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*);WINADVAPI DWORD WINAPI BuildSecurityDescriptorW(PTRUSTEE_W,PTRUSTEE_W ,ULONG,PEXPLICIT_ACCESS_W, ULONG,PEXPLICIT_ACCESS_W,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*);WINADVAPI VOID WINAPI BuildTrusteeWithNameA(PTRUSTEE_A,LPSTR);WINADVAPI VOID WINAPI BuildTrusteeWithNameW(PTRUSTEE_W,LPWSTR);WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndNameA(PTRUSTEE_A,POBJECTS_AND_NAME_A,SE_OBJECT_TYPE, LPSTR,LPSTR,LPSTR);WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndNameW(PTRUSTEE_W,POBJECTS_AND_NAME_W,SE_OBJECT_TYPE, LPWSTR,LPWSTR,LPWSTR);WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndSidA(PTRUSTEE_A,POBJECTS_AND_SID,GUID*,GUID*,PSID);WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndSidW(PTRUSTEE_W,POBJECTS_AND_SID,GUID*,GUID*,PSID);WINADVAPI VOID WINAPI BuildTrusteeWithSidA(PTRUSTEE_A,PSID);WINADVAPI VOID WINAPI BuildTrusteeWithSidW(PTRUSTEE_W,PSID);WINADVAPI DWORD WINAPI GetAuditedPermissionsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK,PACCESS_MASK);WINADVAPI DWORD WINAPI GetAuditedPermissionsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK,PACCESS_MASK);WINADVAPI DWORD WINAPI GetEffectiveRightsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK);WINADVAPI DWORD WINAPI GetEffectiveRightsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK);WINADVAPI DWORD WINAPI GetExplicitEntriesFromAclA(PACL,PULONG,PEXPLICIT_ACCESS_A*);WINADVAPI DWORD WINAPI GetExplicitEntriesFromAclW(PACL,PULONG,PEXPLICIT_ACCESS_W*);#if (_WIN32_WINNT >= 0x0501)WINADVAPI DWORD WINAPI GetInheritanceSourceA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,void*,PGENERIC_MAPPING,PINHERITED_FROMA);WINADVAPI DWORD WINAPI GetInheritanceSourceW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,void*,PGENERIC_MAPPING,PINHERITED_FROMW);#endifWINADVAPI DWORD WINAPI GetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);WINADVAPI DWORD WINAPI GetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION, PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);WINADVAPI DWORD WINAPI GetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION, PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);WINADVAPI TRUSTEE_FORM WINAPI GetTrusteeFormA(PTRUSTEE_A);WINADVAPI TRUSTEE_FORM WINAPI GetTrusteeFormW(PTRUSTEE_W);WINADVAPI LPSTR WINAPI GetTrusteeNameA(PTRUSTEE_A);WINADVAPI LPWSTR WINAPI GetTrusteeNameW(PTRUSTEE_W);WINADVAPI TRUSTEE_TYPE WINAPI GetTrusteeTypeA(PTRUSTEE_A);WINADVAPI TRUSTEE_TYPE WINAPI GetTrusteeTypeW(PTRUSTEE_W);WINADVAPI DWORD WINAPI LookupSecurityDescriptorPartsA(PTRUSTEE_A*,PTRUSTEE_A*,PULONG,PEXPLICIT_ACCESS_A*, PULONG,PEXPLICIT_ACCESS_A*,PSECURITY_DESCRIPTOR);WINADVAPI DWORD WINAPI LookupSecurityDescriptorPartsW(PTRUSTEE_W*,PTRUSTEE_W*,PULONG,PEXPLICIT_ACCESS_W*, PULONG,PEXPLICIT_ACCESS_W*,PSECURITY_DESCRIPTOR);WINADVAPI DWORD WINAPI SetEntriesInAclA(ULONG,PEXPLICIT_ACCESS_A,PACL,PACL*);WINADVAPI DWORD WINAPI SetEntriesInAclW(ULONG,PEXPLICIT_ACCESS_W,PACL,PACL*);WINADVAPI DWORD WINAPI SetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);WINADVAPI DWORD WINAPI SetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);WINADVAPI DWORD WINAPI SetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);WINADVAPI VOID WINAPI BuildImpersonateExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,PTRUSTEE_A,DWORD,ACCESS_MODE,DWORD);WINADVAPI VOID WINAPI BuildImpersonateExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,PTRUSTEE_W,DWORD,ACCESS_MODE,DWORD);WINADVAPI VOID WINAPI BuildImpersonateTrusteeA(PTRUSTEE_A,PTRUSTEE_A);WINADVAPI VOID WINAPI BuildImpersonateTrusteeW(PTRUSTEE_W,PTRUSTEE_W);WINADVAPI PTRUSTEE_A WINAPI GetMultipleTrusteeA(PTRUSTEE_A);WINADVAPI PTRUSTEE_W WINAPI GetMultipleTrusteeW(PTRUSTEE_W);WINADVAPI MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationA(PTRUSTEE_A);WINADVAPI MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationW(PTRUSTEE_W);#ifdef UNICODE#define BuildExplicitAccessWithName BuildExplicitAccessWithNameW#define BuildSecurityDescriptor BuildSecurityDescriptorW#define BuildTrusteeWithName BuildTrusteeWithNameW#define BuildTrusteeWithObjectsAndName BuildTrusteeWithObjectsAndNameW#define BuildTrusteeWithObjectsAndSid BuildTrusteeWithObjectsAndSidW#define BuildTrusteeWithSid BuildTrusteeWithSidW#define GetAuditedPermissionsFromAcl GetAuditedPermissionsFromAclW#define GetEffectiveRightsFromAcl GetEffectiveRightsFromAclW#define GetExplicitEntriesFromAcl GetExplicitEntriesFromAclW#define GetNamedSecurityInfo GetNamedSecurityInfoW#define GetTrusteeForm GetTrusteeFormW#define GetTrusteeName GetTrusteeNameW#define GetTrusteeType GetTrusteeTypeW#define LookupSecurityDescriptorParts LookupSecurityDescriptorPartsW#define SetEntriesInAcl SetEntriesInAclW#define SetNamedSecurityInfo SetNamedSecurityInfoW#define BuildImpersonateExplicitAccessWithName BuildImpersonateExplicitAccessWithNameW#define BuildImpersonateTrustee BuildImpersonateTrusteeW#define GetMultipleTrustee GetMultipleTrusteeW#define GetMultipleTrusteeOperation GetMultipleTrusteeOperationW#else#define BuildExplicitAccessWithName BuildExplicitAccessWithNameA#define BuildSecurityDescriptor BuildSecurityDescriptorA#define BuildTrusteeWithName BuildTrusteeWithNameA#define BuildTrusteeWithObjectsAndName BuildTrusteeWithObjectsAndNameA#define BuildTrusteeWithObjectsAndSid BuildTrusteeWithObjectsAndSidA#define BuildTrusteeWithSid BuildTrusteeWithSidA#define GetAuditedPermissionsFromAcl GetAuditedPermissionsFromAclA#define GetEffectiveRightsFromAcl GetEffectiveRightsFromAclA#define GetExplicitEntriesFromAcl GetExplicitEntriesFromAclA#define GetNamedSecurityInfo GetNamedSecurityInfoA#define GetTrusteeForm GetTrusteeFormA#define GetTrusteeName GetTrusteeNameA#define GetTrusteeType GetTrusteeTypeA#define LookupSecurityDescriptorParts LookupSecurityDescriptorPartsA#define SetEntriesInAcl SetEntriesInAclA#define SetNamedSecurityInfo SetNamedSecurityInfoA#define BuildImpersonateExplicitAccessWithName BuildImpersonateExplicitAccessWithNameA#define BuildImpersonateTrustee BuildImpersonateTrusteeA#define GetMultipleTrustee GetMultipleTrusteeA#define GetMultipleTrusteeOperation GetMultipleTrusteeOperationA#endif /* UNICODE */#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -