Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

74 lines
1.4 KiB

class FAR CNDSClassEnum : public CNDSEnumVariant
{
public:
// IEnumVARIANT methods
STDMETHOD(Next)(
ULONG cElements,
VARIANT FAR* pvar,
ULONG FAR* pcElementFetched
);
static
HRESULT
Create(
CNDSClassEnum FAR* FAR* ppenumvariant,
BSTR bstrADsPath,
BSTR bstrDomainName,
VARIANT var,
CCredentials& Credentials
);
CNDSClassEnum();
~CNDSClassEnum();
HRESULT
EnumObjects(
ULONG cElements,
VARIANT FAR * pvar,
ULONG FAR * pcElementFetched
);
private:
ObjectTypeList FAR *_pObjList;
PNDS_CLASS_DEF _lpClassDefs;
HANDLE _hOperationData;
NDS_CONTEXT_HANDLE _hADsContext;
BSTR _bstrName;
BSTR _bstrADsPath;
BSTR _pszNDSTreeName;
DWORD _dwCurrentEntry;
DWORD _dwObjectCurrentEntry;
DWORD _dwObjectReturned;
DWORD _dwInfoType;
PPROPENTRY _pPropNameList;
PPROPENTRY _pCurrentEntry;
CCredentials _Credentials;
BOOL _bNoMore;
HRESULT
CNDSClassEnum::GetPropertyObject(
IDispatch **ppDispatch
);
HRESULT
EnumProperties(
ULONG cElements,
VARIANT FAR* pvar,
ULONG FAR* pcElementFetched
);
HRESULT
CNDSClassEnum::EnumObjects(
DWORD ObjectType,
ULONG cElements,
VARIANT FAR * pvar,
ULONG FAR * pcElementFetched
);
};