WindowsXP-SP1/ds/adsi/nds/cenumns.hxx

66 lines
1.2 KiB
C++

class FAR CNDSNamespaceEnum : public CNDSEnumVariant
{
public:
// IEnumVARIANT methods
STDMETHOD(Next)(ULONG cElements,
VARIANT FAR* pvar,
ULONG FAR* pcElementFetched);
static
HRESULT
Create(
CNDSNamespaceEnum FAR* FAR*,
VARIANT var,
CCredentials& Credentials
);
CNDSNamespaceEnum();
~CNDSNamespaceEnum();
HRESULT
PrepBuffer();
HRESULT
FetchNextObject(
IDispatch ** ppDispatch
);
HRESULT
FetchObjects(
ULONG cElements,
VARIANT FAR* pvar,
ULONG FAR* pcElementFetched
);
HRESULT
CNDSNamespaceEnum::EnumObjects(
ULONG cElements,
VARIANT FAR* pvar,
ULONG FAR* pcElementFetched
);
HRESULT
CNDSNamespaceEnum::EnumObjects(
DWORD ObjectType,
ULONG cElements,
VARIANT FAR * pvar,
ULONG FAR * pcElementFetched
);
private:
ObjectTypeList FAR *_pObjList;
DWORD _dwEntriesRead;
DWORD _dwCurrentEntry;
HANDLE _hEnum;
LPVOID _pBuffer;
LPVOID _pBufferEnd;
CCredentials _Credentials;
};