85 lines
1.6 KiB
C++
85 lines
1.6 KiB
C++
class CLDAPRootDSE : INHERIT_TRACKING,
|
|
public CCoreADsObject,
|
|
public ISupportErrorInfo,
|
|
public IADs,
|
|
public IADsPropertyList,
|
|
public IGetAttributeSyntax,
|
|
public IADsObjectOptions
|
|
{
|
|
public:
|
|
|
|
/* IUnknown methods */
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
|
|
|
|
DECLARE_STD_REFCOUNTING
|
|
|
|
DECLARE_IDispatch_METHODS
|
|
|
|
DECLARE_ISupportErrorInfo_METHODS
|
|
|
|
DECLARE_IADs_METHODS
|
|
|
|
DECLARE_IADsPropertyList_METHODS
|
|
|
|
DECLARE_IGetAttributeSyntax_METHODS
|
|
|
|
DECLARE_IADsObjectOptions_METHODS
|
|
|
|
CLDAPRootDSE::CLDAPRootDSE();
|
|
|
|
CLDAPRootDSE::~CLDAPRootDSE();
|
|
|
|
static
|
|
HRESULT
|
|
CLDAPRootDSE::CreateRootDSE(
|
|
BSTR Parent,
|
|
BSTR CommonName,
|
|
BSTR LdapClassName,
|
|
CCredentials& Credentials,
|
|
DWORD dwObjectState,
|
|
REFIID riid,
|
|
void **ppvObj
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CLDAPRootDSE::AllocateGenObject(
|
|
CCredentials& Credentials,
|
|
CLDAPRootDSE ** ppGenObject
|
|
);
|
|
|
|
STDMETHOD(GetInfo)(
|
|
DWORD dwFlags
|
|
);
|
|
|
|
STDMETHOD(GetInfo)(
|
|
LPWSTR szPropertyName,
|
|
DWORD dwSyntaxId,
|
|
BOOL fExplicit
|
|
);
|
|
|
|
|
|
HRESULT
|
|
CLDAPRootDSE::LDAPSetObject();
|
|
|
|
protected:
|
|
|
|
VARIANT _vFilter;
|
|
|
|
VARIANT _vHints;
|
|
|
|
CPropertyCache FAR * _pPropertyCache;
|
|
|
|
CAggregatorDispMgr FAR * _pDispMgr;
|
|
|
|
LPWSTR _pszLDAPServer;
|
|
LPWSTR _pszLDAPDn;
|
|
|
|
PADSLDP _pLdapHandle;
|
|
|
|
CCredentials _Credentials;
|
|
|
|
DWORD _dwPort;
|
|
};
|
|
|