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.

198 lines
9.9 KiB

  1. // this is the max resource string length
  2. #define MAX_STR_LEN 1024
  3. #define SERVICENAME_IISADMIN _T("IISADMIN")
  4. #define SERVICENAME_HTTP_SSL_PROVIDER _T("HTTPFILTER")
  5. #define SERVICENAME_NTLMSSP _T("NTLMSSP")
  6. const TCHAR REG_INETSTP[] = _T("Software\\Microsoft\\INetStp");
  7. const TCHAR REG_IISADMIN[] = _T("System\\CurrentControlSet\\Services\\IISADMIN");
  8. const TCHAR REG_W3SVC[] = _T("System\\CurrentControlSet\\Services\\W3SVC");
  9. const TCHAR REG_HTTPSYS_PARAM[] = _T("System\\CurrentControlSet\\Services\\HTTP\\Parameters");
  10. const TCHAR REG_MSFTPSVC[] = _T("System\\CurrentControlSet\\Services\\MSFTPSVC");
  11. const TCHAR REG_GOPHERSVC[] = _T("System\\CurrentControlSet\\Services\\GOPHERSVC");
  12. const TCHAR REG_MIMEMAP[] = _T("System\\CurrentControlSet\\Services\\InetInfo\\Parameters\\MimeMap");
  13. const TCHAR REG_ASP_UNINSTALL[] = _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ActiveServerPages");
  14. const TCHAR REG_INETINFOPARAMETERS[] = _T("System\\CurrentControlSet\\Services\\InetInfo\\Parameters");
  15. const TCHAR REG_WWWPARAMETERS[] = _T("System\\CurrentControlSet\\Services\\W3Svc\\Parameters");
  16. const TCHAR REG_WWWVROOTS[] = _T("System\\CurrentControlSet\\Services\\W3Svc\\Parameters\\Virtual Roots");
  17. const TCHAR REG_WWWPERFORMANCE[] = _T("System\\CurrentControlSet\\Services\\W3svc\\Performance");
  18. const TCHAR REG_EVENTLOG_SYSTEM[] = _T("System\\CurrentControlSet\\Services\\EventLog\\System");
  19. const TCHAR REG_EVENTLOG_APPLICATION[] = _T("System\\CurrentControlSet\\Services\\EventLog\\Application");
  20. const TCHAR REG_FTPPARAMETERS[] = _T("System\\CurrentControlSet\\Services\\MSFtpsvc\\Parameters");
  21. const TCHAR REG_FTPVROOTS[] = _T("System\\CurrentControlSet\\Services\\MSFtpsvc\\Parameters\\Virtual Roots");
  22. const TCHAR REG_HTTPSYS_DISABLESERVERHEADER[] = _T("DisableServerHeader");
  23. const TCHAR REG_INSTALLSTATE[] = _T("CurrentInstallState");
  24. const TCHAR REG_SNMPPARAMETERS[] = _T("System\\CurrentControlSet\\Services\\SNMP\\Parameters");
  25. const TCHAR REG_SNMPEXTAGENT[] = _T("System\\CurrentControlSet\\Services\\SNMP\\Parameters\\ExtensionAgents");
  26. const TCHAR REG_GROUPPOLICY_BLOCKINSTALL_PATH[] = _T("Software\\Policies\\Microsoft\\Windows NT\\IIS");
  27. const TCHAR REG_GROUPPOLICY_BLOCKINSTALL_NAME[] = _T("PreventIISInstall");
  28. enum OS {OS_NT, OS_W95, OS_OTHERS};
  29. enum NT_OS_TYPE {OT_NT_UNKNOWN, OT_NTS, OT_PDC_OR_BDC, OT_NTW};
  30. enum UPGRADE_TYPE {UT_NONE, UT_351, UT_10_W95, UT_10, UT_20, UT_30, UT_40, UT_50, UT_51, UT_60};
  31. enum INSTALL_MODE {IM_FRESH,IM_UPGRADE,IM_MAINTENANCE, IM_DEGRADE};
  32. enum ACTION_TYPE {AT_DO_NOTHING, AT_REMOVE, AT_INSTALL_FRESH, AT_INSTALL_UPGRADE, AT_INSTALL_REINSTALL};
  33. enum STATUS_TYPE {ST_UNKNOWN, ST_INSTALLED, ST_UNINSTALLED};
  34. const TCHAR REG_PRODUCTOPTIONS[] = _T("System\\CurrentControlSet\\Control\\ProductOptions");
  35. const TCHAR UNATTEND_FILE_SECTION[] = _T("InternetServer");
  36. const TCHAR REG_SETUP_UNINSTALLINFO[] = _T("UninstallInfo");
  37. const WCHAR SECTIONNAME_STRINGS[] = L"Strings";
  38. const WCHAR SECTION_STRINGS_CDNAME[] = L"cdname";
  39. const TCHAR COMPONENTS_SAKIT_WEB[] = _T("sakit_web");
  40. // App Compat Data
  41. const TCHAR APPCOMPAT_DBNAME[] = _T("AppPatch\\sysmain.sdb");
  42. const TCHAR APPCOMPAT_TAG_BASEPATH[] = _T("BasePath");
  43. const TCHAR APPCOMPAT_TAG_PATHTYPE[] = _T("PathType");
  44. const TCHAR APPCOMPAT_TYPE_PHYSICALPATH[] = _T("0");
  45. const TCHAR APPCOMPAT_TAG_SHIM_IIS[] = _T("EnableIIS");
  46. const TCHAR APPCOMPAT_TAG_WEBSVCEXT[] = _T("WebSvcExtensions");
  47. const TCHAR APPCOMPAT_TAG_SETUPINDICATOR[] = _T("SetupIndicatorFile");
  48. const TCHAR APPCOMPAT_REG_HKLM[] = _T("HKEY_LOCAL_MACHINE");
  49. const TCHAR APPCOMPAT_REG_HKCU[] = _T("HKEY_CURRENT_USER");
  50. const TCHAR APPCOMPAT_REG_HKCR[] = _T("HKEY_CLASSES_ROOT");
  51. const TCHAR APPCOMPAT_REG_HKU[] = _T("HKEY_USERS");
  52. const TCHAR APPCOMPAT_REG_HKCC[] = _T("HKEY_CURRENT_CONFIG");
  53. const TCHAR APPCOMPAT_DB_GROUPID[] = _T("GroupID");
  54. const TCHAR APPCOMPAT_DB_GROUPDESC[] = _T("GroupDesc");
  55. const TCHAR APPCOMPAT_DB_APPNAME[] = _T("AppName");
  56. const TCHAR APPCOMPAT_DB_ENABLE_EXT_GROUPS[] = _T("EnableExtGroups");
  57. #define UNATTEND_INETSERVER_APPLICATIONDEPENDENCIES _T("ApplicationDependency")
  58. #define UNATTEND_INETSERVER_EXTENSIONRESTRICTIONLIST _T("ExtensionFile")
  59. #define UNATTEND_WEBAPPSERVER_SECTIONNAME _T("AppServer")
  60. #define UNATTEND_INETSERVER_DISABLEW3SVC _T("DisableWebServiceOnUpgrade")
  61. #define REGISTR_IISSETUP_DISABLEW3SVC _T("DisableW3SVC")
  62. // 0 = log errors only
  63. // 1 = log errors and warnings
  64. // 2 = log errors, warnings and program flow type statemtns
  65. // 3 = log errors, warnings, program flow and basic trace activity
  66. // 4 = log errors, warnings, program flow, basic trace activity and trace to win32 api calls.
  67. const int LOG_TYPE_ERROR = 0;
  68. const int LOG_TYPE_WARN = 1;
  69. const int LOG_TYPE_PROGRAM_FLOW = 2;
  70. const int LOG_TYPE_TRACE = 3;
  71. const int LOG_TYPE_TRACE_WIN32_API = 4;
  72. #define USERS_LOCALSERVICE _T("NT Authority\\Local Service")
  73. #define USERS_NETWORKSERVICE _T("NT Authority\\Network Service")
  74. #define USERS_SYSTEM _T("NT Authority\\System")
  75. #define KEYTYPE_FILTER _T("IIsFilter")
  76. #define KEYTYPE_FILTERS _T("IIsFilters")
  77. #define METABASEPATH_FILTER_GLOBAL_ROOT _T("/LM/W3SVC/Filters")
  78. #define METABASEPATH_FILTER_PATH _T("/Filters")
  79. #define METABASEPATH_WWW_ROOT _T("/LM/W3SVC")
  80. #define METABASEPATH_WWW_INFO ( METABASEPATH_WWW_ROOT _T("/Info") )
  81. #define REG_FILTERDLLS _T("Filter DLLs")
  82. #define REG_FILTER_DELIMITER ','
  83. #define METABASEPATH_FTP_ROOT _T("/LM/MSFTPSVC")
  84. #define METABASEPATH_SCHEMA _T("/Schema/")
  85. #define METABASEPATH_DEFAULTSITE _T("/LM/W3SVC/1/Root")
  86. #define METABASEPATH_VDIRSCRIPTS L"Scripts"
  87. #define PATH_WWW_CUSTOMERRORS _T("\\Help\\iishelp\\common")
  88. #define PATH_IISHELP _T("\\help\\iismmc.chm")
  89. #define PATH_IISHELP_FAT_NTFS_WARNING _T("/htm/sec_acc_ntfspermovr.htm")
  90. #define PATH_PASSPORT _T("MicrosoftPassport")
  91. const TCHAR PATH_HISTORYFILES[] = _T("History");
  92. const TCHAR PATH_METABASEBACKUPS[] = _T("MetaBack");
  93. const TCHAR PATH_TEMPORARY_COMPRESSION_FILES[] = _T("IIS Temporary Compressed Files");
  94. const TCHAR PATH_TEMPORARY_ASP_FILES[] = _T("inetsrv\\ASP Compiled Templates");
  95. const TCHAR PATH_FULL_HISTORY_DIR[] = _T("%windir%\\system32\\inetsrv\\History");
  96. const TCHAR PATH_FULL_HISTORY_ALLFILES[] = _T("%windir%\\system32\\inetsrv\\History\\*");
  97. const TCHAR PATH_FULL_METABACK_ALLFILES[] = _T("%windir%\\system32\\inetsrv\\Metaback\\*");
  98. const TCHAR PATH_FULL_METABASE_FILE[] = _T("%windir%\\system32\\inetsrv\\Metabase.xml");
  99. const TCHAR PATH_FULL_METABASE_BACKUPFILE[] = _T("%windir%\\system32\\inetsrv\\metabase.bak");
  100. const TCHAR PATH_FULL_METABASE_TEMPFILE[] = _T("%windir%\\system32\\inetsrv\\metabase.xml.tmp");
  101. const TCHAR PATH_FULL_MBSCHEMA_FILE[] = _T("%windir%\\system32\\inetsrv\\mbschema.xml");
  102. const TCHAR PATH_FULL_MBSCHEMA_BINFILES[] = _T("%windir%\\system32\\inetsrv\\mbschema.bin.*");
  103. const TCHAR PATH_METABASE_FILE[] = _T("Metabase.xml");
  104. const TCHAR PATH_MBSCHEMA_FILE[] = _T("MbSchema.xml");
  105. const TCHAR METABASEPATH_UPG_IISHELP_WEB1_ROOT[] = _T("/LM/W3SVC/1/ROOT");
  106. const TCHAR METABASEPATH_UPG_IISHELP_WEB2_ROOT[] = _T("/LM/W3SVC/2/ROOT");
  107. const TCHAR METABASEPATH_UPG_IISHELP_NAME[] = _T("IISHelp");
  108. const TCHAR PATH_UPG_IISHELP_1[] = _T("Help");
  109. const TCHAR PATH_UPG_IISHELP_2[] = _T("Help\\iishelp");
  110. const TCHAR PATH_IISHELP_DEL[] = _T("Help\\iishelp\\iis");
  111. const TCHAR METABASE_PHYS_RESTR_UPG_NODETYPE[] = _T("IIsWebService");
  112. const TCHAR METABASE_PHYS_RESTR_UPG_PROPTYPE[] = _T("Location");
  113. const TCHAR METABASE_PHYS_RESTR_UPG_PROPVALUE[] = _T("/LM/W3SVC");
  114. const TCHAR METABASE_PHYS_RESTR_ISAPI[] = _T("IsapiRestrictionList");
  115. const TCHAR METABASE_PHYS_RESTR_CGI[] = _T("CgiRestrictionList");
  116. struct sComponentList {
  117. LPTSTR szComponentName;
  118. DWORD dwProductName;
  119. BOOL bSelectedByDefault;
  120. BOOL bIncludedInGroupPolicyDeny;
  121. };
  122. extern struct sComponentList g_ComponentList[];
  123. enum COMPONENT_INDEXES {
  124. COMPONENT_IIS = 0,
  125. COMPONENT_IIS_COMMON = 1,
  126. COMPONENT_IIS_INETMGR = 2,
  127. COMPONENT_IIS_PWMGR = 3,
  128. COMPONENT_IIS_WWW_PARENT = 4,
  129. COMPONENT_IIS_WWW = 5,
  130. COMPONENT_IIS_WWW_VDIR_SCRIPTS = 6,
  131. COMPONENT_IIS_DOC = 7,
  132. COMPONENT_IIS_FTP = 8,
  133. COMPONENT_SAKIT_WEB = 9,
  134. COMPONENT_WEBAPPSRV = 10,
  135. COMPONENT_WEBAPPSRV_CONSOLE = 11,
  136. COMPONENT_COMPLUS = 12,
  137. COMPONENT_DTC = 13,
  138. COMPONENT_IIS_WWW_ASP = 14,
  139. COMPONENT_IIS_WWW_HTTPODBC = 15,
  140. COMPONENT_IIS_WWW_SSINC = 16,
  141. COMPONENT_IIS_WWW_WEBDAV = 17,
  142. COMPONENT_ENDOFLIST = 18 // This must be index last
  143. };
  144. struct sOurDefaultExtensions {
  145. static const DWORD MaxFileExtCount = 5;
  146. LPTSTR szFileName;
  147. LPTSTR szNotLocalizedGroupName;
  148. DWORD dwProductName;
  149. LPTSTR szUnattendName;
  150. BOOL bUIDeletable;
  151. BOOL bAllowedByDefault;
  152. LPTSTR szExtensions[ MaxFileExtCount ];
  153. };
  154. extern struct sOurDefaultExtensions g_OurExtensions[];
  155. enum EXTENSION_EXTENSIONS {
  156. EXTENSION_ASP = 0,
  157. EXTENSION_HTTPODBC = 1,
  158. EXTENSION_SSINC = 2,
  159. EXTENSION_WEBDAV = 3,
  160. EXTENSION_ENDOFLIST = 4 // This must be indexed last
  161. };
  162. extern SETUP_INIT_COMPONENT g_OCMInfo;