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.

126 lines
2.5 KiB

  1. // Copyright (c) 2001 Microsoft Corporation
  2. //
  3. // File: DNSInstallationUnit.h
  4. //
  5. // Synopsis: Declares a DNSInstallationUnit
  6. // This object has the knowledge for installing the
  7. // DNS service
  8. //
  9. // History: 02/05/2001 JeffJon Created
  10. #ifndef __CYS_DNSINSTALLATIONUNIT_H
  11. #define __CYS_DNSINSTALLATIONUNIT_H
  12. #include "NetworkInterface.h"
  13. #include "ExpressPathInstallationUnitBase.h"
  14. class DNSInstallationUnit : public ExpressPathInstallationUnitBase
  15. {
  16. public:
  17. // Constructor
  18. DNSInstallationUnit();
  19. // Destructor
  20. virtual
  21. ~DNSInstallationUnit();
  22. // Installation Unit overrides
  23. virtual
  24. InstallationReturnType
  25. InstallService(HANDLE logfileHandle, HWND hwnd);
  26. virtual
  27. UnInstallReturnType
  28. UnInstallService(HANDLE logfileHandle, HWND hwnd);
  29. virtual
  30. InstallationReturnType
  31. ExpressPathInstall(HANDLE logfileHandle, HWND hwnd);
  32. virtual
  33. bool
  34. GetMilestoneText(String& message);
  35. virtual
  36. bool
  37. GetUninstallMilestoneText(String& message);
  38. virtual
  39. String
  40. GetUninstallWarningText();
  41. virtual
  42. String
  43. GetFinishText();
  44. virtual
  45. String
  46. GetServiceDescription();
  47. virtual
  48. void
  49. ServerRoleLinkSelected(int linkIndex, HWND hwnd);
  50. virtual
  51. void
  52. FinishLinkSelected(int inkIndex, HWND hwnd);
  53. void
  54. SetStaticIPAddress(DWORD ipaddress);
  55. DWORD
  56. GetStaticIPAddress();
  57. String
  58. GetStaticIPAddressString();
  59. void
  60. SetSubnetMask(DWORD mask);
  61. DWORD
  62. GetSubnetMask();
  63. String
  64. GetSubnetMaskString();
  65. void
  66. SetForwarder(DWORD forwarderAddress);
  67. void
  68. GetForwarders(IPAddressList& forwarders) const;
  69. bool
  70. IsManualForwarder() const;
  71. private:
  72. enum DNSRoleResult
  73. {
  74. DNS_SUCCESS,
  75. DNS_INSTALL_FAILURE,
  76. DNS_CONFIG_FAILURE,
  77. DNS_SERVICE_START_FAILURE
  78. };
  79. bool
  80. ReadConfigWizardRegkeys(String& configWizardResults) const;
  81. void
  82. SetForwardersForExpressPath();
  83. DNSRoleResult dnsRoleResult;
  84. // Express path members
  85. DWORD staticIPAddress;
  86. DWORD subnetMask;
  87. DWORD forwarderIPAddress;
  88. bool manualForwarder;
  89. unsigned int installedDescriptionID;
  90. };
  91. #endif // __CYS_DNSINSTALLATIONUNIT_H