67 lines
1.3 KiB
C++
67 lines
1.3 KiB
C++
|
|
class CAccessControlEntry;
|
|
|
|
|
|
class CAccessControlEntry : INHERIT_TRACKING,
|
|
public ISupportErrorInfo,
|
|
public IADsAccessControlEntry,
|
|
public IADsAcePrivate
|
|
{
|
|
public:
|
|
|
|
/* IUnknown methods */
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
|
|
|
|
DECLARE_STD_REFCOUNTING
|
|
|
|
DECLARE_IDispatch_METHODS
|
|
|
|
DECLARE_ISupportErrorInfo_METHODS
|
|
|
|
DECLARE_IADsAccessControlEntry_METHODS
|
|
|
|
CAccessControlEntry::CAccessControlEntry();
|
|
|
|
CAccessControlEntry::~CAccessControlEntry();
|
|
|
|
//
|
|
// IADsAcePrivate methods.
|
|
//
|
|
STDMETHOD(getSid)(THIS_ PSID *pSid, DWORD *pdwLength);
|
|
STDMETHOD(putSid)(THIS_ PSID pSid, DWORD dwLength);
|
|
STDMETHOD(isSidValid)(THIS_ BOOL *pfSidValid);
|
|
|
|
static
|
|
HRESULT
|
|
CAccessControlEntry::CreateAccessControlEntry(
|
|
REFIID riid,
|
|
void **ppvObj
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CAccessControlEntry::AllocateAccessControlEntryObject(
|
|
CAccessControlEntry ** ppAccessControlEntry
|
|
);
|
|
|
|
protected:
|
|
|
|
CDispatchMgr FAR * _pDispMgr;
|
|
|
|
|
|
DWORD _dwAccessMask;
|
|
DWORD _dwAceFlags;
|
|
DWORD _dwAceType;
|
|
DWORD _dwFlags;
|
|
|
|
LPWSTR _lpTrustee;
|
|
|
|
LPWSTR _lpObjectType;
|
|
|
|
LPWSTR _lpInheritedObjectType;
|
|
|
|
PSID _pSid;
|
|
DWORD _dwSidLen;
|
|
|
|
};
|