Leaked source code of windows server 2003
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.

80 lines
2.1 KiB

  1. //---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1997
  5. //
  6. // File: cenumsch.hxx
  7. //
  8. // Contents: IIS Schema Enumeration Code
  9. //
  10. // History:
  11. //----------------------------------------------------------------------------
  12. class FAR CIISSchemaEnum : public CIISEnumVariant
  13. {
  14. public:
  15. // IEnumVARIANT methods
  16. STDMETHOD(Next)( ULONG cElements,
  17. VARIANT FAR* pvar,
  18. ULONG FAR* pcElementFetched);
  19. static HRESULT Create( CIISSchemaEnum FAR* FAR* ppenumvariant,
  20. IIsSchema * pSchema,
  21. BSTR bstrADsPath,
  22. BSTR bstrDomainName);
  23. CIISSchemaEnum();
  24. ~CIISSchemaEnum();
  25. HRESULT EnumObjects( ULONG cElements,
  26. VARIANT FAR * pvar,
  27. ULONG FAR * pcElementFetched );
  28. private:
  29. ObjectTypeList FAR *_pObjList;
  30. BSTR _bstrName;
  31. BSTR _bstrADsPath;
  32. DWORD _dwCurrentEntry;
  33. IIsSchema *_pSchema;
  34. HRESULT
  35. CIISSchemaEnum::GetClassObject( IDispatch **ppDispatch );
  36. HRESULT
  37. EnumClasses( ULONG cElements,
  38. VARIANT FAR* pvar,
  39. ULONG FAR* pcElementFetched );
  40. HRESULT
  41. CIISSchemaEnum::GetSyntaxObject( IDispatch **ppDispatch );
  42. HRESULT
  43. CIISSchemaEnum::GetPropertyObject(
  44. IDispatch ** ppDispatch
  45. );
  46. HRESULT
  47. EnumSyntaxObjects( ULONG cElements,
  48. VARIANT FAR* pvar,
  49. ULONG FAR* pcElementFetched );
  50. HRESULT
  51. CIISSchemaEnum::EnumObjects( DWORD ObjectType,
  52. ULONG cElements,
  53. VARIANT FAR * pvar,
  54. ULONG FAR * pcElementFetched );
  55. HRESULT
  56. CIISSchemaEnum::EnumProperties(
  57. ULONG cElements,
  58. VARIANT FAR* pvar,
  59. ULONG FAR* pcElementFetched
  60. );
  61. };