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.6 KiB
126 lines
2.6 KiB
// Copyright (c) 2001 Microsoft Corporation
|
|
//
|
|
// File: DHCPInstallationUnit.h
|
|
//
|
|
// Synopsis: Declares a DHCPInstallationUnit
|
|
// This object has the knowledge for installing the
|
|
// DHCP service
|
|
//
|
|
// History: 02/05/2001 JeffJon Created
|
|
|
|
#ifndef __CYS_DHCPINSTALLATIONUNIT_H
|
|
#define __CYS_DHCPINSTALLATIONUNIT_H
|
|
|
|
#include "NetworkInterface.h"
|
|
#include "resource.h"
|
|
|
|
#include "ExpressPathInstallationUnitBase.h"
|
|
|
|
extern PCWSTR CYS_DHCP_FINISH_PAGE_HELP;
|
|
|
|
class DHCPInstallationUnit : public ExpressPathInstallationUnitBase
|
|
{
|
|
public:
|
|
|
|
// Constructor
|
|
|
|
DHCPInstallationUnit();
|
|
|
|
// Destructor
|
|
virtual
|
|
~DHCPInstallationUnit();
|
|
|
|
|
|
// Installation Unit overrides
|
|
|
|
virtual
|
|
InstallationReturnType
|
|
InstallService(HANDLE logfileHandle, HWND hwnd);
|
|
|
|
virtual
|
|
UnInstallReturnType
|
|
UnInstallService(HANDLE logfileHandle, HWND hwnd);
|
|
|
|
virtual
|
|
bool
|
|
GetMilestoneText(String& message);
|
|
|
|
virtual
|
|
String
|
|
GetFinishText();
|
|
|
|
virtual
|
|
bool
|
|
GetUninstallMilestoneText(String& message);
|
|
|
|
InstallationReturnType
|
|
ExpressPathInstall(HANDLE logfileHandle, HWND hwnd);
|
|
|
|
virtual
|
|
String
|
|
GetServiceDescription();
|
|
|
|
virtual
|
|
void
|
|
ServerRoleLinkSelected(int linkIndex, HWND hwnd);
|
|
|
|
virtual
|
|
void
|
|
FinishLinkSelected(int inkIndex, HWND hwnd);
|
|
|
|
// Other accessibly functions
|
|
|
|
bool
|
|
AuthorizeDHCPServer(const String& dnsName) const;
|
|
|
|
// Data accessors
|
|
|
|
void
|
|
SetStartIPAddress(DWORD ipaddress);
|
|
|
|
DWORD
|
|
GetStartIPAddress(const NetworkInterface& nic);
|
|
|
|
void
|
|
SetEndIPAddress(DWORD ipaddress);
|
|
|
|
DWORD
|
|
GetEndIPAddress(const NetworkInterface& nic);
|
|
|
|
String
|
|
GetStartIPAddressString(const NetworkInterface& nic);
|
|
|
|
String
|
|
GetEndIPAddressString(const NetworkInterface& nic);
|
|
|
|
protected:
|
|
|
|
void
|
|
CreateUnattendFileTextForExpressPath(
|
|
const NetworkInterface& nic,
|
|
String& unattendFileText);
|
|
|
|
private:
|
|
|
|
enum DHCPRoleResult
|
|
{
|
|
DHCP_SUCCESS,
|
|
DHCP_INSTALL_FAILURE,
|
|
DHCP_CONFIG_FAILURE
|
|
};
|
|
|
|
void
|
|
CalculateScope(const NetworkInterface& nic);
|
|
|
|
DHCPRoleResult dhcpRoleResult;
|
|
|
|
bool isExpressPathInstall;
|
|
bool scopeCalculated;
|
|
|
|
DWORD startIPAddress;
|
|
DWORD endIPAddress;
|
|
|
|
unsigned int installedDescriptionID;
|
|
};
|
|
|
|
#endif // __CYS_DHCPINSTALLATIONUNIT_H
|