[mapguide-commits] r4609 - in trunk/Installer: . Custom
Custom/iis_actions Installers/MapGuide
Installers/MapGuide/Lang Libraries/MapGuide Web Extensions
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Wed Feb 24 10:02:57 EST 2010
Author: jng
Date: 2010-02-24 10:02:55 -0500 (Wed, 24 Feb 2010)
New Revision: 4609
Added:
trunk/Installer/Custom/iis_actions/
trunk/Installer/Custom/iis_actions/CustomAction.cpp
trunk/Installer/Custom/iis_actions/CustomAction.def
trunk/Installer/Custom/iis_actions/iis_actions.vcproj
trunk/Installer/Custom/iis_actions/stdafx.cpp
trunk/Installer/Custom/iis_actions/stdafx.h
trunk/Installer/Custom/iis_actions/targetver.h
Modified:
trunk/Installer/Installer.sln
trunk/Installer/Installers/MapGuide/Lang/MapGuide_en-US.wxl
trunk/Installer/Installers/MapGuide/Lang/MapGuide_es-ES.wxl
trunk/Installer/Installers/MapGuide/MapGuide.wixproj
trunk/Installer/Installers/MapGuide/MapGuide.wxs
trunk/Installer/Libraries/MapGuide Web Extensions/IIS.wxs
Log:
Fix #361: NAILED IT! The fix was the inclusion of a new C++ custom action that performs the list field population. Based on the sample here (http://www.tramontana.co.hu/wix/lesson10.php) with the use of the IMSAdminBase COM interface to enumerate the available IIS web sites.
The thing that makes this as easiest as possible is the modification of the iis:WebSite node to have a SiteId of *
This change allows us to choose an IIS web site by name, avoiding the need to handle and process the additional IIS properties such as, IP Address, Port and Host Header, which would've required doing extra work like setting up a custom MSI table to store this information.
Source: http://stackoverflow.com/questions/1346852/in-wix-how-can-i-select-an-iis-website-by-name
Added: trunk/Installer/Custom/iis_actions/CustomAction.cpp
===================================================================
--- trunk/Installer/Custom/iis_actions/CustomAction.cpp (rev 0)
+++ trunk/Installer/Custom/iis_actions/CustomAction.cpp 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,136 @@
+
+#include "stdafx.h"
+
+
+UINT __stdcall PopulateWebSites(MSIHANDLE hInstall)
+{
+ HRESULT hr = S_OK;
+ UINT er = ERROR_SUCCESS;
+ PMSIHANDLE hTable;
+ PMSIHANDLE hColumns;
+
+ METADATA_HANDLE hMeta;
+ METADATA_RECORD mRec;
+ MSIHANDLE hDb = NULL;
+ PMSIHANDLE hView;
+ PMSIHANDLE hRecord;
+ TCHAR currKey[METADATA_MAX_NAME_LEN];
+ WCHAR subKeyName[METADATA_MAX_NAME_LEN];
+ DWORD dwReqBufLen = 0;
+ DWORD dwBufLen = 1024;
+ char szMsg[256];
+ PBYTE pbBuffer = NULL;
+
+ CComPtr<IMSAdminBase> pIMeta;
+
+ hr = WcaInitialize(hInstall, "PopulateWebSites");
+ ExitOnFailure(hr, "Failed to initialize");
+ hr = CoInitialize(NULL);
+ ExitOnFailure(hr, "Could not initialize the COM sub-system");
+ hr = CoCreateInstance(CLSID_MSAdminBase, NULL, CLSCTX_ALL, IID_IMSAdminBase, (void**)&pIMeta);
+ ExitOnFailure(hr, "Could obtain an IMSAdminBase pointer");
+
+ WcaLog(LOGMSG_STANDARD, "Initialized.");
+
+ pbBuffer = new BYTE[dwBufLen];
+
+ hDb = MsiGetActiveDatabase(hInstall);
+ MsiDatabaseOpenView(hDb, TEXT("SELECT * FROM `ListBox` WHERE Property = `MG_WEBSITE`"), &hView);
+
+ hr = pIMeta->OpenKey(METADATA_MASTER_ROOT_HANDLE, TEXT("/LM"), METADATA_PERMISSION_READ, 20, &hMeta);
+ ExitOnFailure(hr, "Could not open the IIS metabase");
+
+ DWORD indx = 0;
+ DWORD widx = 0;
+ while (SUCCEEDED(hr))
+ {
+ hr = pIMeta->EnumKeys(hMeta, TEXT("/W3SVC"), subKeyName, indx);
+ if (SUCCEEDED(hr))
+ {
+ mRec.dwMDAttributes = METADATA_NO_ATTRIBUTES;
+ mRec.dwMDDataLen = dwBufLen;
+ mRec.dwMDDataType = ALL_METADATA;
+ mRec.dwMDIdentifier = MD_KEY_TYPE;
+ mRec.dwMDUserType = IIS_MD_UT_SERVER;
+ mRec.pbMDData = pbBuffer;
+
+ _stprintf(currKey, TEXT("/W3SVC/%s"), subKeyName);
+
+ HRESULT hr2 = pIMeta->GetData(hMeta, currKey, &mRec, &dwReqBufLen);
+ //It is a web site node, fetch name and bindings
+ if (SUCCEEDED(hr2) && (wcscmp((TCHAR*)mRec.pbMDData, TEXT("IIsWebServer")) == 0))
+ {
+ WcaLog(LOGMSG_STANDARD, "Found website node. Fetching name and bindings");
+
+ //TCHAR szBinding[256];
+ TCHAR szName[256];
+ szName[0] = '\0';
+
+ //Name
+ mRec.dwMDAttributes = METADATA_NO_ATTRIBUTES;
+ mRec.dwMDDataLen = dwBufLen;
+ mRec.dwMDDataType = ALL_METADATA;
+ mRec.dwMDIdentifier = MD_SERVER_COMMENT;
+ mRec.dwMDUserType = IIS_MD_UT_SERVER;
+ mRec.pbMDData = pbBuffer;
+ HRESULT hr3 = pIMeta->GetData(hMeta, currKey, &mRec, &dwReqBufLen);
+ if (SUCCEEDED(hr3))
+ {
+ wcscpy(szName, (TCHAR*)mRec.pbMDData);
+ }
+
+ //Successfully fetched the values, now fill list
+ //if (wcslen(szName) > 0 && wcslen(szBinding) > 0)
+ if (wcslen(szName) > 0)
+ {
+ hr = WcaAddTempRecord(&hTable, &hColumns, TEXT("ListBox"), NULL, 0, 3, TEXT("MG_WEBSITE"), indx, szName);
+ ExitOnFailure(hr, "Could not add website to list");
+ WcaLog(LOGMSG_STANDARD, "Website: %S", szName);
+
+ widx++;
+ }
+ }
+ }
+ indx++;
+ }
+ er = ERROR_SUCCESS; //We're done here, so make it sucessful, otherwise MSI will treat it as epic fail!
+ goto Final;
+
+LExit:
+ er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE;
+
+Final:
+ WcaLog(LOGMSG_STANDARD, "Finalizing");
+ sprintf(szMsg, "Final error code: %d", er);
+ WcaLog(LOGMSG_STANDARD, szMsg);
+ if (pbBuffer)
+ {
+ delete pbBuffer;
+ pbBuffer = NULL;
+ }
+ if (hDb)
+ MsiCloseHandle(hDb);
+ return WcaFinalize(er);
+}
+
+
+// DllMain - Initialize and cleanup WiX custom action utils.
+extern "C" BOOL WINAPI DllMain(
+ __in HINSTANCE hInst,
+ __in ULONG ulReason,
+ __in LPVOID
+ )
+{
+ switch(ulReason)
+ {
+ case DLL_PROCESS_ATTACH:
+ WcaGlobalInitialize(hInst);
+ break;
+
+ case DLL_PROCESS_DETACH:
+ WcaGlobalFinalize();
+ break;
+ }
+
+ return TRUE;
+}
Added: trunk/Installer/Custom/iis_actions/CustomAction.def
===================================================================
--- trunk/Installer/Custom/iis_actions/CustomAction.def (rev 0)
+++ trunk/Installer/Custom/iis_actions/CustomAction.def 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,5 @@
+LIBRARY "iis_actions"
+
+EXPORTS
+
+PopulateWebSites
Added: trunk/Installer/Custom/iis_actions/iis_actions.vcproj
===================================================================
--- trunk/Installer/Custom/iis_actions/iis_actions.vcproj (rev 0)
+++ trunk/Installer/Custom/iis_actions/iis_actions.vcproj 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,233 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9.00"
+ Name="iis_actions"
+ ProjectGUID="{13697B62-C1CD-47EF-9D9B-39F5B01693BB}"
+ RootNamespace="iis_actions"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="0"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="bin\$(ConfigurationName)"
+ IntermediateDirectory="obj\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="$(WIX)sdk\inc"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ UsePrecompiledHeader="2"
+ WarningLevel="3"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="msi.lib dutil.lib wcautil.lib"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="$(WIX)sdk\lib"
+ ModuleDefinitionFile="CustomAction.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="..\bin"
+ IntermediateDirectory="obj\$(ConfigurationName)"
+ ConfigurationType="2"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="2"
+ EnableIntrinsicFunctions="true"
+ AdditionalIncludeDirectories="$(WIX)sdk\inc"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS"
+ RuntimeLibrary="0"
+ EnableFunctionLevelLinking="true"
+ UsePrecompiledHeader="2"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalDependencies="msi.lib dutil.lib wcautil.lib"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="$(WIX)sdk\lib"
+ ModuleDefinitionFile="CustomAction.def"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\CustomAction.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\CustomAction.def"
+ >
+ </File>
+ <File
+ RelativePath=".\stdafx.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ UsePrecompiledHeader="1"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath=".\stdafx.h"
+ >
+ </File>
+ <File
+ RelativePath=".\targetver.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+ >
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Added: trunk/Installer/Custom/iis_actions/stdafx.cpp
===================================================================
--- trunk/Installer/Custom/iis_actions/stdafx.cpp (rev 0)
+++ trunk/Installer/Custom/iis_actions/stdafx.cpp 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,8 @@
+// stdafx.cpp : source file that includes just the standard includes
+// iis_actions.pch will be the pre-compiled header
+// stdafx.obj will contain the pre-compiled type information
+
+#include "stdafx.h"
+
+// TODO: reference any additional headers you need in STDAFX.H
+// and not in this file
Added: trunk/Installer/Custom/iis_actions/stdafx.h
===================================================================
--- trunk/Installer/Custom/iis_actions/stdafx.h (rev 0)
+++ trunk/Installer/Custom/iis_actions/stdafx.h 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,26 @@
+// stdafx.h : include file for standard system include files,
+// or project specific include files that are used frequently, but
+// are changed infrequently
+//
+
+#pragma once
+
+#include "targetver.h"
+
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
+// Windows Header Files:
+#include <windows.h>
+#include <tchar.h>
+#include <strsafe.h>
+#include <msiquery.h>
+
+#include "atlBase.h"
+#include <initguid.h>
+#include "iadmw.h"
+#include "iiscnfg.h"
+
+// WiX Header Files:
+#include <wcautil.h>
+
+
+// TODO: reference additional headers your program requires here
Added: trunk/Installer/Custom/iis_actions/targetver.h
===================================================================
--- trunk/Installer/Custom/iis_actions/targetver.h (rev 0)
+++ trunk/Installer/Custom/iis_actions/targetver.h 2010-02-24 15:02:55 UTC (rev 4609)
@@ -0,0 +1,24 @@
+#pragma once
+
+// The following macros define the minimum required platform. The minimum required platform
+// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run
+// your application. The macros work by enabling all features available on platform versions up to and
+// including the version specified.
+
+// Modify the following defines if you have to target a platform prior to the ones specified below.
+// Refer to MSDN for the latest info on corresponding values for different platforms.
+#ifndef WINVER // Specifies that the minimum required platform is Windows 2000.
+#define WINVER 0x0500 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows 2000.
+#define _WIN32_WINNT 0x0500 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 5.0.
+#define _WIN32_IE 0x0500 // Change this to the appropriate value to target other versions of IE.
+#endif
+
+#ifndef _WIN32_MSI // Specifies that the minimum required MSI version is MSI 3.1
+#define _WIN32_MSI 310 // Change this to the appropriate value to target other versions of MSI.
+#endif
Modified: trunk/Installer/Installer.sln
===================================================================
--- trunk/Installer/Installer.sln 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Installer.sln 2010-02-24 15:02:55 UTC (rev 4609)
@@ -19,6 +19,8 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "apache_actions", "Custom\apache_actions\apache_actions.vcproj", "{03FD713E-15EB-453E-AFDF-21F8DB45C11E}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iis_actions", "Custom\iis_actions\iis_actions.vcproj", "{13697B62-C1CD-47EF-9D9B-39F5B01693BB}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Mixed Platforms = Debug|Mixed Platforms
@@ -79,6 +81,16 @@
{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Release|Win32.ActiveCfg = Release|Win32
{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Release|Win32.Build.0 = Release|Win32
{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Release|x86.ActiveCfg = Release|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Debug|Mixed Platforms.Build.0 = Debug|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Debug|Win32.Build.0 = Debug|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Debug|x86.ActiveCfg = Debug|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Release|Mixed Platforms.Build.0 = Release|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Release|Win32.ActiveCfg = Release|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Release|Win32.Build.0 = Release|Win32
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB}.Release|x86.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -89,5 +101,6 @@
{D41D53C4-433E-47B5-B663-E79B5569EE22} = {D2A5CB4A-4494-4083-9FBE-64ED543F8FBD}
{01313DB9-2AAF-4791-9B81-69BCE3194531} = {D2A5CB4A-4494-4083-9FBE-64ED543F8FBD}
{03FD713E-15EB-453E-AFDF-21F8DB45C11E} = {9AB6202A-055B-49E8-9623-986202F0EAD8}
+ {13697B62-C1CD-47EF-9D9B-39F5B01693BB} = {9AB6202A-055B-49E8-9623-986202F0EAD8}
EndGlobalSection
EndGlobal
Modified: trunk/Installer/Installers/MapGuide/Lang/MapGuide_en-US.wxl
===================================================================
--- trunk/Installer/Installers/MapGuide/Lang/MapGuide_en-US.wxl 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Installers/MapGuide/Lang/MapGuide_en-US.wxl 2010-02-24 15:02:55 UTC (rev 4609)
@@ -5,7 +5,7 @@
http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo(vs.80).aspx
-->
<String Id="LANG">1033</String>
- <String Id="ProductName">MapGuide Open Source 2.1</String>
+ <String Id="ProductName">MapGuide Open Source 2.2</String>
<String Id="ProductManufacturer">Open Source Geospatial Foundation</String>
<String Id="InstallerTitle">[ProductName] Setup</String>
@@ -43,6 +43,7 @@
<String Id="IIS6ConfigDlg_Title">IIS 6.0 Configuration</String>
<String Id="IIS6ConfigDlg_Description">Configure IIS 6.0 Settings</String>
+ <String Id="IIS6ConfigDlg_InstallTo">Install Web Extensions to the following website</String>
<String Id="IIS6ConfigDlg_AppPool">Create an application pool</String>
<String Id="IIS6ConfigDlg_AppPoolDescription">An application pool allows MapGuide applications to be isolated from other applications running on the web server</String>
Modified: trunk/Installer/Installers/MapGuide/Lang/MapGuide_es-ES.wxl
===================================================================
--- trunk/Installer/Installers/MapGuide/Lang/MapGuide_es-ES.wxl 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Installers/MapGuide/Lang/MapGuide_es-ES.wxl 2010-02-24 15:02:55 UTC (rev 4609)
@@ -5,7 +5,7 @@
http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo(vs.80).aspx
-->
<String Id="LANG">3082</String>
- <String Id="ProductName">MapGuide Open Source 2.1</String>
+ <String Id="ProductName">MapGuide Open Source 2.2</String>
<String Id="ProductManufacturer">Open Source Geospatial Foundation</String>
<String Id="InstallerTitle">Instalación de [ProductName]</String>
@@ -43,6 +43,7 @@
<String Id="IIS6ConfigDlg_Title">Configuración de IIS 6.0</String>
<String Id="IIS6ConfigDlg_Description">Configurar IIS 6.0 Configuración</String>
+ <String Id="IIS6ConfigDlg_InstallTo">Instalación de extensiones Web de sitio web la siguiente</String>
<String Id="IIS6ConfigDlg_AppPool">Crear un grupo de aplicaciones</String>
<String Id="IIS6ConfigDlg_AppPoolDescription">Un grupo de aplicaciones MapGuide permite a las aplicaciones ser aislado de otras aplicaciones que se ejecutan en el servidor web</String>
Modified: trunk/Installer/Installers/MapGuide/MapGuide.wixproj
===================================================================
--- trunk/Installer/Installers/MapGuide/MapGuide.wixproj 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Installers/MapGuide/MapGuide.wixproj 2010-02-24 15:02:55 UTC (rev 4609)
@@ -5,7 +5,7 @@
<ProductVersion>3.0</ProductVersion>
<ProjectGuid>{12c62f60-6f52-4112-84ab-0fa8ed44ee77}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
- <OutputName Condition=" '$(OutputName)' == '' ">MapGuideOpenSource-2.1.0-Unofficial</OutputName>
+ <OutputName Condition=" '$(OutputName)' == '' ">MapGuideOpenSource</OutputName>
<OutputType>Package</OutputType>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.0\Wix.targets</WixTargetsPath>
<Name>MapGuide</Name>
Modified: trunk/Installer/Installers/MapGuide/MapGuide.wxs
===================================================================
--- trunk/Installer/Installers/MapGuide/MapGuide.wxs 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Installers/MapGuide/MapGuide.wxs 2010-02-24 15:02:55 UTC (rev 4609)
@@ -50,7 +50,14 @@
-->
<Property Id="SITE_ID" Secure="yes" Value="1" />
<Property Id="VIRTUALDIR" Secure="yes" Value="mapguide" />
- <Property Id="MG_WEBSITE" Secure="yes" Value="Default Web Site" />
+ <Property Id="MG_WEBSITE" Secure="yes" Value="Default Web Site">
+ <RegistrySearch
+ Id="MgWebsiteRs"
+ Type="raw"
+ Root="HKLM"
+ Key="$(var.MgRegKey)"
+ Name="MG_WEBSITE" />
+ </Property>
<!-- Add Remove Programs metadata -->
<Property Id="ARPHELPLINK" Value="http://mapguide.osgeo.org" />
@@ -280,7 +287,7 @@
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.CancelButtonText)" />
</Dialog>
- <!-- Dialog to configure IIS6 specific things: web-site installation and application pool -->
+ <!-- Dialog to configure IIS6 specific things: web-site installation and application pool (w/ Trac #361 enhancements) -->
<Dialog Id="IIS6ConfigDlg" Width="370" Height="270" Title="!(loc.InstallerTitle)">
<Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes" Text="{\WixUI_Font_Title}!(loc.IIS6ConfigDlg_Title)" />
<Control Id="Description" Type="Text" X="25" Y="23" Width="280" Height="15" Transparent="yes" NoPrefix="yes" Text="!(loc.IIS6ConfigDlg_Description)" />
@@ -288,15 +295,19 @@
<Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" Height="0" />
<!--
+ Install Web Extensions to the following website:
+ ________________________________________________|V|
Create an application pool: ___________________________
It is recommended to create an application pool if you are running mixed
ASP.net application environments on your web server.
-->
- <Control Id="LblAppPool" Type="Text" Text="!(loc.IIS6ConfigDlg_AppPool)" X="20" Y="80" Width="240" Height="15" />
- <Control Id="TxtAppPool" Type="Edit" Property="APP_POOL_NAME" X="20" Y="100" Width="240" Height="15" />
- <Control Id="LblAppPoolDescription" Type="Text" Text="!(loc.IIS6ConfigDlg_AppPoolDescription)" X="20" Y="120" Width="240" Height="45" />
+ <Control Id="LblWebSite" Type="Text" Text="!(loc.IIS6ConfigDlg_InstallTo)" X="20" Y="80" Width="240" Height="15" />
+ <Control Id="LstWebSite" Type="ListBox" Property="MG_WEBSITE" X="20" Y="100" Width="240" Height="60" />
+ <Control Id="LblAppPool" Type="Text" Text="!(loc.IIS6ConfigDlg_AppPool)" X="20" Y="170" Width="240" Height="15" />
+ <Control Id="TxtAppPool" Type="Edit" Property="APP_POOL_NAME" X="20" Y="190" Width="140" Height="15" />
+ <Control Id="LblAppPoolDescription" Type="Text" Text="!(loc.IIS6ConfigDlg_AppPoolDescription)" X="20" Y="210" Width="240" Height="30" />
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.NextButtonText)" />
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.BackButtonText)" />
@@ -495,6 +506,11 @@
</UI>
+ <!-- Trac #361: Run our custom CA as part of the UI install sequence -->
+ <InstallUISequence>
+ <Custom Action="EnumerateIIS6WebSites" After="CostFinalize" Overridable="yes">NOT Installed AND IISVERSIONMAJOR="#6"</Custom>
+ </InstallUISequence>
+
<InstallExecuteSequence>
<!-- IIS7 Base properties for deferred actions -->
Modified: trunk/Installer/Libraries/MapGuide Web Extensions/IIS.wxs
===================================================================
--- trunk/Installer/Libraries/MapGuide Web Extensions/IIS.wxs 2010-02-23 05:34:10 UTC (rev 4608)
+++ trunk/Installer/Libraries/MapGuide Web Extensions/IIS.wxs 2010-02-24 15:02:55 UTC (rev 4609)
@@ -2,124 +2,143 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
- <Fragment>
- <Property Id="FRAMEWORKDIR">
- <RegistrySearch Id="DotNetSearch" Root="HKLM" Key="Software\Microsoft\.NETFramework" Name="InstallRoot" Type="directory" />
- </Property>
- <PropertyRef Id="MGWEB_CONFIG"/>
- <PropertyRef Id="IISVERSIONMAJOR"/>
- <PropertyRef Id="IIS_API_TYPE"/>
+ <Fragment>
+ <Property Id="FRAMEWORKDIR">
+ <RegistrySearch Id="DotNetSearch" Root="HKLM" Key="Software\Microsoft\.NETFramework" Name="InstallRoot" Type="directory" />
+ </Property>
+ <PropertyRef Id="MGWEB_CONFIG"/>
+ <PropertyRef Id="IISVERSIONMAJOR"/>
+ <PropertyRef Id="IIS_API_TYPE"/>
- <CustomAction Id="AspNetRegIIS_Cmd" Property="AspNetRegIIS" Execute="immediate"
- Value=""[FRAMEWORKDIR]v2.0.50727\aspnet_regiis.exe" -s W3SVC/[SITE_ID]/ROOT/[VIRTUALDIR]" />
- <CustomAction Id="AspNetRegIIS" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no" />
+ <CustomAction Id="AspNetRegIIS_Cmd" Property="AspNetRegIIS" Execute="immediate"
+ Value=""[FRAMEWORKDIR]v2.0.50727\aspnet_regiis.exe" -s W3SVC/[SITE_ID]/ROOT/[VIRTUALDIR]" />
+ <CustomAction Id="AspNetRegIIS" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no" />
- <!-- This doesn't do anything; just a pointer -->
- <iis:WebSite Id="IISDefaultWebSite" Description="[MG_WEBSITE]">
- <iis:WebAddress Id="AllUnassigned" Port="80" />
- </iis:WebSite>
+ <!-- Begin Trac Ticket #361 stuff -->
+
- <Feature Id="IISSetupFeature" Level="1" Display="hidden" >
+ <!-- CA dll reference -->
+ <Binary Id="iis_uihelper" SourceFile="..\..\Custom\bin\iis_actions.dll" />
+ <CustomAction Id="EnumerateIIS6WebSites" BinaryKey="iis_uihelper" DllEntry="PopulateWebSites" Return="check" Execute="immediate" />
+
+ <!--
+ This is no longer a pointer, this will reference the site we choose from the UI selection. The key is in
+ the SiteId attribute, which is * to allow for a selection by web site name, instead of name/port/ip/header
+
+ For more information: http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg27928.html
+ -->
+ <iis:WebSite Id="IISDefaultWebSite" Description="[MG_WEBSITE]" SiteId="*">
+ <iis:WebAddress Id="AllUnassigned" Port="80" />
+ </iis:WebSite>
- <!-- IIS5 Base component -->
- <Component Id="IIS5BaseMapGuideComponent" Guid="4174B322-8449-4299-813F-E2B1FCB4ECB4" Directory="WEBEXTENSIONSLOCATION">
- <Condition>MGWEB_CONFIG="IIS" AND IISVERSIONMAJOR="#5"</Condition>
- <CreateFolder />
- <iis:WebVirtualDir Id="IIS5MapGuideVDir" Alias="[VIRTUALDIR]" Directory="WEBROOTLOCATION" WebSite="IISDefaultWebSite">
- <iis:WebDirProperties Id="IIS5MapGuideDocuments" DefaultDocuments="index.php,index.html,index.htm,default.aspx,index.aspx,default.htm,default.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
- <iis:WebApplication Id="IIS5MapGuideWebApp" Name="[VIRTUALDIR]">
- <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
- </iis:WebApplication>
- <iis:WebVirtualDir Id="IIS5MapAgentVDir" Alias="mapagent" Directory="dir_mapagent_0" >
- <iis:WebDirProperties Id="IIS5MapAgentProperties" DefaultDocuments="index.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
- <iis:WebError ErrorCode="401" SubCode="0" />
- <iis:WebError ErrorCode="401" SubCode="1" />
- <iis:WebError ErrorCode="401" SubCode="2" />
- <iis:WebError ErrorCode="401" SubCode="3" />
- <iis:WebError ErrorCode="401" SubCode="4" />
- <iis:WebError ErrorCode="401" SubCode="5" />
- <iis:WebApplication Id="IIS5MapAgentWebApp" Name="mapagent" >
- <iis:WebApplicationExtension Extension="fcgi" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_MAPAGENTFILES_96]" />
- <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
- </iis:WebApplication>
- </iis:WebVirtualDir>
- <iis:WebVirtualDir Id="IIS5MapAdminVDir" Alias="mapadmin" Directory="dir_mapadmin_0" >
- <iis:WebDirProperties Id="IIS5MapAdminDocument" DefaultDocuments="login.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
- </iis:WebVirtualDir>
- </iis:WebVirtualDir>
- </Component>
+ <!-- End Trac Ticket #361 stuff -->
- <!-- IIS5 PHP MapViewer component -->
- <Component Id="IIS5PhpViewerComponent" Guid="1E56B410-1305-4406-BDFB-1252E159B746" Directory="WEBEXTENSIONSLOCATION">
- <Condition>MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND IISVERSIONMAJOR="#5"</Condition>
- <CreateFolder />
- <iis:WebVirtualDir Id="IIS5PhpViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewerphp_0" WebSite="IISDefaultWebSite">
- <iis:WebDirProperties Id="IIS5PhpViewerDocument" DefaultDocuments="ajaxviewer.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
- </iis:WebVirtualDir>
- </Component>
+ <Feature Id="IISSetupFeature" Level="1" Display="hidden" >
- <!-- IIS5 DotNet MapViewer component -->
- <Component Id="IIS5DotNetViewerComponent" Guid="EC460125-D5D4-4596-BD03-B8D920F02E7F" Directory="WEBEXTENSIONSLOCATION">
- <Condition>NETFRAMEWORK20 AND MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND IISVERSIONMAJOR="#5"</Condition>
- <CreateFolder />
- <iis:WebVirtualDir Id="IIS5DotNetViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewernet_0" WebSite="IISDefaultWebSite">
- <iis:WebDirProperties Id="IIS5DotNetViewerDocument" DefaultDocuments="ajaxviewer.aspx" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- <iis:WebApplication Id="IIS5MapViewerWebApp" Name="mapviewerajax" />
- </iis:WebVirtualDir>
- </Component>
+ <!-- IIS5 Base component -->
+ <Component Id="IIS5BaseMapGuideComponent" Guid="4174B322-8449-4299-813F-E2B1FCB4ECB4" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>MGWEB_CONFIG="IIS" AND IISVERSIONMAJOR="#5"</Condition>
+ <CreateFolder />
+ <iis:WebVirtualDir Id="IIS5MapGuideVDir" Alias="[VIRTUALDIR]" Directory="WEBROOTLOCATION" WebSite="IISDefaultWebSite">
+ <iis:WebDirProperties Id="IIS5MapGuideDocuments" DefaultDocuments="index.php,index.html,index.htm,default.aspx,index.aspx,default.htm,default.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
+ <iis:WebApplication Id="IIS5MapGuideWebApp" Name="[VIRTUALDIR]">
+ <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
+ </iis:WebApplication>
+ <iis:WebVirtualDir Id="IIS5MapAgentVDir" Alias="mapagent" Directory="dir_mapagent_0" >
+ <iis:WebDirProperties Id="IIS5MapAgentProperties" DefaultDocuments="index.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
+ <iis:WebError ErrorCode="401" SubCode="0" />
+ <iis:WebError ErrorCode="401" SubCode="1" />
+ <iis:WebError ErrorCode="401" SubCode="2" />
+ <iis:WebError ErrorCode="401" SubCode="3" />
+ <iis:WebError ErrorCode="401" SubCode="4" />
+ <iis:WebError ErrorCode="401" SubCode="5" />
+ <iis:WebApplication Id="IIS5MapAgentWebApp" Name="mapagent" >
+ <iis:WebApplicationExtension Extension="fcgi" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_MAPAGENTFILES_96]" />
+ <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
+ </iis:WebApplication>
+ </iis:WebVirtualDir>
+ <iis:WebVirtualDir Id="IIS5MapAdminVDir" Alias="mapadmin" Directory="dir_mapadmin_0" >
+ <iis:WebDirProperties Id="IIS5MapAdminDocument" DefaultDocuments="login.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
+ </iis:WebVirtualDir>
+ </iis:WebVirtualDir>
+ </Component>
- <!-- IIS6 Base component -->
- <Component Id="IIS6BaseMapGuideComponent" Guid="BC77760D-55D5-4111-BC1D-50CEC0482D60" Directory="WEBEXTENSIONSLOCATION">
- <Condition>MGWEB_CONFIG="IIS" AND IISVERSIONMAJOR="#6"</Condition>
- <CreateFolder />
- <iis:WebAppPool Id="IIS6MapGuideAppPool" Name="[APP_POOL_NAME]" />
- <iis:WebServiceExtension Id="IIS6PhpWebServiceExt" Allow="yes" Description="MapGuide PHP ISAPI Extension" File="[!file_PHPFILES_40]" />
- <iis:WebServiceExtension Id="IIS6MapGuideWebServiceExt" Allow="yes" Description="MapGuide MapAgent ISAPI Extension" File="[!file_MAPAGENTFILES_96]" />
- <iis:WebVirtualDir Id="IIS6MapGuideVDir" Alias="[VIRTUALDIR]" Directory="WEBROOTLOCATION" WebSite="IISDefaultWebSite" >
- <iis:WebDirProperties Id="IIS6MapGuideDocuments" DefaultDocuments="index.php,index.html,index.htm,default.aspx,index.aspx,default.htm,default.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- <iis:MimeMap Id="IIS6JsonMimeType" Type="application/json" Extension =".json" />
- <iis:WebApplication Id="IIS6MapGuideWebApp" Name="[VIRTUALDIR]" WebAppPool="IIS6MapGuideAppPool" >
- <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
- </iis:WebApplication>
- <iis:WebVirtualDir Id="IIS6MapAgentVDir" Alias="mapagent" Directory="dir_mapagent_0" >
- <iis:WebDirProperties Id="IIS6MapAgentProperties" DefaultDocuments="index.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- <iis:WebError ErrorCode="401" SubCode="0"/>
- <iis:WebError ErrorCode="401" SubCode="1" />
- <iis:WebError ErrorCode="401" SubCode="2" />
- <iis:WebError ErrorCode="401" SubCode="3" />
- <iis:WebError ErrorCode="401" SubCode="4" />
- <iis:WebError ErrorCode="401" SubCode="5" />
- <iis:WebApplication Id="IIS6MapAgentWebApp" Name="mapagent" WebAppPool="IIS6MapGuideAppPool">
- <iis:WebApplicationExtension Extension="fcgi" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_MAPAGENTFILES_96]" />
- <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
- </iis:WebApplication>
- </iis:WebVirtualDir>
- <iis:WebVirtualDir Id="IIS6MapAdminVDir" Alias="mapadmin" Directory="dir_mapadmin_0" >
- <iis:WebDirProperties Id="IIS6MapAdminDocument" DefaultDocuments="login.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- </iis:WebVirtualDir>
- </iis:WebVirtualDir>
- </Component>
+ <!-- IIS5 PHP MapViewer component -->
+ <Component Id="IIS5PhpViewerComponent" Guid="1E56B410-1305-4406-BDFB-1252E159B746" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND IISVERSIONMAJOR="#5"</Condition>
+ <CreateFolder />
+ <iis:WebVirtualDir Id="IIS5PhpViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewerphp_0" WebSite="IISDefaultWebSite">
+ <iis:WebDirProperties Id="IIS5PhpViewerDocument" DefaultDocuments="ajaxviewer.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no"/>
+ </iis:WebVirtualDir>
+ </Component>
- <!-- IIS6 PHP MapViewer component -->
- <Component Id="IIS6PhpViewerComponent" Guid="6CDC8E73-B6B1-4A2E-98E3-953C399D1D0D" Directory="WEBEXTENSIONSLOCATION">
- <Condition>MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND IISVERSIONMAJOR="#6"</Condition>
- <CreateFolder />
- <iis:WebVirtualDir Id="IIS6PhpViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewerphp_0" WebSite="IISDefaultWebSite">
- <iis:WebDirProperties Id="IIS6PhpViewerDocument" DefaultDocuments="ajaxviewer.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- </iis:WebVirtualDir>
- </Component>
+ <!-- IIS5 DotNet MapViewer component -->
+ <Component Id="IIS5DotNetViewerComponent" Guid="EC460125-D5D4-4596-BD03-B8D920F02E7F" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>NETFRAMEWORK20 AND MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND IISVERSIONMAJOR="#5"</Condition>
+ <CreateFolder />
+ <iis:WebVirtualDir Id="IIS5DotNetViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewernet_0" WebSite="IISDefaultWebSite">
+ <iis:WebDirProperties Id="IIS5DotNetViewerDocument" DefaultDocuments="ajaxviewer.aspx" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ <iis:WebApplication Id="IIS5MapViewerWebApp" Name="mapviewerajax" />
+ </iis:WebVirtualDir>
+ </Component>
+
+ <!-- Trac #361 -->
+ <Component Id="PersistWebsiteSelection" Guid="0C0CBB26-C99B-486a-9367-15D49AC9726B" Directory="WEBEXTENSIONSLOCATION">
+ <RegistryKey Root="HKLM" Key="$(var.MgRegKey)">
+ <RegistryValue Name="MG_WEBSITE" Type="string" Value="[MG_WEBSITE]" />
+ </RegistryKey>
+ </Component>
+
+ <!-- IIS6 Base component -->
+ <Component Id="IIS6BaseMapGuideComponent" Guid="BC77760D-55D5-4111-BC1D-50CEC0482D60" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>MGWEB_CONFIG="IIS" AND IISVERSIONMAJOR="#6"</Condition>
+ <CreateFolder />
+ <iis:WebAppPool Id="IIS6MapGuideAppPool" Name="[APP_POOL_NAME]" />
+ <iis:WebServiceExtension Id="IIS6PhpWebServiceExt" Allow="yes" Description="MapGuide PHP ISAPI Extension" File="[!file_PHPFILES_40]" />
+ <iis:WebServiceExtension Id="IIS6MapGuideWebServiceExt" Allow="yes" Description="MapGuide MapAgent ISAPI Extension" File="[!file_MAPAGENTFILES_96]" />
+ <iis:WebVirtualDir Id="IIS6MapGuideVDir" Alias="[VIRTUALDIR]" Directory="WEBROOTLOCATION" WebSite="IISDefaultWebSite" >
+ <iis:WebDirProperties Id="IIS6MapGuideDocuments" DefaultDocuments="index.php,index.html,index.htm,default.aspx,index.aspx,default.htm,default.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ <iis:MimeMap Id="IIS6JsonMimeType" Type="application/json" Extension =".json" />
+ <iis:WebApplication Id="IIS6MapGuideWebApp" Name="[VIRTUALDIR]" WebAppPool="IIS6MapGuideAppPool" >
+ <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
+ </iis:WebApplication>
+ <iis:WebVirtualDir Id="IIS6MapAgentVDir" Alias="mapagent" Directory="dir_mapagent_0" >
+ <iis:WebDirProperties Id="IIS6MapAgentProperties" DefaultDocuments="index.html" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ <iis:WebError ErrorCode="401" SubCode="0"/>
+ <iis:WebError ErrorCode="401" SubCode="1" />
+ <iis:WebError ErrorCode="401" SubCode="2" />
+ <iis:WebError ErrorCode="401" SubCode="3" />
+ <iis:WebError ErrorCode="401" SubCode="4" />
+ <iis:WebError ErrorCode="401" SubCode="5" />
+ <iis:WebApplication Id="IIS6MapAgentWebApp" Name="mapagent" WebAppPool="IIS6MapGuideAppPool">
+ <iis:WebApplicationExtension Extension="fcgi" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_MAPAGENTFILES_96]" />
+ <iis:WebApplicationExtension Extension="php" Script="yes" Verbs="GET,POST" CheckPath="no" Executable="[!file_PHPFILES_40]" />
+ </iis:WebApplication>
+ </iis:WebVirtualDir>
+ <iis:WebVirtualDir Id="IIS6MapAdminVDir" Alias="mapadmin" Directory="dir_mapadmin_0" >
+ <iis:WebDirProperties Id="IIS6MapAdminDocument" DefaultDocuments="login.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ </iis:WebVirtualDir>
+ </iis:WebVirtualDir>
+ </Component>
- <!-- IIS6 DotNet MapViewer component -->
- <Component Id="IIS6DotNetViewerComponent" Guid="357E1C68-9E29-474F-A783-6F8FD8BCEAB4" Directory="WEBEXTENSIONSLOCATION">
- <Condition>NETFRAMEWORK20 AND MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND IISVERSIONMAJOR="#6"</Condition>
- <CreateFolder />
- <iis:WebVirtualDir Id="IIS6DotNetViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewernet_0" WebSite="IISDefaultWebSite">
- <iis:WebDirProperties Id="IIS6DotNetViewerDocument" DefaultDocuments="ajaxviewer.aspx" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
- <iis:WebApplication Id="IIS6MapViewerWebApp" Name="mapviewerajax" WebAppPool="IIS6MapGuideAppPool" />
- </iis:WebVirtualDir>
- </Component>
+ <!-- IIS6 PHP MapViewer component -->
+ <Component Id="IIS6PhpViewerComponent" Guid="6CDC8E73-B6B1-4A2E-98E3-953C399D1D0D" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND IISVERSIONMAJOR="#6"</Condition>
+ <CreateFolder />
+ <iis:WebVirtualDir Id="IIS6PhpViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewerphp_0" WebSite="IISDefaultWebSite">
+ <iis:WebDirProperties Id="IIS6PhpViewerDocument" DefaultDocuments="ajaxviewer.php" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ </iis:WebVirtualDir>
+ </Component>
- </Feature>
-
- </Fragment>
+ <!-- IIS6 DotNet MapViewer component -->
+ <Component Id="IIS6DotNetViewerComponent" Guid="357E1C68-9E29-474F-A783-6F8FD8BCEAB4" Directory="WEBEXTENSIONSLOCATION">
+ <Condition>NETFRAMEWORK20 AND MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND IISVERSIONMAJOR="#6"</Condition>
+ <CreateFolder />
+ <iis:WebVirtualDir Id="IIS6DotNetViewerVDir" Alias="mapguide/mapviewerajax" Directory="dir_mapviewernet_0" WebSite="IISDefaultWebSite">
+ <iis:WebDirProperties Id="IIS6DotNetViewerDocument" DefaultDocuments="ajaxviewer.aspx" AnonymousAccess="yes" BasicAuthentication="no" WindowsAuthentication="no" />
+ <iis:WebApplication Id="IIS6MapViewerWebApp" Name="mapviewerajax" WebAppPool="IIS6MapGuideAppPool" />
+ </iis:WebVirtualDir>
+ </Component>
+ </Feature>
+ </Fragment>
</Wix>
\ No newline at end of file
More information about the mapguide-commits
mailing list