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.

72 lines
1.4 KiB

  1. class FAR CNDSClassEnum : public CNDSEnumVariant
  2. {
  3. public:
  4. // IEnumVARIANT methods
  5. STDMETHOD(Next)(
  6. ULONG cElements,
  7. VARIANT FAR* pvar,
  8. ULONG FAR* pcElementFetched
  9. );
  10. static
  11. HRESULT
  12. Create(
  13. CNDSClassEnum FAR* FAR* ppenumvariant,
  14. BSTR bstrADsPath,
  15. BSTR bstrDomainName,
  16. VARIANT var,
  17. CCredentials& Credentials
  18. );
  19. CNDSClassEnum();
  20. ~CNDSClassEnum();
  21. HRESULT
  22. EnumObjects(
  23. ULONG cElements,
  24. VARIANT FAR * pvar,
  25. ULONG FAR * pcElementFetched
  26. );
  27. private:
  28. ObjectTypeList FAR *_pObjList;
  29. LPNDS_CLASS_DEF _lpClassDefs;
  30. HANDLE _hOperationData;
  31. HANDLE _hTree;
  32. BSTR _bstrName;
  33. BSTR _bstrADsPath;
  34. BSTR _bstrNDSTreeName;
  35. DWORD _dwCurrentEntry;
  36. DWORD _dwObjectCurrentEntry;
  37. DWORD _dwObjectReturned;
  38. DWORD _dwInfoType;
  39. PPROPENTRY _pPropNameList;
  40. PPROPENTRY _pCurrentEntry;
  41. CCredentials _Credentials;
  42. HRESULT
  43. CNDSClassEnum::GetPropertyObject(
  44. IDispatch **ppDispatch
  45. );
  46. HRESULT
  47. EnumProperties(
  48. ULONG cElements,
  49. VARIANT FAR* pvar,
  50. ULONG FAR* pcElementFetched
  51. );
  52. HRESULT
  53. CNDSClassEnum::EnumObjects(
  54. DWORD ObjectType,
  55. ULONG cElements,
  56. VARIANT FAR * pvar,
  57. ULONG FAR * pcElementFetched
  58. );
  59. };