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.

48 lines
1.4 KiB

  1. // P3UserEnum.h : Declaration of the CP3UserEnum
  2. #ifndef __P3USERENUM_H_
  3. #define __P3USERENUM_H_
  4. #include "resource.h" // main symbols
  5. #include <POP3Server.h>
  6. /////////////////////////////////////////////////////////////////////////////
  7. // CP3UserEnum
  8. class ATL_NO_VTABLE CP3UserEnum :
  9. public CComObjectRootEx<CComSingleThreadModel>,
  10. public CComCoClass<CP3UserEnum, &CLSID_P3UserEnum>,
  11. public IEnumVARIANT
  12. {
  13. public:
  14. CP3UserEnum();
  15. virtual ~CP3UserEnum();
  16. DECLARE_REGISTRY_RESOURCEID(IDR_P3USERENUM)
  17. DECLARE_PROTECT_FINAL_CONSTRUCT()
  18. BEGIN_COM_MAP(CP3UserEnum)
  19. COM_INTERFACE_ENTRY(IEnumVARIANT)
  20. END_COM_MAP()
  21. // IEnumVARIANT
  22. public:
  23. HRESULT STDMETHODCALLTYPE Next( /* [in] */ ULONG celt, /* [length_is][size_is][out] */ VARIANT __RPC_FAR *rgVar, /* [out] */ ULONG __RPC_FAR *pCeltFetched);
  24. HRESULT STDMETHODCALLTYPE Skip( /* [in] */ ULONG celt);
  25. HRESULT STDMETHODCALLTYPE Reset( void);
  26. HRESULT STDMETHODCALLTYPE Clone( /* [out] */ IEnumVARIANT __RPC_FAR *__RPC_FAR *ppEnum);
  27. // Implementation
  28. public:
  29. HRESULT Init( IUnknown *pIUnk, CP3AdminWorker *pAdminX, LPCWSTR psDomainName );
  30. // Attributes
  31. protected:
  32. IUnknown *m_pIUnk;
  33. CP3AdminWorker *m_pAdminX; // This is the object that actually does all the work.
  34. WCHAR m_sDomainName[POP3_MAX_DOMAIN_LENGTH];
  35. HANDLE m_hfSearch;
  36. };
  37. #endif //__P3USERENUM_H_