windows-nt/Source/XPSP1/NT/ds/adsi/router/cace.hxx
2020-09-26 16:20:57 +08:00

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;
};