Source code of Windows XP (NT5)
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.

125 lines
3.4 KiB

  1. //
  2. //
  3. //
  4. #ifndef _PROP_SHEET_H
  5. #define _PROP_SHEET_H
  6. #ifndef MD_APP_PERIODIC_RESTART_TIME
  7. #define MD_APP_PERIODIC_RESTART_TIME 2111
  8. #endif
  9. #ifndef MD_APP_PERIODIC_RESTART_REQUESTS
  10. #define MD_APP_PERIODIC_RESTART_REQUESTS 2112
  11. #endif
  12. #ifndef MD_APP_PERIODIC_RESTART_SCHEDULE
  13. #define MD_APP_PERIODIC_RESTART_SCHEDULE 2113
  14. #endif
  15. #ifndef MD_ASP_DISKTEMPLATECACHEDIRECTORY
  16. #define MD_ASP_DISKTEMPLATECACHEDIRECTORY 7036
  17. #endif
  18. #ifndef MD_ASP_MAXDISKTEMPLATECACHEFILES
  19. #define MD_ASP_MAXDISKTEMPLATECACHEFILES 7040
  20. #endif
  21. typedef struct _Mapping
  22. {
  23. CString ext;
  24. CString path;
  25. CString verbs;
  26. DWORD flags;
  27. } Mapping;
  28. class CMetaKey;
  29. class CMappings : public std::map<CString, Mapping>
  30. {
  31. public:
  32. CMappings()
  33. {
  34. }
  35. ~CMappings()
  36. {
  37. }
  38. HRESULT Load(CMetaKey * pKey);
  39. HRESULT Save(CMetaKey * pKey);
  40. };
  41. #define SET_MODIFIED(x)\
  42. m_pData->m_Dirty = (x);\
  43. SetModified(m_pData->m_Dirty)
  44. #define APPLY_DATA()\
  45. if (SUCCEEDED(m_pData->Save()))\
  46. CancelToClose()
  47. class CAppData
  48. {
  49. public:
  50. CAppData()
  51. {
  52. }
  53. ~CAppData()
  54. {
  55. }
  56. BOOL IsMasterInstance();
  57. HRESULT Load();
  58. HRESULT Save();
  59. CString m_ServerName;
  60. CString m_UserName;
  61. CString m_UserPassword;
  62. CString m_MetaPath;
  63. BOOL m_Dirty;
  64. int m_AppIsolated; //MD_APP_ISOLATED
  65. BOOL m_EnableSession; //MD_ASP_ALLOWSESSIONSTATE
  66. BOOL m_EnableBuffering; //MD_ASP_BUFFERINGON
  67. BOOL m_EnableParents; //MD_ASP_ENABLEPARENTPATHS
  68. int m_SessionTimeout; //MD_ASP_SESSIONTIMEOUT
  69. int m_ScriptTimeout; //MD_ASP_SCRIPTTIMEOUT
  70. TCHAR m_Languages[MAX_PATH]; //MD_ASP_SCRIPTLANGUAGE
  71. BOOL m_ServerDebug; //MD_ASP_ENABLESERVERDEBUG
  72. BOOL m_ClientDebug; //MD_ASP_ENABLECLIENTDEBUG
  73. BOOL m_SendAspError; //MD_ASP_SCRIPTERRORSSENTTOBROWSER
  74. TCHAR m_DefaultError[MAX_PATH]; //MD_ASP_SCRIPTERRORMESSAGE
  75. BOOL m_CacheISAPI; //MD_CACHE_EXTENSIONS
  76. BOOL m_LogFailures; //MD_ASP_LOGERRORREQUESTS
  77. BOOL m_DebugExcept; //MD_ASP_EXCEPTIONCATCHENABLE
  78. int m_CgiTimeout; //MD_SCRIPT_TIMEOUT
  79. BOOL m_RecycleTimespan; //
  80. int m_Timespan; //MD_APP_PERIODIC_RESTART_TIME
  81. BOOL m_RecycleRequest; //
  82. int m_Requests; //MD_APP_PERIODIC_RESTART_REQUESTS
  83. BOOL m_RecycleTimer; //
  84. CStringListEx m_Timers; //MD_APP_PERIODIC_RESTART_SCHEDULE
  85. BOOL m_NoCache; //
  86. BOOL m_UnlimCache; //
  87. int m_UnlimCacheInMemorySize; //MD_ASP_SCRIPTFILECACHESIZE
  88. int m_LimCacheInMemorySize; //MD_ASP_SCRIPTFILECACHESIZE
  89. BOOL m_LimCache; //
  90. int m_TotalCacheSize; //MD_ASP_MAXDISKTEMPLATECACHESIZE
  91. TCHAR m_DiskCacheDir[MAX_PATH]; //MD_ASP_DISKTEMPLATECACHEDIRECTORY
  92. int m_ScriptEngCacheMax; //MD_ASP_SCRIPTENGINECACHEMAX
  93. CMappings m_Mappings; //
  94. };
  95. class CAppPropSheet : public WTL::CPropertySheet
  96. {
  97. public:
  98. CAppPropSheet();
  99. ~CAppPropSheet()
  100. {
  101. }
  102. BEGIN_MSG_MAP_EX(CAppPropSheet)
  103. MSG_WM_INITDIALOG(OnInitDialog)
  104. MSG_WM_KEYDOWN(OnKeyDown)
  105. END_MSG_MAP()
  106. LRESULT OnInitDialog(HWND hDlg, LPARAM lParam);
  107. void OnKeyDown(UINT nChar, UINT nRepCnt, UINT hFlags);
  108. };
  109. #endif //_PROP_SHEET_H