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.

86 lines
3.1 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 2000-2001 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // AnalyzePage.h
  7. //
  8. // Maintained By:
  9. // Galen Barbee (GalenB) 12-MAY-2000
  10. //
  11. //////////////////////////////////////////////////////////////////////////////
  12. #pragma once
  13. class CAnalyzePage
  14. : public INotifyUI
  15. , public IClusCfgCallback
  16. {
  17. private: // data
  18. HWND m_hwnd; // Our HWND
  19. CClusCfgWizard * m_pccw; // Wizard
  20. BOOL m_fNext; // If Next was pressed...
  21. BOOL m_fAborted; // Back was pressed and we need to tell the servers to abort.
  22. ECreateAddMode m_ecamCreateAddMode; // Creating or adding?
  23. ITaskAnalyzeCluster * m_ptac;
  24. // IUnknown
  25. LONG m_cRef; // Reference count
  26. // IClusCfgCallback
  27. OBJECTCOOKIE m_cookieCompletion; // Completion cookie
  28. BOOL m_fTaskDone; // Is the task done yet?
  29. HRESULT m_hrResult; // Result of the analyze task
  30. CTaskTreeView * m_pttv; // Task TreeView
  31. BSTR m_bstrLogMsg; // Reusable logging buffer.
  32. DWORD m_dwCookieCallback; // Notification registration cookie
  33. // INotifyUI
  34. DWORD m_dwCookieNotify; // Notification registration cookie
  35. private: // methods
  36. LRESULT OnInitDialog( void );
  37. LRESULT OnNotify( WPARAM idCtrlIn, LPNMHDR pnmhdrIn );
  38. LRESULT OnNotifyQueryCancel( void );
  39. LRESULT OnNotifySetActive( void );
  40. LRESULT OnNotifyWizNext( void );
  41. LRESULT OnNotifyWizBack( void );
  42. LRESULT OnCommand( UINT idNotificationIn, UINT idControlIn, HWND hwndSenderIn );
  43. HRESULT HrUpdateWizardButtons( void );
  44. HRESULT HrCleanupAnalysis( void );
  45. HRESULT HrUnAdviseConnections( void );
  46. public: // methods
  47. CAnalyzePage(
  48. CClusCfgWizard * pccwIn
  49. , ECreateAddMode ecamCreateAddModeIn
  50. );
  51. ~CAnalyzePage( void );
  52. static INT_PTR CALLBACK
  53. S_DlgProc( HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam );
  54. // IUnknown
  55. STDMETHOD( QueryInterface )( REFIID riidIn, LPVOID * ppvOut );
  56. STDMETHOD_( ULONG, AddRef )( void );
  57. STDMETHOD_( ULONG, Release )( void );
  58. // INotifyUI
  59. STDMETHOD( ObjectChanged )( OBJECTCOOKIE cookieIn);
  60. // IClusCfgCallback
  61. STDMETHOD( SendStatusReport )(
  62. LPCWSTR pcszNodeNameIn
  63. , CLSID clsidTaskMajorIn
  64. , CLSID clsidTaskMinorIn
  65. , ULONG ulMinIn
  66. , ULONG ulMaxIn
  67. , ULONG ulCurrentIn
  68. , HRESULT hrStatusIn
  69. , LPCWSTR pcszDescriptionIn
  70. , FILETIME * pftTimeIn
  71. , LPCWSTR pcszReferenceIn
  72. );
  73. }; //*** class CAnalyzePage