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.

437 lines
7.7 KiB

  1. /*++
  2. Copyright (c) 1994-2000 Microsoft Corporation
  3. Module Name :
  4. WebAddNew.cpp
  5. Abstract:
  6. Classes for new Web site and virtual directory creation
  7. Author:
  8. Sergei Antonov (sergeia)
  9. Project:
  10. Internet Services Manager
  11. Revision History:
  12. 12/12/2000 sergeia Initial creation
  13. --*/
  14. #ifndef _WEB_NEW_WIZARD_H
  15. #define _WEB_NEW_WIZARD_H
  16. class CWebWizSettings : public CObjectPlus
  17. /*++
  18. Class Description:
  19. Web Wizard settings intended to pass along from page
  20. to page
  21. --*/
  22. {
  23. //
  24. // Constructor/Destructor
  25. //
  26. public:
  27. CWebWizSettings(
  28. IN CMetaKey * pMetaKey,
  29. IN LPCTSTR lpszServerName,
  30. IN DWORD dwInstance = MASTER_INSTANCE,
  31. IN LPCTSTR lpszParent = NULL
  32. );
  33. //
  34. // Public Properties
  35. //
  36. public:
  37. BOOL m_fLocal;
  38. BOOL m_fUNC;
  39. BOOL m_fRead;
  40. BOOL m_fWrite;
  41. BOOL m_fAllowAnonymous;
  42. BOOL m_fDirBrowsing;
  43. BOOL m_fScript;
  44. BOOL m_fExecute;
  45. BOOL m_fNewSite;
  46. DWORD m_dwInstance;
  47. CString m_strService;
  48. CString m_strParent;
  49. CString m_strServerName;
  50. CString m_strDescription;
  51. CString m_strBinding;
  52. CString m_strSecureBinding;
  53. CString m_strAlias;
  54. CString m_strPath;
  55. CString m_strUserName;
  56. CString m_strPassword;
  57. HRESULT m_hrResult;
  58. CMetaKey * m_pKey;
  59. };
  60. //
  61. // New Virtual Server Wizard Description Page
  62. //
  63. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  64. class CWebWizDescription : public CIISWizardPage
  65. {
  66. DECLARE_DYNCREATE(CWebWizDescription)
  67. //
  68. // Construction
  69. //
  70. public:
  71. CWebWizDescription(CWebWizSettings * pwsSettings = NULL);
  72. ~CWebWizDescription();
  73. //
  74. // Dialog Data
  75. //
  76. protected:
  77. //{{AFX_DATA(CWebWizDescription)
  78. enum { IDD = IDD_WEB_NEW_INST_DESCRIPTION };
  79. CEdit m_edit_Description;
  80. //}}AFX_DATA
  81. //
  82. // Overrides
  83. //
  84. protected:
  85. //{{AFX_VIRTUAL(CWebWizDescription)
  86. public:
  87. virtual BOOL OnSetActive();
  88. virtual LRESULT OnWizardNext();
  89. protected:
  90. virtual void DoDataExchange(CDataExchange * pDX);
  91. //}}AFX_VIRTUAL
  92. //
  93. // Implementation
  94. //
  95. protected:
  96. //{{AFX_MSG(CWebWizDescription)
  97. afx_msg void OnChangeEditDescription();
  98. //}}AFX_MSG
  99. DECLARE_MESSAGE_MAP()
  100. void SetControlStates();
  101. private:
  102. CWebWizSettings * m_pSettings;
  103. };
  104. //
  105. // New Virtual Server Wizard Bindings Page
  106. //
  107. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  108. class CWebWizBindings : public CIISWizardPage
  109. {
  110. DECLARE_DYNCREATE(CWebWizBindings)
  111. //
  112. // Construction
  113. //
  114. public:
  115. CWebWizBindings(
  116. IN CWebWizSettings * pwsSettings = NULL,
  117. IN DWORD dwInstance = MASTER_INSTANCE
  118. );
  119. ~CWebWizBindings();
  120. //
  121. // Dialog Data
  122. //
  123. protected:
  124. //{{AFX_DATA(CWebWizBindings)
  125. enum { IDD = IDD_WEB_NEW_INST_BINDINGS };
  126. int m_nIpAddressSel;
  127. UINT m_nTCPPort;
  128. UINT m_nSSLPort;
  129. CString m_strDomainName;
  130. CComboBox m_combo_IpAddresses;
  131. //}}AFX_DATA
  132. BOOL m_fCertInstalled;
  133. CIPAddress m_iaIpAddress;
  134. CObListPlus m_oblIpAddresses;
  135. //
  136. // Overrides
  137. //
  138. protected:
  139. //{{AFX_VIRTUAL(CWebWizBindings)
  140. public:
  141. virtual BOOL OnSetActive();
  142. protected:
  143. virtual void DoDataExchange(CDataExchange * pDX);
  144. //}}AFX_VIRTUAL
  145. //
  146. // Implementation
  147. //
  148. protected:
  149. //{{AFX_MSG(CWebWizBindings)
  150. virtual BOOL OnInitDialog();
  151. //}}AFX_MSG
  152. DECLARE_MESSAGE_MAP()
  153. void SetControlStates();
  154. private:
  155. DWORD m_dwInstance;
  156. CWebWizSettings * m_pSettings;
  157. };
  158. //
  159. // New Virtual Directory Wizard Alias Page
  160. //
  161. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  162. class CWebWizAlias : public CIISWizardPage
  163. {
  164. DECLARE_DYNCREATE(CWebWizAlias)
  165. //
  166. // Construction
  167. //
  168. public:
  169. CWebWizAlias(CWebWizSettings * pwsSettings = NULL);
  170. ~CWebWizAlias();
  171. //
  172. // Dialog Data
  173. //
  174. protected:
  175. //{{AFX_DATA(CWebWizAlias)
  176. enum { IDD = IDD_WEB_NEW_DIR_ALIAS };
  177. CEdit m_edit_Alias;
  178. //}}AFX_DATA
  179. //
  180. // Overrides
  181. //
  182. protected:
  183. //{{AFX_VIRTUAL(CWebWizAlias)
  184. public:
  185. virtual BOOL OnSetActive();
  186. virtual LRESULT OnWizardNext();
  187. protected:
  188. virtual void DoDataExchange(CDataExchange * pDX);
  189. //}}AFX_VIRTUAL
  190. //
  191. // Implementation
  192. //
  193. protected:
  194. //{{AFX_MSG(CWebWizAlias)
  195. afx_msg void OnChangeEditAlias();
  196. //}}AFX_MSG
  197. DECLARE_MESSAGE_MAP()
  198. void SetControlStates();
  199. private:
  200. CWebWizSettings * m_pSettings;
  201. };
  202. //
  203. // Wizard Path Page
  204. //
  205. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  206. class CWebWizPath : public CIISWizardPage
  207. {
  208. DECLARE_DYNCREATE(CWebWizPath)
  209. //
  210. // Construction
  211. //
  212. public:
  213. CWebWizPath(
  214. IN CWebWizSettings * pwsSettings = NULL,
  215. IN BOOL bVDir = TRUE
  216. );
  217. ~CWebWizPath();
  218. int BrowseForFolderCallback(HWND hwnd, UINT uMsg, LPARAM lParam);
  219. //
  220. // Dialog Data
  221. //
  222. protected:
  223. //{{AFX_DATA(CWebWizPath)
  224. enum { IDD = -1 };
  225. CButton m_button_Browse;
  226. CEdit m_edit_Path;
  227. //}}AFX_DATA
  228. //
  229. // Overrides
  230. //
  231. protected:
  232. //{{AFX_VIRTUAL(CWebWizPath)
  233. public:
  234. virtual BOOL OnSetActive();
  235. virtual LRESULT OnWizardNext();
  236. protected:
  237. virtual void DoDataExchange(CDataExchange * pDX);
  238. //}}AFX_VIRTUAL
  239. //
  240. // Implementation
  241. //
  242. protected:
  243. //{{AFX_MSG(CWebWizPath)
  244. afx_msg void OnChangeEditPath();
  245. afx_msg void OnButtonBrowse();
  246. virtual BOOL OnInitDialog();
  247. //}}AFX_MSG
  248. DECLARE_MESSAGE_MAP()
  249. void SetControlStates();
  250. private:
  251. CWebWizSettings * m_pSettings;
  252. LPTSTR m_pPathTemp;
  253. CString m_strBrowseTitle;
  254. };
  255. //
  256. // Wizard User/Password Page
  257. //
  258. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  259. class CWebWizUserName : public CIISWizardPage
  260. {
  261. DECLARE_DYNCREATE(CWebWizUserName)
  262. //
  263. // Construction
  264. //
  265. public:
  266. CWebWizUserName(
  267. IN CWebWizSettings * pwsSettings = NULL,
  268. IN BOOL bVDir = TRUE
  269. );
  270. ~CWebWizUserName();
  271. //
  272. // Dialog Data
  273. //
  274. protected:
  275. //{{AFX_DATA(CWebWizUserName)
  276. enum { IDD = IDD_WEB_NEW_USER_PASSWORD };
  277. CEdit m_edit_Password;
  278. CEdit m_edit_UserName;
  279. //}}AFX_DATA
  280. //
  281. // Overrides
  282. //
  283. protected:
  284. //{{AFX_VIRTUAL(CWebWizUserName)
  285. public:
  286. virtual BOOL OnSetActive();
  287. virtual LRESULT OnWizardNext();
  288. protected:
  289. virtual void DoDataExchange(CDataExchange * pDX);
  290. //}}AFX_VIRTUAL
  291. //
  292. // Implementation
  293. //
  294. protected:
  295. //{{AFX_MSG(CWebWizUserName)
  296. afx_msg void OnButtonBrowseUsers();
  297. afx_msg void OnChangeEditUsername();
  298. afx_msg void OnButtonCheckPassword();
  299. virtual BOOL OnInitDialog();
  300. //}}AFX_MSG
  301. DECLARE_MESSAGE_MAP()
  302. void SetControlStates();
  303. private:
  304. CWebWizSettings * m_pSettings;
  305. };
  306. //
  307. // Wizard Permissions Page
  308. //
  309. // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  310. class CWebWizPermissions : public CIISWizardPage
  311. {
  312. DECLARE_DYNCREATE(CWebWizPermissions)
  313. //
  314. // Construction
  315. //
  316. public:
  317. CWebWizPermissions(
  318. IN CWebWizSettings * pwsSettings = NULL,
  319. IN BOOL bVDir = TRUE
  320. );
  321. ~CWebWizPermissions();
  322. //
  323. // Dialog Data
  324. //
  325. protected:
  326. //{{AFX_DATA(CWebWizPermissions)
  327. enum { IDD = IDD_WEB_NEW_PERMS };
  328. //}}AFX_DATA
  329. //
  330. // Overrides
  331. //
  332. protected:
  333. //{{AFX_VIRTUAL(CWebWizPermissions)
  334. public:
  335. virtual BOOL OnSetActive();
  336. virtual LRESULT OnWizardNext();
  337. protected:
  338. virtual void DoDataExchange(CDataExchange * pDX);
  339. //}}AFX_VIRTUAL
  340. //
  341. // Implementation
  342. //
  343. protected:
  344. //{{AFX_MSG(CWebWizPermissions)
  345. //}}AFX_MSG
  346. DECLARE_MESSAGE_MAP()
  347. void SetControlStates();
  348. private:
  349. BOOL m_bVDir;
  350. CWebWizSettings * m_pSettings;
  351. };
  352. #endif //_WEB_NEW_WIZARD_H