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.

116 lines
2.4 KiB

  1. // Copyright (c) 2001 Microsoft Corporation
  2. //
  3. // File: POP3InstallationUnit.h
  4. //
  5. // Synopsis: Declares a POP3InstallationUnit
  6. // This object has the knowledge for installing the
  7. // POP3 mail service
  8. //
  9. // History: 12/14/2001 JeffJon Created
  10. #ifndef __CYS_POP3INSTALLATIONUNIT_H
  11. #define __CYS_POP3INSTALLATIONUNIT_H
  12. #include "InstallationUnit.h"
  13. #include <P3Admin.h>
  14. #include <pop3auth.h>
  15. class POP3InstallationUnit : public InstallationUnit
  16. {
  17. public:
  18. // Constructor
  19. POP3InstallationUnit();
  20. // Destructor
  21. virtual
  22. ~POP3InstallationUnit();
  23. // Installation Unit overrides
  24. virtual
  25. InstallationReturnType
  26. InstallService(HANDLE logfileHandle, HWND hwnd);
  27. virtual
  28. UnInstallReturnType
  29. UnInstallService(HANDLE logfileHandle, HWND hwnd);
  30. virtual
  31. bool
  32. GetMilestoneText(String& message);
  33. virtual
  34. bool
  35. GetUninstallMilestoneText(String& message);
  36. virtual
  37. String
  38. GetServiceDescription();
  39. virtual
  40. String
  41. GetFinishText();
  42. virtual
  43. void
  44. ServerRoleLinkSelected(int linkIndex, HWND hwnd);
  45. virtual
  46. void
  47. FinishLinkSelected(int inkIndex, HWND hwnd);
  48. virtual
  49. int
  50. GetWizardStart();
  51. // Accessor functions
  52. void
  53. SetDomainName(const String& domain);
  54. String
  55. GetDomainName() const;
  56. void
  57. SetAuthMethodIndex(int method);
  58. int
  59. GetAuthMethodIndex() const;
  60. HRESULT
  61. GetP3Config(SmartInterface<IP3Config>& p3Config) const;
  62. private:
  63. HRESULT
  64. ConfigAuthMethod(
  65. SmartInterface<IP3Config>& p3Config,
  66. HANDLE logfileHandle);
  67. HRESULT
  68. AddDomainName(
  69. SmartInterface<IP3Config>& p3Config,
  70. HANDLE logfileHandle);
  71. void
  72. ConfigurePOP3Service(HANDLE logfileHandle);
  73. unsigned int
  74. GetPOP3RoleResult() const;
  75. static const unsigned int POP3_SUCCESS = 0x00;
  76. static const unsigned int POP3_AUTH_METHOD_FAILED = 0x01;
  77. static const unsigned int POP3_DOMAIN_NAME_FAILED = 0x02;
  78. static const unsigned int POP3_INSTALL_FAILED = 0x03;
  79. unsigned int pop3RoleResult;
  80. String domainName;
  81. int authMethodIndex;
  82. };
  83. #endif // __CYS_POP3INSTALLATIONUNIT_H