145 lines
2.4 KiB
C++
145 lines
2.4 KiB
C++
|
||
#define COMPUTER_Group 1
|
||
#define DOMAIN_Group 2
|
||
|
||
class CNDSGroup;
|
||
|
||
|
||
class CNDSGroup : INHERIT_TRACKING,
|
||
public ISupportErrorInfo,
|
||
public IADsGroup,
|
||
public IDirectoryObject,
|
||
public IDirectorySearch,
|
||
public IDirectorySchemaMgmt,
|
||
public IADsPropertyList
|
||
|
||
{
|
||
public:
|
||
|
||
/* IUnknown methods */
|
||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
|
||
|
||
DECLARE_STD_REFCOUNTING
|
||
|
||
DECLARE_IDispatch_METHODS
|
||
|
||
DECLARE_ISupportErrorInfo_METHODS
|
||
|
||
DECLARE_IADs_METHODS
|
||
|
||
DECLARE_IDirectoryObject_METHODS
|
||
|
||
DECLARE_IDirectorySearch_METHODS
|
||
|
||
DECLARE_IDirectorySchemaMgmt_METHODS
|
||
|
||
DECLARE_IADsGroup_METHODS
|
||
|
||
DECLARE_IADsPropertyList_METHODS
|
||
|
||
CNDSGroup::CNDSGroup();
|
||
|
||
CNDSGroup::~CNDSGroup();
|
||
|
||
static
|
||
HRESULT
|
||
CNDSGroup::CreateGroup(
|
||
IADs *pADs,
|
||
CCredentials& Credentials,
|
||
REFIID riid,
|
||
void **ppvObj
|
||
);
|
||
|
||
static
|
||
HRESULT
|
||
CNDSGroup::AllocateGroupObject(
|
||
IADs * pADs,
|
||
CCredentials& Credentials,
|
||
CNDSGroup ** ppGroup
|
||
);
|
||
|
||
protected:
|
||
|
||
IADs FAR * _pADs;
|
||
|
||
IDirectoryObject FAR * _pDSObject;
|
||
|
||
IDirectorySearch FAR * _pDSSearch;
|
||
|
||
IDirectorySchemaMgmt FAR * _pDSSchemaMgmt;
|
||
|
||
IADsPropertyList FAR * _pADsPropList;
|
||
|
||
CDispatchMgr FAR * _pDispMgr;
|
||
|
||
|
||
|
||
CCredentials _Credentials;
|
||
};
|
||
|
||
|
||
HRESULT
|
||
VarFindEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers
|
||
);
|
||
|
||
HRESULT
|
||
VarAddEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
HRESULT
|
||
VarMultipleAddEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
|
||
HRESULT
|
||
VarSingleAddEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
HRESULT
|
||
VarRemoveEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
|
||
HRESULT
|
||
VarMultipleRemoveEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
HRESULT
|
||
VarSingleRemoveEntry(
|
||
LPWSTR pszNDSPathName,
|
||
VARIANT varMembers,
|
||
VARIANT * pvarNewMembers
|
||
);
|
||
|
||
HRESULT
|
||
AddEntry(
|
||
IADs * pADs,
|
||
LPWSTR pszAttribute,
|
||
LPWSTR pszValue
|
||
);
|
||
|
||
HRESULT
|
||
RemoveEntry(
|
||
IADs * pADs,
|
||
LPWSTR pszAttribute,
|
||
LPWSTR pszValue
|
||
);
|
||
|
||
|