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.

55 lines
1.8 KiB

  1. // P3User.h : Declaration of the CP3User
  2. #ifndef __P3USER_H_
  3. #define __P3USER_H_
  4. #include "resource.h" // main symbols
  5. #include <POP3Server.h>
  6. /////////////////////////////////////////////////////////////////////////////
  7. // CP3User
  8. class ATL_NO_VTABLE CP3User :
  9. public CComObjectRootEx<CComSingleThreadModel>,
  10. public CComCoClass<CP3User, &CLSID_P3User>,
  11. public IDispatchImpl<IP3User, &IID_IP3User, &LIBID_P3ADMINLib>
  12. {
  13. public:
  14. CP3User();
  15. virtual ~CP3User();
  16. DECLARE_REGISTRY_RESOURCEID(IDR_P3USER)
  17. DECLARE_PROTECT_FINAL_CONSTRUCT()
  18. BEGIN_COM_MAP(CP3User)
  19. COM_INTERFACE_ENTRY(IP3User)
  20. COM_INTERFACE_ENTRY(IDispatch)
  21. END_COM_MAP()
  22. // IP3User
  23. public:
  24. STDMETHOD(get_ClientConfigDesc)(/*[out, retval]*/ BSTR *pVal);
  25. STDMETHOD(get_SAMName)(/*[out, retval]*/ BSTR *pVal);
  26. STDMETHOD(CreateQuotaFile)(/*[in]*/ BSTR bstrMachineName, /*[in]*/ BSTR bstrUserName );
  27. STDMETHOD(GetMessageDiskUsage)(/*[out]*/ VARIANT *pvFactor, /*[out]*/ VARIANT *pvValue);
  28. STDMETHOD(get_EmailName)(/*[out, retval]*/ BSTR *pVal);
  29. STDMETHOD(get_MessageDiskUsage)(/*[out]*/ long *plFactor, /*[out]*/ long *pVal);
  30. STDMETHOD(get_MessageCount)(/*[out, retval]*/ long *pVal);
  31. STDMETHOD(get_Name)(/*[out, retval]*/ BSTR *pVal);
  32. STDMETHOD(get_Lock)(/*[out, retval]*/ BOOL *pVal);
  33. STDMETHOD(put_Lock)(/*[in]*/ BOOL newVal);
  34. // Implementation
  35. public:
  36. HRESULT Init( IUnknown *pIUnk, CP3AdminWorker *pAdminX, LPCWSTR psDomainName , LPCWSTR psUserName );
  37. // Attributes
  38. protected:
  39. IUnknown *m_pIUnk;
  40. CP3AdminWorker *m_pAdminX; // This is the object that actually does all the work.
  41. WCHAR m_sDomainName[POP3_MAX_DOMAIN_LENGTH];
  42. WCHAR m_sUserName[POP3_MAX_MAILBOX_LENGTH];
  43. };
  44. #endif //__P3USER_H_