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.

73 lines
2.4 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 2000-2001 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // IPAddressPage.h
  7. //
  8. // Maintained By:
  9. // David Potter (DavidP) 14-MAR-2001
  10. // Geoffrey Pease (GPease) 12-MAY-2000
  11. //
  12. //////////////////////////////////////////////////////////////////////////////
  13. #pragma once
  14. class CIPAddressPage
  15. : public INotifyUI
  16. {
  17. private: // data
  18. HWND m_hwnd; // Our HWND
  19. CClusCfgWizard * m_pccw; // Wizard
  20. ULONG * m_pulIPAddress; // External storage of IPAddress
  21. ULONG * m_pulIPSubnet; // Subnet mask
  22. BSTR * m_pbstrNetworkName; // Network name for address
  23. OBJECTCOOKIE m_cookieCompletion; // Completion cookie
  24. HANDLE m_event; // Event when verify IP address task is completed
  25. // IUnknown
  26. LONG m_cRef; // Reference count
  27. private: // methods
  28. LRESULT OnInitDialog( void );
  29. LRESULT OnNotify( WPARAM idCtrlIn, LPNMHDR pnmhdrIn );
  30. LRESULT OnNotifyQueryCancel( void );
  31. LRESULT OnNotifySetActive( void );
  32. LRESULT OnNotifyWizNext( void );
  33. LRESULT OnCommand( UINT idNotificationIn, UINT idControlIn, HWND hwndSenderIn );
  34. HRESULT HrUpdateWizardButtons( void );
  35. HRESULT
  36. HrFindNetworkForIPAddress(
  37. IClusCfgNetworkInfo ** ppccniOut
  38. );
  39. HRESULT
  40. HrMatchNetwork(
  41. IClusCfgNetworkInfo * pccniIn,
  42. BSTR bstrNetworkNameIn
  43. );
  44. public: // methods
  45. CIPAddressPage(
  46. CClusCfgWizard * pccwIn
  47. , ECreateAddMode ecamCreateAddModeIn
  48. , ULONG * pulIPAddressInout
  49. , ULONG * pulIPSubnetInout
  50. , BSTR * pbstrNetworkNameInout
  51. );
  52. virtual ~CIPAddressPage( void );
  53. static INT_PTR CALLBACK
  54. S_DlgProc( HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam );
  55. // IUnknown
  56. STDMETHOD( QueryInterface )( REFIID riidIn, LPVOID * ppvOut );
  57. STDMETHOD_( ULONG, AddRef )( void );
  58. STDMETHOD_( ULONG, Release )( void );
  59. // INotifyUI
  60. STDMETHOD( ObjectChanged )( OBJECTCOOKIE cookieIn);
  61. }; //*** class CIPAddressPage