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.

168 lines
3.8 KiB

  1. // Copyright (c) 2001 Microsoft Corporation
  2. //
  3. // File: FileInstallationUnit.h
  4. //
  5. // Synopsis: Declares a FileInstallationUnit
  6. // This object has the knowledge for installing the
  7. // disk quotas and such
  8. //
  9. // History: 02/06/2001 JeffJon Created
  10. #ifndef __CYS_FILEINSTALLATIONUNIT_H
  11. #define __CYS_FILEINSTALLATIONUNIT_H
  12. #include "InstallationUnit.h"
  13. class FileInstallationUnit : public InstallationUnit
  14. {
  15. public:
  16. // Constructor
  17. FileInstallationUnit();
  18. // Destructor
  19. virtual
  20. ~FileInstallationUnit();
  21. // Installation Unit overrides
  22. virtual
  23. InstallationReturnType
  24. InstallService(HANDLE logfileHandle, HWND hwnd);
  25. virtual
  26. UnInstallReturnType
  27. UnInstallService(HANDLE logfileHandle, HWND hwnd);
  28. virtual
  29. InstallationReturnType
  30. CompletePath(HANDLE logfileHandle, HWND hwnd);
  31. virtual
  32. bool
  33. GetMilestoneText(String& message);
  34. virtual
  35. bool
  36. GetUninstallMilestoneText(String& message);
  37. virtual
  38. String
  39. GetFinishText();
  40. virtual
  41. int
  42. GetWizardStart();
  43. virtual
  44. String
  45. GetServiceDescription();
  46. virtual
  47. void
  48. ServerRoleLinkSelected(int linkIndex, HWND hwnd);
  49. virtual
  50. void
  51. FinishLinkSelected(int inkIndex, HWND hwnd);
  52. void
  53. SetSpaceQuotaValue(LONGLONG value);
  54. LONGLONG
  55. GetSpaceQuotaValue() const { return spaceQuotaValue; }
  56. void
  57. SetLevelQuotaValue(LONGLONG value);
  58. LONGLONG
  59. GetLevelQuotaValue() const { return levelQuotaValue; }
  60. void
  61. SetDefaultQuotas(bool value);
  62. bool
  63. GetDefaultQuotas() const { return setDefaultQuotas; }
  64. void
  65. SetDenyUsersOverQuota(bool value);
  66. bool
  67. GetDenyUsersOverQuota() const { return denyUsersOverQuota; }
  68. void
  69. SetEventDiskSpaceLimit(bool value);
  70. bool
  71. GetEventDiskSpaceLimit() const { return eventDiskSpaceLimit; }
  72. void
  73. SetEventWarningLevel(bool value);
  74. bool
  75. GetEventWarningLevel() const { return eventWarningLevel; }
  76. void
  77. SetInstallIndexingService(bool value);
  78. bool
  79. GetInstallIndexingService() const { return installIndexingService; }
  80. private:
  81. static const unsigned int FILE_SUCCESS = 0x0;
  82. static const unsigned int FILE_QUOTA_FAILURE = 0x1;
  83. static const unsigned int FILE_INDEXING_STOP_FAILURE = 0x2;
  84. static const unsigned int FILE_INDEXING_START_FAILURE = 0x4;
  85. static const unsigned int FILE_NO_SHARES_FAILURE = 0x8;
  86. bool
  87. RemoveSharedPublicFolders();
  88. bool
  89. RemoveFileManagementConsole();
  90. bool
  91. AreQuotasSet() const;
  92. bool
  93. IsFileServerConsolePresent() const;
  94. bool
  95. IsServerManagementConsolePresent() const;
  96. HRESULT
  97. GetStartMenuShortcutPath(String& startMenuShortcutPath) const;
  98. bool
  99. AddFileServerConsoleToStartMenu(HANDLE logfileHandle);
  100. HRESULT
  101. WriteDiskQuotas(HANDLE logfileHandle);
  102. bool
  103. AppendDiskQuotaText(String& message);
  104. bool
  105. AppendIndexingText(String& message);
  106. bool
  107. AppendAdminText(String& message);
  108. void
  109. RunSharedFoldersWizard(bool wait = false) const;
  110. LONGLONG spaceQuotaValue;
  111. LONGLONG levelQuotaValue;
  112. bool setDefaultQuotas;
  113. bool denyUsersOverQuota;
  114. bool eventDiskSpaceLimit;
  115. bool eventWarningLevel;
  116. bool installIndexingService;
  117. unsigned int fileRoleResult;
  118. };
  119. #endif // __CYS_FILEINSTALLATIONUNIT_H