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.
 
 
 
 
 
 

127 lines
2.5 KiB

// Copyright (c) 2001 Microsoft Corporation
//
// File: DNSInstallationUnit.h
//
// Synopsis: Declares a DNSInstallationUnit
// This object has the knowledge for installing the
// DNS service
//
// History: 02/05/2001 JeffJon Created
#ifndef __CYS_DNSINSTALLATIONUNIT_H
#define __CYS_DNSINSTALLATIONUNIT_H
#include "NetworkInterface.h"
#include "ExpressPathInstallationUnitBase.h"
class DNSInstallationUnit : public ExpressPathInstallationUnitBase
{
public:
// Constructor
DNSInstallationUnit();
// Destructor
virtual
~DNSInstallationUnit();
// Installation Unit overrides
virtual
InstallationReturnType
InstallService(HANDLE logfileHandle, HWND hwnd);
virtual
UnInstallReturnType
UnInstallService(HANDLE logfileHandle, HWND hwnd);
virtual
InstallationReturnType
ExpressPathInstall(HANDLE logfileHandle, HWND hwnd);
virtual
bool
GetMilestoneText(String& message);
virtual
bool
GetUninstallMilestoneText(String& message);
virtual
String
GetUninstallWarningText();
virtual
String
GetFinishText();
virtual
String
GetServiceDescription();
virtual
void
ServerRoleLinkSelected(int linkIndex, HWND hwnd);
virtual
void
FinishLinkSelected(int inkIndex, HWND hwnd);
void
SetStaticIPAddress(DWORD ipaddress);
DWORD
GetStaticIPAddress();
String
GetStaticIPAddressString();
void
SetSubnetMask(DWORD mask);
DWORD
GetSubnetMask();
String
GetSubnetMaskString();
void
SetForwarder(DWORD forwarderAddress);
void
GetForwarders(IPAddressList& forwarders) const;
bool
IsManualForwarder() const;
private:
enum DNSRoleResult
{
DNS_SUCCESS,
DNS_INSTALL_FAILURE,
DNS_CONFIG_FAILURE,
DNS_SERVICE_START_FAILURE
};
bool
ReadConfigWizardRegkeys(String& configWizardResults) const;
void
SetForwardersForExpressPath();
DNSRoleResult dnsRoleResult;
// Express path members
DWORD staticIPAddress;
DWORD subnetMask;
DWORD forwarderIPAddress;
bool manualForwarder;
unsigned int installedDescriptionID;
};
#endif // __CYS_DNSINSTALLATIONUNIT_H