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.

103 lines
2.1 KiB

  1. /*++
  2. 1998 Seagate Software, Inc. All rights reserved.
  3. Module Name:
  4. RsCln.h
  5. Abstract:
  6. This header is local to the GUI module and is referenced by the RsCln
  7. and RsOptCom modules. It contains defined constants and the definition
  8. of class CRsClnServer. See the implementation file for a description
  9. of this class.
  10. Author:
  11. Carl Hagerstrom [carlh] 20-Aug-1998
  12. Revision History:
  13. --*/
  14. #ifndef _RSCLN_H
  15. #define _RSCLN_H
  16. #define MAX_STICKY_NAME 80
  17. #include <afxtempl.h>
  18. /////////////////////////////////////////////////////////////////////////////
  19. // CRsClnErrorFiles dialog
  20. typedef CList<CString, CString&> CRsStringList;
  21. class CRsClnErrorFiles : public CDialog
  22. {
  23. // Construction
  24. public:
  25. CRsClnErrorFiles(CRsStringList* pFileList); // standard constructor
  26. // Dialog Data
  27. //{{AFX_DATA(CRsClnErrorFiles)
  28. enum { IDD = IDD_UNINSTALL_ERROR_FILES };
  29. CListBox m_FileList;
  30. //}}AFX_DATA
  31. // Overrides
  32. // ClassWizard generated virtual function overrides
  33. //{{AFX_VIRTUAL(CRsClnErrorFiles)
  34. protected:
  35. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  36. //}}AFX_VIRTUAL
  37. // Implementation
  38. CRsStringList m_ErrorFileList;
  39. protected:
  40. // Generated message map functions
  41. //{{AFX_MSG(CRsClnErrorFiles)
  42. virtual BOOL OnInitDialog();
  43. //}}AFX_MSG
  44. DECLARE_MESSAGE_MAP()
  45. };
  46. class CRsClnServer
  47. {
  48. public:
  49. CRsClnServer();
  50. ~CRsClnServer();
  51. HRESULT ScanServer(DWORD*);
  52. HRESULT CleanServer();
  53. HRESULT FirstDirtyVolume(WCHAR**);
  54. HRESULT NextDirtyVolume(WCHAR**);
  55. HRESULT RemoveDirtyVolumes();
  56. HRESULT AddErrorFile(CString&);
  57. private:
  58. struct dirtyVolume
  59. {
  60. WCHAR stickyName[MAX_STICKY_NAME];
  61. WCHAR bestName[MAX_STICKY_NAME];
  62. struct dirtyVolume* next;
  63. };
  64. HRESULT AddDirtyVolume(WCHAR*, WCHAR*);
  65. struct dirtyVolume* m_head;
  66. struct dirtyVolume* m_tail;
  67. struct dirtyVolume* m_current;
  68. CRsStringList m_ErrorFileList;
  69. };
  70. #endif // _RSCLN_H