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.

83 lines
1.7 KiB

  1. //---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1997
  5. //
  6. // File: cenumobj.hxx
  7. //
  8. // Contents: IIS Object Enumeration Code
  9. //
  10. // History: 21-Feb-97 SophiaC Created.
  11. //----------------------------------------------------------------------------
  12. class FAR CIISGenObjectEnum : public CIISEnumVariant
  13. {
  14. public:
  15. CIISGenObjectEnum(ObjectTypeList ObjList);
  16. CIISGenObjectEnum();
  17. ~CIISGenObjectEnum();
  18. HRESULT
  19. EnumObjects(
  20. ULONG cElements,
  21. VARIANT FAR * pvar,
  22. ULONG FAR * pcElementFetched
  23. );
  24. static
  25. HRESULT
  26. CIISGenObjectEnum::Create(
  27. CIISGenObjectEnum FAR* FAR* ppenumvariant,
  28. BSTR ADsPath,
  29. VARIANT var,
  30. CCredentials& Credentials
  31. );
  32. private:
  33. DWORD _dwObjectCurrentEntry;
  34. BSTR _ADsPath;
  35. LPWSTR _pszServerName;
  36. LPWSTR _pszMetaBasePath;
  37. IMSAdminBase *_pAdminBase; //interface pointer
  38. IIsSchema *_pSchema;
  39. CCredentials _Credentials;
  40. HRESULT
  41. CIISGenObjectEnum::GetGenObject(
  42. IDispatch ** ppDispatch
  43. );
  44. HRESULT
  45. EnumGenericObjects(
  46. ULONG cElements,
  47. VARIANT FAR* pvar,
  48. ULONG FAR* pcElementFetched
  49. );
  50. STDMETHOD(Next)(
  51. ULONG cElements,
  52. VARIANT FAR* pvar,
  53. ULONG FAR* pcElementFetched
  54. );
  55. };
  56. HRESULT
  57. BuildIISFilterArray(
  58. VARIANT var,
  59. LPBYTE * ppContigFilter
  60. );
  61. void
  62. FreeFilterList(
  63. LPBYTE lpContigFilter
  64. );
  65. LPBYTE
  66. CreateAndAppendFilterEntry(
  67. LPBYTE pContigFilter,
  68. LPWSTR lpObjectClass
  69. );