[mapguide-commits] r10208 - in sandbox/jng/installer_wix6: . Custom/apache_actions FdoRegUtil Installers/MapGuide Installers/MapGuide/Lang Libraries/CS Map Libraries/CS Map/Lang Libraries/MapGuide Server Libraries/MapGuide Server/Lang Libraries/MapGuide Web Extensions Libraries/MapGuide Web Extensions/Lang

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Sat Mar 14 10:26:43 PDT 2026


Author: jng
Date: 2026-03-14 10:26:43 -0700 (Sat, 14 Mar 2026)
New Revision: 10208

Added:
   sandbox/jng/installer_wix6/Libraries/CS Map/HarvestFiles.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/HarvestFiles.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/HarvestFiles.wxs
Modified:
   sandbox/jng/installer_wix6/
   sandbox/jng/installer_wix6/Custom/apache_actions/apache_actions.vcxproj
   sandbox/jng/installer_wix6/FdoRegUtil/FdoRegUtil.vcxproj
   sandbox/jng/installer_wix6/InstallerPreReq.sln
   sandbox/jng/installer_wix6/InstallerWix.sln
   sandbox/jng/installer_wix6/Installers/MapGuide/Lang/MapGuide_en-US.wxl
   sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wixproj
   sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wxs
   sandbox/jng/installer_wix6/Libraries/CS Map/CS Map.wixproj
   sandbox/jng/installer_wix6/Libraries/CS Map/CSMap.wxs
   sandbox/jng/installer_wix6/Libraries/CS Map/Lang/CSMap_en-US.wxl
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/FDO.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/InstallService.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/Lang/MapGuideServer_en-US.wxl
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuide Server.wixproj
   sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuideServer.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Apache.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/IIS7.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Lang/MapGuideWebExtensions_en-US.wxl
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuide Web Extensions.wixproj
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuideWebExtensions.wxs
   sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Shortcuts.wxs
   sandbox/jng/installer_wix6/build.bat
Log:
Initial migration to Wix Toolset 6.x. Drop 32-bit/x86 configurations and targets in the process.

Wix 6.x also supports native file harvesting with wildcard support. So using a tool like Paraffin should no longer be required.

Once further testing confirms our installer still works, we will remove Paraffin.

Index: sandbox/jng/installer_wix6
===================================================================
--- sandbox/jng/installer_wix6	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6	2026-03-14 17:26:43 UTC (rev 10208)

Property changes on: sandbox/jng/installer_wix6
___________________________________________________________________
Modified: svn:ignore
## -3,3 +3,4 ##
 *.ncb
 *.cache
 ipch
+.vs
Modified: sandbox/jng/installer_wix6/Custom/apache_actions/apache_actions.vcxproj
===================================================================
--- sandbox/jng/installer_wix6/Custom/apache_actions/apache_actions.vcxproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Custom/apache_actions/apache_actions.vcxproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,18 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup Label="ProjectConfigurations">
-    <ProjectConfiguration Include="Debug|Win32">
-      <Configuration>Debug</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|x64">
       <Configuration>Release</Configuration>
       <Platform>x64</Platform>
@@ -25,20 +17,11 @@
     <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v142</PlatformToolset>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v142</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>DynamicLibrary</ConfigurationType>
-    <PlatformToolset>v142</PlatformToolset>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <PlatformToolset>v142</PlatformToolset>
@@ -46,18 +29,10 @@
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
-  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
-  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
@@ -65,13 +40,7 @@
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
     <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\bin$(PlatformToolsetVersion)_$(Platform)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release$(PlatformToolsetVersion)_$(Platform)\</IntDir>
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug$(PlatformToolsetVersion)_$(Platform)\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug$(PlatformToolsetVersion)_$(Platform)\</IntDir>
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -82,54 +51,6 @@
     <OutDir>.\Debug$(PlatformToolsetVersion)_$(Platform)\</OutDir>
     <IntDir>.\Debug$(PlatformToolsetVersion)_$(Platform)\</IntDir>
   </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <Midl>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MkTypLibCompatible>true</MkTypLibCompatible>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <TargetEnvironment>Win32</TargetEnvironment>
-      <TypeLibraryName>.\../bin/apache_actions.tlb</TypeLibraryName>
-      <HeaderFileName>
-      </HeaderFileName>
-    </Midl>
-    <ClCompile>
-      <Optimization>MaxSpeed</Optimization>
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;APACHE_ACTIONS_EXPORTS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <StringPooling>true</StringPooling>
-      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>stdafx.h</PrecompiledHeaderFile>
-      <PrecompiledHeaderOutputFile>.\Release$(PlatformToolsetVersion)_$(Platform)\apache_actions.pch</PrecompiledHeaderOutputFile>
-      <AssemblerListingLocation>
-      </AssemblerListingLocation>
-      <ObjectFileName>.\Release$(PlatformToolsetVersion)_$(Platform)\</ObjectFileName>
-      <ProgramDataBaseFileName>.\Release$(PlatformToolsetVersion)_$(Platform)\</ProgramDataBaseFileName>
-      <WarningLevel>Level3</WarningLevel>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-    </ClCompile>
-    <ResourceCompile>
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <Culture>0x0409</Culture>
-    </ResourceCompile>
-    <Link>
-      <AdditionalDependencies>msi.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <OutputFile>$(OutDir)$(ProjectName).dll</OutputFile>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <ModuleDefinitionFile>.\apache_actions.def</ModuleDefinitionFile>
-      <ProgramDatabaseFile>.\bin$(PlatformToolsetVersion)_$(Platform)\apache_actions.pdb</ProgramDatabaseFile>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <DataExecutionPrevention>
-      </DataExecutionPrevention>
-      <ImportLibrary>.\bin$(PlatformToolsetVersion)_$(Platform)\apache_actions.lib</ImportLibrary>
-      <TargetMachine>MachineX86</TargetMachine>
-    </Link>
-    <Bscmake>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <OutputFile>.\../bin/apache_actions.bsc</OutputFile>
-    </Bscmake>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
     <Midl>
       <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -176,54 +97,6 @@
       <OutputFile>.\../bin/apache_actions.bsc</OutputFile>
     </Bscmake>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <Midl>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MkTypLibCompatible>true</MkTypLibCompatible>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <TargetEnvironment>Win32</TargetEnvironment>
-      <TypeLibraryName>.\Debug/apache_actions.tlb</TypeLibraryName>
-      <HeaderFileName>
-      </HeaderFileName>
-    </Midl>
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;APACHE_ACTIONS_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <PrecompiledHeaderFile>stdafx.h</PrecompiledHeaderFile>
-      <PrecompiledHeaderOutputFile>.\Debug$(PlatformToolsetVersion)_$(Platform)\apache_actions.pch</PrecompiledHeaderOutputFile>
-      <AssemblerListingLocation>.\Debug$(PlatformToolsetVersion)_$(Platform)\</AssemblerListingLocation>
-      <ObjectFileName>.\Debug$(PlatformToolsetVersion)_$(Platform)\</ObjectFileName>
-      <ProgramDataBaseFileName>.\Debug$(PlatformToolsetVersion)_$(Platform)\</ProgramDataBaseFileName>
-      <WarningLevel>Level3</WarningLevel>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
-    </ClCompile>
-    <ResourceCompile>
-      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <Culture>0x0409</Culture>
-    </ResourceCompile>
-    <Link>
-      <AdditionalDependencies>odbc32.lib;odbccp32.lib;msi.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <OutputFile>.\Debug$(PlatformToolsetVersion)_$(Platform)\apache_actions.dll</OutputFile>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <ModuleDefinitionFile>.\apache_actions.def</ModuleDefinitionFile>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <ProgramDatabaseFile>.\Debug$(PlatformToolsetVersion)_$(Platform)\apache_actions.pdb</ProgramDatabaseFile>
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>
-      <DataExecutionPrevention>
-      </DataExecutionPrevention>
-      <ImportLibrary>.\Debug$(PlatformToolsetVersion)_$(Platform)\apache_actions.lib</ImportLibrary>
-      <TargetMachine>MachineX86</TargetMachine>
-    </Link>
-    <Bscmake>
-      <SuppressStartupBanner>true</SuppressStartupBanner>
-      <OutputFile>.\Debug/apache_actions.bsc</OutputFile>
-    </Bscmake>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
     <Midl>
       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -271,17 +144,12 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="apache_actions.cpp">
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
     </ClCompile>
     <ClCompile Include="StdAfx.cpp">
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
     </ClCompile>
   </ItemGroup>

Modified: sandbox/jng/installer_wix6/FdoRegUtil/FdoRegUtil.vcxproj
===================================================================
--- sandbox/jng/installer_wix6/FdoRegUtil/FdoRegUtil.vcxproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/FdoRegUtil/FdoRegUtil.vcxproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,18 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup Label="ProjectConfigurations">
-    <ProjectConfiguration Include="Debug|Win32">
-      <Configuration>Debug</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|x64">
       <Configuration>Release</Configuration>
       <Platform>x64</Platform>
@@ -21,21 +13,10 @@
   <PropertyGroup Label="Globals">
     <ProjectGuid>{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}</ProjectGuid>
     <RootNamespace>FdoRegUtil</RootNamespace>
-    <Keyword>Win32Proj</Keyword>
+    <Keyword>ConsoleApplication</Keyword>
     <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v142</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <CharacterSet>Unicode</CharacterSet>
-    <PlatformToolset>v142</PlatformToolset>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>Application</ConfigurationType>
     <CharacterSet>Unicode</CharacterSet>
@@ -50,12 +31,6 @@
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
   </ImportGroup>
@@ -65,39 +40,13 @@
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
     <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</IntDir>
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\Debug64\</OutDir>
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\Debug64\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</OutDir>
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</IntDir>
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\Release64\</OutDir>
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\Release64\</IntDir>
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
   </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      <AdditionalIncludeDirectories>..\..\MgDev\Oem\Fdo\Inc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>FDO.lib;FDOCommon.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <AdditionalLibraryDirectories>..\..\MgDev\Oem\Fdo\Lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <SubSystem>Console</SubSystem>
-      <TargetMachine>MachineX86</TargetMachine>
-    </Link>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
     <Midl>
       <TargetEnvironment>X64</TargetEnvironment>
@@ -121,28 +70,6 @@
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <ClCompile>
-      <Optimization>MaxSpeed</Optimization>
-      <IntrinsicFunctions>true</IntrinsicFunctions>
-      <AdditionalIncludeDirectories>..\..\MgDev\Oem\Fdo\Inc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
-      <FunctionLevelLinking>true</FunctionLevelLinking>
-      <PrecompiledHeader>Use</PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>FDO.lib;FDOCommon.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <AdditionalLibraryDirectories>..\..\MgDev\Oem\Fdo\Lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-      <GenerateDebugInformation>true</GenerateDebugInformation>
-      <SubSystem>Console</SubSystem>
-      <OptimizeReferences>true</OptimizeReferences>
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>
-      <TargetMachine>MachineX86</TargetMachine>
-    </Link>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
     <Midl>
       <TargetEnvironment>X64</TargetEnvironment>
@@ -171,9 +98,7 @@
   <ItemGroup>
     <ClCompile Include="FdoRegUtil.cpp" />
     <ClCompile Include="stdafx.cpp">
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
     </ClCompile>
   </ItemGroup>

Modified: sandbox/jng/installer_wix6/InstallerPreReq.sln
===================================================================
--- sandbox/jng/installer_wix6/InstallerPreReq.sln	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/InstallerPreReq.sln	2026-03-14 17:26:43 UTC (rev 10208)
@@ -8,26 +8,16 @@
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Win32 = Debug|Win32
 		Debug|x64 = Debug|x64
-		Release|Win32 = Release|Win32
 		Release|x64 = Release|x64
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Debug|Win32.ActiveCfg = Debug|Win32
-		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Debug|Win32.Build.0 = Debug|Win32
-		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Debug|x64.ActiveCfg = Debug|Win32
-		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Debug|x64.Build.0 = Debug|Win32
-		{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}.Debug|x64.ActiveCfg = Debug|x64
+		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Debug|x64.Build.0 = Debug|x64
 		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Release|x64.ActiveCfg = Release|x64
 		{03FD713E-15EB-453E-AFDF-21F8DB45C11E}.Release|x64.Build.0 = Release|x64
-		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Debug|Win32.ActiveCfg = Debug|Win32
-		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Debug|Win32.Build.0 = Debug|Win32
 		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Debug|x64.ActiveCfg = Debug|x64
 		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Debug|x64.Build.0 = Debug|x64
-		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Release|Win32.ActiveCfg = Release|Win32
-		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Release|Win32.Build.0 = Release|Win32
 		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Release|x64.ActiveCfg = Release|x64
 		{F671A5C4-A796-4CF4-A71F-97B0265B4FBE}.Release|x64.Build.0 = Release|x64
 	EndGlobalSection

Modified: sandbox/jng/installer_wix6/InstallerWix.sln
===================================================================
--- sandbox/jng/installer_wix6/InstallerWix.sln	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/InstallerWix.sln	2026-03-14 17:26:43 UTC (rev 10208)
@@ -11,39 +11,25 @@
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|x64 = Debug|x64
-		Debug|x86 = Debug|x86
 		Release|x64 = Release|x64
-		Release|x86 = Release|x86
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Debug|x64.ActiveCfg = Debug|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Debug|x86.ActiveCfg = Debug|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Debug|x86.Build.0 = Debug|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x64.ActiveCfg = Release|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x64.Build.0 = Release|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x86.ActiveCfg = Release|x86
-		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x86.Build.0 = Release|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Debug|x64.ActiveCfg = Debug|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Debug|x86.ActiveCfg = Debug|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Debug|x86.Build.0 = Debug|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x64.ActiveCfg = Release|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x64.Build.0 = Release|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x86.ActiveCfg = Release|x86
-		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x86.Build.0 = Release|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Debug|x64.ActiveCfg = Debug|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Debug|x86.ActiveCfg = Debug|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Debug|x86.Build.0 = Debug|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x64.ActiveCfg = Release|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x64.Build.0 = Release|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x86.ActiveCfg = Release|x86
-		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x86.Build.0 = Release|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Debug|x64.ActiveCfg = Debug|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Debug|x86.ActiveCfg = Debug|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Debug|x86.Build.0 = Debug|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x64.ActiveCfg = Release|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x64.Build.0 = Release|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x86.ActiveCfg = Release|x86
-		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x86.Build.0 = Release|x86
+		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Debug|x64.ActiveCfg = Debug|x64
+		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Debug|x64.Build.0 = Debug|x64
+		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x64.ActiveCfg = Release|x64
+		{01313DB9-2AAF-4791-9B81-69BCE3194531}.Release|x64.Build.0 = Release|x64
+		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Debug|x64.ActiveCfg = Debug|x64
+		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Debug|x64.Build.0 = Debug|x64
+		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x64.ActiveCfg = Release|x64
+		{715E2D88-E822-4A9A-A5A2-DBB71CD9B320}.Release|x64.Build.0 = Release|x64
+		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Debug|x64.ActiveCfg = Debug|x64
+		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Debug|x64.Build.0 = Debug|x64
+		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x64.ActiveCfg = Release|x64
+		{D41D53C4-433E-47B5-B663-E79B5569EE22}.Release|x64.Build.0 = Release|x64
+		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Debug|x64.ActiveCfg = Debug|x64
+		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Debug|x64.Build.0 = Debug|x64
+		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x64.ActiveCfg = Release|x64
+		{12C62F60-6F52-4112-84AB-0FA8ED44EE77}.Release|x64.Build.0 = Release|x64
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

Modified: sandbox/jng/installer_wix6/Installers/MapGuide/Lang/MapGuide_en-US.wxl
===================================================================
--- sandbox/jng/installer_wix6/Installers/MapGuide/Lang/MapGuide_en-US.wxl	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Installers/MapGuide/Lang/MapGuide_en-US.wxl	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,149 +1,148 @@
-<?xml version="1.0" encoding="utf-8"?>
-<WixLocalization Culture="en-US" xmlns="http://schemas.microsoft.com/wix/2006/localization">
+<WixLocalization Culture="en-US" xmlns="http://wixtoolset.org/schemas/v4/wxl">
     <!-- 
     Use this link to get the culture id
     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.4</String>
-    <String Id="ProductManufacturer">Open Source Geospatial Foundation</String>
+    <String Id="LANG" Value="1033" />
+    <String Id="ProductName" Value="MapGuide Open Source 2.4" />
+    <String Id="ProductManufacturer" Value="Open Source Geospatial Foundation" />
 
-    <String Id="InstallerTitle">[ProductName] Setup</String>
+    <String Id="InstallerTitle" Value="[ProductName] Setup" />
 
-    <String Id="MapGuideFeature">MapGuide</String>
-    <String Id="MapGuideFeature_Description">MapGuide Install Location</String>
+    <String Id="MapGuideFeature" Value="MapGuide" />
+    <String Id="MapGuideFeature_Description" Value="MapGuide Install Location" />
 
-    <String Id="NextButtonText">Next</String>
-    <String Id="BackButtonText">Back</String>
-    <String Id="CancelButtonText">Cancel</String>
+    <String Id="NextButtonText" Value="Next" />
+    <String Id="BackButtonText" Value="Back" />
+    <String Id="CancelButtonText" Value="Cancel" />
 
-    <String Id="DisabledFeaturesDialog_Title">Disabled Features</String>
-    <String Id="DisabledFeaturesDialog_Description">Some features will not be available</String>
-    <String Id="DisabledFeaturesDialog_IIS">IIS is not installed, so it will not be available as an installation choice.</String>
-    <String Id="DisabledFeaturesDialog_DotNet">The .NET Framework 4.0 was not found, so the .NET Web Extensions for IIS will not be available</String>
-    <String Id="DisabledFeaturesDialog_Instructions">If you want to use these features, click on cancel and correct the problem before proceeding with installation</String>
+    <String Id="DisabledFeaturesDialog_Title" Value="Disabled Features" />
+    <String Id="DisabledFeaturesDialog_Description" Value="Some features will not be available" />
+    <String Id="DisabledFeaturesDialog_IIS" Value="IIS is not installed, so it will not be available as an installation choice." />
+    <String Id="DisabledFeaturesDialog_DotNet" Value="The .NET Framework 4.0 was not found, so the .NET Web Extensions for IIS will not be available" />
+    <String Id="DisabledFeaturesDialog_Instructions" Value="If you want to use these features, click on cancel and correct the problem before proceeding with installation" />
 
-    <String Id="FastCgiDialog_Title">FastCGI is required</String>
-    <String Id="FastCgiDialog_Description">FastCGI needs to be installed</String>
-    <String Id="FastCgiDialog_Instructions">MapGuide IIS Configuration requires FastCGI to be installed on this system</String>
-    <String Id="FastCgiDialog_Instructions2">You can follow the link below for more information on how to enable FastCGI</String>
-    <String Id="FastCgiDialog_Link">http://www.iis.net/fastcgi/configuration</String>
-    <String Id="FastCgiDialog_Instructions3">You can ignore this message if FastCGI for IIS is already enabled. Otherwise you must cancel this installation and enable FastCGI first</String>
+    <String Id="FastCgiDialog_Title" Value="FastCGI is required" />
+    <String Id="FastCgiDialog_Description" Value="FastCGI needs to be installed" />
+    <String Id="FastCgiDialog_Instructions" Value="MapGuide IIS Configuration requires FastCGI to be installed on this system" />
+    <String Id="FastCgiDialog_Instructions2" Value="You can follow the link below for more information on how to enable FastCGI" />
+    <String Id="FastCgiDialog_Link" Value="http://www.iis.net/fastcgi/configuration" />
+    <String Id="FastCgiDialog_Instructions3" Value="You can ignore this message if FastCGI for IIS is already enabled. Otherwise you must cancel this installation and enable FastCGI first" />
 
-    <String Id="ServerConfigDlg_Title">Server Port Configuration</String>
-    <String Id="ServerConfigDlg_Description">Set up the listening ports for MapGuide Server</String>
-    <String Id="ServerConfigDlg_Prompt">MapGuide Server will be installed using the following port numbers. The Server and Web Tier configuration files will be set to use the specified port numbers below.</String>
-    <String Id="ServerConfigDlg_AdminPortNo">Admin Connection Port</String>
-    <String Id="ServerConfigDlg_ClientPortNo">Client Connection Port</String>
-    <String Id="ServerConfigDlg_SitePortNo">Site Connection Port</String>
+    <String Id="ServerConfigDlg_Title" Value="Server Port Configuration" />
+    <String Id="ServerConfigDlg_Description" Value="Set up the listening ports for MapGuide Server" />
+    <String Id="ServerConfigDlg_Prompt" Value="MapGuide Server will be installed using the following port numbers. The Server and Web Tier configuration files will be set to use the specified port numbers below." />
+    <String Id="ServerConfigDlg_AdminPortNo" Value="Admin Connection Port" />
+    <String Id="ServerConfigDlg_ClientPortNo" Value="Client Connection Port" />
+    <String Id="ServerConfigDlg_SitePortNo" Value="Site Connection Port" />
     
-    <String Id="WebServerConfigDlg_Title">Select configuration type</String>
-    <String Id="WebServerConfigDlg_Description">Select the type of web server configuration you want</String>
-    <String Id="WebServerConfigDlg_Apache">Bundled Configuration</String>
-    <String Id="WebServerConfigDlg_IIS">IIS Configuration</String>
-    <String Id="WebServerConfigDlg_Manual">Manual Configuration</String>
-    <String Id="WebServerConfigDlg_Apache_Tooltip">Install and configure Apache, PHP, and Tomcat.</String>
-    <String Id="WebServerConfigDlg_IIS_Tooltip">Install PHP and auto-configure IIS.</String>
-    <String Id="WebServerConfigDlg_Manual_Tooltip">Manually install and configure MapGuide.</String>
+    <String Id="WebServerConfigDlg_Title" Value="Select configuration type" />
+    <String Id="WebServerConfigDlg_Description" Value="Select the type of web server configuration you want" />
+    <String Id="WebServerConfigDlg_Apache" Value="Bundled Configuration" />
+    <String Id="WebServerConfigDlg_IIS" Value="IIS Configuration" />
+    <String Id="WebServerConfigDlg_Manual" Value="Manual Configuration" />
+    <String Id="WebServerConfigDlg_Apache_Tooltip" Value="Install and configure Apache, PHP, and Tomcat." />
+    <String Id="WebServerConfigDlg_IIS_Tooltip" Value="Install PHP and auto-configure IIS." />
+    <String Id="WebServerConfigDlg_Manual_Tooltip" Value="Manually install and configure MapGuide." />
 
-    <String Id="ApacheConfigDlg_Title">Bundled Configuration Settings</String>
-    <String Id="ApacheConfigDlg_Description">Set up the development environment</String>
-    <String Id="ApacheConfigDlg_PortNo">Web Server Port Number</String>
-    <String Id="ApacheConfigDlg_DevEnv">Development Environment</String>
-    <String Id="ApacheConfigDlg_VDirName">Virtual Directory Name</String>
+    <String Id="ApacheConfigDlg_Title" Value="Bundled Configuration Settings" />
+    <String Id="ApacheConfigDlg_Description" Value="Set up the development environment" />
+    <String Id="ApacheConfigDlg_PortNo" Value="Web Server Port Number" />
+    <String Id="ApacheConfigDlg_DevEnv" Value="Development Environment" />
+    <String Id="ApacheConfigDlg_VDirName" Value="Virtual Directory Name" />
 
-    <String Id="IISLangConfigDlg_Title">IIS Configuration Settings</String>
-    <String Id="IISLangConfigDlg_Description">Set up the development environment</String>
-    <String Id="IISLangConfigDlg_DevEnv">Development Environment</String>
-    <String Id="IISLangConfigDlg_VDirName">Virtual Directory Name</String>
+    <String Id="IISLangConfigDlg_Title" Value="IIS Configuration Settings" />
+    <String Id="IISLangConfigDlg_Description" Value="Set up the development environment" />
+    <String Id="IISLangConfigDlg_DevEnv" Value="Development Environment" />
+    <String Id="IISLangConfigDlg_VDirName" Value="Virtual Directory Name" />
 
-    <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="IIS7ConfigDlg_AppPool">Create an application pool</String>
-    <String Id="IIS7ConfigDlg_AppPoolDescription">An application pool allows MapGuide applications to be isolated from other applications running on the web server</String>
+    <String Id="IIS6ConfigDlg_Title" Value="IIS 6.0 Configuration" />
+    <String Id="IIS6ConfigDlg_Description" Value="Configure IIS 6.0 Settings" />
+    <String Id="IIS6ConfigDlg_InstallTo" Value="Install Web Extensions to the following website" />
+    <String Id="IIS7ConfigDlg_AppPool" Value="Create an application pool" />
+    <String Id="IIS7ConfigDlg_AppPoolDescription" Value="An application pool allows MapGuide applications to be isolated from other applications running on the web server" />
 
-    <String Id="NoIISDlg_Title">IIS not found</String>
-    <String Id="NoIISDlg_Description">IIS not found</String>
-    <String Id="NoIISDlg_Text">IIS could not be found on your system. Please go back and choose a different web configuration or install IIS.</String>
+    <String Id="NoIISDlg_Title" Value="IIS not found" />
+    <String Id="NoIISDlg_Description" Value="IIS not found" />
+    <String Id="NoIISDlg_Text" Value="IIS could not be found on your system. Please go back and choose a different web configuration or install IIS." />
 
-    <String Id="IPConfigDlg_Title">Server IP address</String>
-    <String Id="IPConfigDlg_Description">Enter the MapGuide Server site server IP address.</String>
-    <String Id="IPConfigDlg_IPAddress">Enter the MapGuide Server site server IP address:</String>
-    <String Id="IPConfigDlg_Note">The site server IP address defaults to localhost (127.0.0.1)</String>
+    <String Id="IPConfigDlg_Title" Value="Server IP address" />
+    <String Id="IPConfigDlg_Description" Value="Enter the MapGuide Server site server IP address." />
+    <String Id="IPConfigDlg_IPAddress" Value="Enter the MapGuide Server site server IP address:" />
+    <String Id="IPConfigDlg_Note" Value="The site server IP address defaults to localhost (127.0.0.1)" />
 
-    <String Id="UpdateApacheConfig">Setting values for httpd.conf</String>
-    <String Id="UpdatePhpIni">Setting values for php.ini</String>
-    <String Id="InstallApacheServiceCA">Installing Apache Service</String>
-    <String Id="InstallTomcatServiceCA">Installing Tomcat Service</String>
-    <String Id="MgServerInstallCA">Installing MapGuide Service</String>
-    <String Id="MgServerUninstallCA">Removing MapGuide Service</String>
-    <String Id="RemoveApacheServiceCA">Removing Apache Service</String>
-    <String Id="RemoveTomcatServiceCA">Removing Tomcat Service</String>
+    <String Id="UpdateApacheConfig" Value="Setting values for httpd.conf" />
+    <String Id="UpdatePhpIni" Value="Setting values for php.ini" />
+    <String Id="InstallApacheServiceCA" Value="Installing Apache Service" />
+    <String Id="InstallTomcatServiceCA" Value="Installing Tomcat Service" />
+    <String Id="MgServerInstallCA" Value="Installing MapGuide Service" />
+    <String Id="MgServerUninstallCA" Value="Removing MapGuide Service" />
+    <String Id="RemoveApacheServiceCA" Value="Removing Apache Service" />
+    <String Id="RemoveTomcatServiceCA" Value="Removing Tomcat Service" />
     
-    <String Id="MapGuideIIS7_I_UnlockSiteHandlers">Unlocking site handler config</String>
-    <String Id="MapGuideIIS7_I_CreateAppPool">Creating IIS application pool</String>
-    <String Id="MapGuideIIS7_I_CreateFastCgi">Creating FastCgi application mapping</String>
-    <String Id="MapGuideIIS7_I_SetAppPoolProp">Setting Application Pool properties</String>
-    <String Id="MapGuideIIS7_I_CreateMapGuideApp">Creating mapguide virtual dir</String>
-    <String Id="MapGuideIIS7_I_SelectXmlCompat">Applying compatibility settings for selection XML to work</String>
-    <String Id="MapGuideIIS7_I_CreatePhpScriptMapping">Creating PHP handler mapping</String>
-    <String Id="MapGuideIIS7_I_CreateMapAgentApp">Creating mapagent virtual dir</String>
-    <String Id="MapGuideIIS7_I_SetMapAgentHandlerAccess">Setting access policy for mapagent virtual dir</String>
-    <String Id="MapGuideIIS7_I_CreateMapAgentScriptHandling">Creating handler mapping for mapagent virtual dir</String>
-    <String Id="MapGuideIIS7_I_EnableMapAgentExtension">Enabling mapagent ISAPI extension</String>
-    <String Id="MapGuideIIS7_I_AssignMapGuideAppPool">Assigning application pool to mapguide virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignMapAgentAppPool">Assigning application pool to mapagent virtual dir</String>
-    <String Id="MapGuideIIS7_I_UnlockHttpErrorsMain">Unlocking http errors config</String>
-    <String Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite">Unlocking http errors config for web site</String>
-    <String Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide">Unlocking http errors config for mapguide virtual dir</String>
-    <String Id="MapGuideIIS7_I_Reset401Handler">Resetting 401 handler</String>
-    <String Id="MapGuideIIS7_I_AddJsonMime">Adding JSON mime type</String>
-    <String Id="MapGuideIIS7_I_CreateViewerPhp">Creating mapviewerajax virtual dir to point to mapviewerphp</String>
-    <String Id="MapGuideIIS7_I_SetViewerDocPhp">Setting default document for mapviewerajax virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignViewerAppPoolPhp">Setting application pool for mapviewerajax</String>
-    <String Id="MapGuideIIS7_I_CreateViewerNet">Creating mapviewerajax virtual dir to point to mapviewernet</String>
-    <String Id="MapGuideIIS7_I_SetViewerDocNet">Setting default document for mapviewerajax virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignViewerAppPoolNet">Setting application pool for mapviewerajax</String>
-    <String Id="MapGuideIIS7_I_CreateMapViewerNet">Creating mapviewernet virtual dir</String>
-    <String Id="MapGuideIIS7_I_SetMapViewerDocNet">Setting default document for mapviewernet virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet">Setting application pool for mapviewernet virtual dir</String>
-    <String Id="MapGuideIIS7_I_CreateViewerSampleNet">Creating dotnetviewersample virtual dir</String>
-    <String Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet">Setting default document for dotnetviewersample virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet">Setting application pool for dotnetviewersample virtual dir</String>
-    <String Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet">Creating dotnetsamples virtual dir</String>
-    <String Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet">Setting default document for dotnetsamples virtual dir</String>
-    <String Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet">Setting application pool for dotnetsamples virtual dir</String>
-    <String Id="MapGuideIIS7_U_ClearMapAgentRestriction">Clearing mapagent restrictions</String>
-    <String Id="MapGuideIIS7_U_RemoveViewer">Removing mapviewerajax virtual dir</String>
-    <String Id="MapGuideIIS7_U_RemoveMapAgent">Removing mapagent virtual dir</String>
-    <String Id="MapGuideIIS7_U_RemoveMapGuide">Removing mapguide virtual dir</String>
-    <String Id="MapGuideIIS7_U_DeleteAppPool">Deleting application pool</String>
-    <String Id="AspNetRegIIS">Registering ASP.net</String>
-    <String Id="FdoRegArcSde">Registering FDO Provider: OSGeo.ArcSDE</String>
-    <String Id="FdoRegSdf">Registering FDO Provider: OSGeo.SDF</String>
-    <String Id="FdoRegShp">Registering FDO Provider: OSGeo.SHP</String>
-    <String Id="FdoRegWfs">Registering FDO Provider: OSGeo.WFS</String>
-    <String Id="FdoRegWms">Registering FDO Provider: OSGeo.WMS</String>
-    <String Id="FdoRegOdbc">Registering FDO Provider: OSGeo.ODBC</String>
-    <String Id="FdoRegMySql">Registering FDO Provider: OSGeo.MySQL</String>
-    <String Id="FdoRegGdal">Registering FDO Provider: OSGeo.Gdal</String>
-    <String Id="FdoRegOgr">Registering FDO Provider: OSGeo.OGR</String>
-    <String Id="FdoRegPostgreSql">Registering FDO Provider: OSGeo.PostgreSQL</String>
-    <String Id="FdoRegOracle">Registering FDO Provider: King.Oracle</String>
-    <String Id="FdoRegSqlServer">Registering FDO Provider: OSGeo.SQLServerSpatial</String>
-    <String Id="FdoRegSlt">Registering FDO Provider: OSGeo.SQLite</String>
-    <String Id="FdoUnRegArcSde">Un-registering FDO Provider: OSGeo.ArcSDE</String>
-    <String Id="FdoUnRegSdf">Un-registering FDO Provider: OSGeo.SDF</String>
-    <String Id="FdoUnRegShp">Un-registering FDO Provider: OSGeo.SHP</String>
-    <String Id="FdoUnRegWfs">Un-registering FDO Provider: OSGeo.WFS</String>
-    <String Id="FdoUnRegWms">Un-registering FDO Provider: OSGeo.WMS</String>
-    <String Id="FdoUnRegOdbc">Un-registering FDO Provider: OSGeo.ODBC</String>
-    <String Id="FdoUnRegMySql">Un-registering FDO Provider: OSGeo.MySQL</String>
-    <String Id="FdoUnRegGdal">Un-registering FDO Provider: OSGeo.Gdal</String>
-    <String Id="FdoUnRegOgr">Un-registering FDO Provider: OSGeo.OGR</String>
-    <String Id="FdoUnRegPostgreSql">Un-registering FDO Provider: OSGeo.PostgreSQL</String>
-    <String Id="FdoUnRegOracle">Un-registering FDO Provider: King.Oracle</String>
-    <String Id="FdoUnRegSqlServer">Un-registering FDO Provider: OSGeo.SQLServerSpatial</String>
-    <String Id="FdoUnRegSlt">Un-registering FDO Provider: OSGeo.SQLite</String>
+    <String Id="MapGuideIIS7_I_UnlockSiteHandlers" Value="Unlocking site handler config" />
+    <String Id="MapGuideIIS7_I_CreateAppPool" Value="Creating IIS application pool" />
+    <String Id="MapGuideIIS7_I_CreateFastCgi" Value="Creating FastCgi application mapping" />
+    <String Id="MapGuideIIS7_I_SetAppPoolProp" Value="Setting Application Pool properties" />
+    <String Id="MapGuideIIS7_I_CreateMapGuideApp" Value="Creating mapguide virtual dir" />
+    <String Id="MapGuideIIS7_I_SelectXmlCompat" Value="Applying compatibility settings for selection XML to work" />
+    <String Id="MapGuideIIS7_I_CreatePhpScriptMapping" Value="Creating PHP handler mapping" />
+    <String Id="MapGuideIIS7_I_CreateMapAgentApp" Value="Creating mapagent virtual dir" />
+    <String Id="MapGuideIIS7_I_SetMapAgentHandlerAccess" Value="Setting access policy for mapagent virtual dir" />
+    <String Id="MapGuideIIS7_I_CreateMapAgentScriptHandling" Value="Creating handler mapping for mapagent virtual dir" />
+    <String Id="MapGuideIIS7_I_EnableMapAgentExtension" Value="Enabling mapagent ISAPI extension" />
+    <String Id="MapGuideIIS7_I_AssignMapGuideAppPool" Value="Assigning application pool to mapguide virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignMapAgentAppPool" Value="Assigning application pool to mapagent virtual dir" />
+    <String Id="MapGuideIIS7_I_UnlockHttpErrorsMain" Value="Unlocking http errors config" />
+    <String Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite" Value="Unlocking http errors config for web site" />
+    <String Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" Value="Unlocking http errors config for mapguide virtual dir" />
+    <String Id="MapGuideIIS7_I_Reset401Handler" Value="Resetting 401 handler" />
+    <String Id="MapGuideIIS7_I_AddJsonMime" Value="Adding JSON mime type" />
+    <String Id="MapGuideIIS7_I_CreateViewerPhp" Value="Creating mapviewerajax virtual dir to point to mapviewerphp" />
+    <String Id="MapGuideIIS7_I_SetViewerDocPhp" Value="Setting default document for mapviewerajax virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignViewerAppPoolPhp" Value="Setting application pool for mapviewerajax" />
+    <String Id="MapGuideIIS7_I_CreateViewerNet" Value="Creating mapviewerajax virtual dir to point to mapviewernet" />
+    <String Id="MapGuideIIS7_I_SetViewerDocNet" Value="Setting default document for mapviewerajax virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignViewerAppPoolNet" Value="Setting application pool for mapviewerajax" />
+    <String Id="MapGuideIIS7_I_CreateMapViewerNet" Value="Creating mapviewernet virtual dir" />
+    <String Id="MapGuideIIS7_I_SetMapViewerDocNet" Value="Setting default document for mapviewernet virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet" Value="Setting application pool for mapviewernet virtual dir" />
+    <String Id="MapGuideIIS7_I_CreateViewerSampleNet" Value="Creating dotnetviewersample virtual dir" />
+    <String Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet" Value="Setting default document for dotnetviewersample virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" Value="Setting application pool for dotnetviewersample virtual dir" />
+    <String Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" Value="Creating dotnetsamples virtual dir" />
+    <String Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" Value="Setting default document for dotnetsamples virtual dir" />
+    <String Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" Value="Setting application pool for dotnetsamples virtual dir" />
+    <String Id="MapGuideIIS7_U_ClearMapAgentRestriction" Value="Clearing mapagent restrictions" />
+    <String Id="MapGuideIIS7_U_RemoveViewer" Value="Removing mapviewerajax virtual dir" />
+    <String Id="MapGuideIIS7_U_RemoveMapAgent" Value="Removing mapagent virtual dir" />
+    <String Id="MapGuideIIS7_U_RemoveMapGuide" Value="Removing mapguide virtual dir" />
+    <String Id="MapGuideIIS7_U_DeleteAppPool" Value="Deleting application pool" />
+    <String Id="AspNetRegIIS" Value="Registering ASP.net" />
+    <String Id="FdoRegArcSde" Value="Registering FDO Provider: OSGeo.ArcSDE" />
+    <String Id="FdoRegSdf" Value="Registering FDO Provider: OSGeo.SDF" />
+    <String Id="FdoRegShp" Value="Registering FDO Provider: OSGeo.SHP" />
+    <String Id="FdoRegWfs" Value="Registering FDO Provider: OSGeo.WFS" />
+    <String Id="FdoRegWms" Value="Registering FDO Provider: OSGeo.WMS" />
+    <String Id="FdoRegOdbc" Value="Registering FDO Provider: OSGeo.ODBC" />
+    <String Id="FdoRegMySql" Value="Registering FDO Provider: OSGeo.MySQL" />
+    <String Id="FdoRegGdal" Value="Registering FDO Provider: OSGeo.Gdal" />
+    <String Id="FdoRegOgr" Value="Registering FDO Provider: OSGeo.OGR" />
+    <String Id="FdoRegPostgreSql" Value="Registering FDO Provider: OSGeo.PostgreSQL" />
+    <String Id="FdoRegOracle" Value="Registering FDO Provider: King.Oracle" />
+    <String Id="FdoRegSqlServer" Value="Registering FDO Provider: OSGeo.SQLServerSpatial" />
+    <String Id="FdoRegSlt" Value="Registering FDO Provider: OSGeo.SQLite" />
+    <String Id="FdoUnRegArcSde" Value="Un-registering FDO Provider: OSGeo.ArcSDE" />
+    <String Id="FdoUnRegSdf" Value="Un-registering FDO Provider: OSGeo.SDF" />
+    <String Id="FdoUnRegShp" Value="Un-registering FDO Provider: OSGeo.SHP" />
+    <String Id="FdoUnRegWfs" Value="Un-registering FDO Provider: OSGeo.WFS" />
+    <String Id="FdoUnRegWms" Value="Un-registering FDO Provider: OSGeo.WMS" />
+    <String Id="FdoUnRegOdbc" Value="Un-registering FDO Provider: OSGeo.ODBC" />
+    <String Id="FdoUnRegMySql" Value="Un-registering FDO Provider: OSGeo.MySQL" />
+    <String Id="FdoUnRegGdal" Value="Un-registering FDO Provider: OSGeo.Gdal" />
+    <String Id="FdoUnRegOgr" Value="Un-registering FDO Provider: OSGeo.OGR" />
+    <String Id="FdoUnRegPostgreSql" Value="Un-registering FDO Provider: OSGeo.PostgreSQL" />
+    <String Id="FdoUnRegOracle" Value="Un-registering FDO Provider: King.Oracle" />
+    <String Id="FdoUnRegSqlServer" Value="Un-registering FDO Provider: OSGeo.SQLServerSpatial" />
+    <String Id="FdoUnRegSlt" Value="Un-registering FDO Provider: OSGeo.SQLite" />
 </WixLocalization>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wixproj
===================================================================
--- sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wixproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wixproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,48 +1,30 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
+<Project Sdk="WixToolset.Sdk/6.0.2">
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
-    <ProductVersion>3.0</ProductVersion>
-    <ProjectGuid>{12c62f60-6f52-4112-84ab-0fa8ed44ee77}</ProjectGuid>
-    <SchemaVersion>2.0</SchemaVersion>
-    <OutputName Condition=" '$(OutputName)' == '' ">MapGuideOpenSource</OutputName>
+    <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
+    <Platform Condition="'$(Platform)' == ''">x64</Platform>
+    <EnableDefaultItems>false</EnableDefaultItems>
+    <OutputName Condition="'$(OutputName)' == ''">MapGuideOpenSource</OutputName>
     <OutputType>Package</OutputType>
-    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
     <Name>MapGuide</Name>
-    <MgCulture Condition=" '$(MgCulture)'=='' ">en-US</MgCulture>
-    <MgTitle Condition=" '$(MgTitle)'=='' ">MapGuide Open Source 2.1.0 Ux</MgTitle>
-    <MgVersion Condition=" '$(MgVersion)'=='' ">2.1.0.0</MgVersion>
-    <MgRegKey Condition=" '$(MgRegKey)'=='' ">Software\OSGeo\MapGuide</MgRegKey>
-    <MgSource Condition="('$(MgSource)'=='')">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgCulture Condition="'$(MgCulture)' == ''">en-US</MgCulture>
+    <MgTitle Condition="'$(MgTitle)' == ''">MapGuide Open Source 2.1.0 Ux</MgTitle>
+    <MgVersion Condition="'$(MgVersion)' == ''">2.1.0.0</MgVersion>
+    <MgRegKey Condition="'$(MgRegKey)' == ''">Software\OSGeo\MapGuide</MgRegKey>
+    <MgSource Condition="'$(MgSource)' == ''">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgSourceSanitized>$([System.String]::Copy('$(MgSource)').Replace('"', ''))</MgSourceSanitized>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>Debug;MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
+    <DefineConstants>Debug;MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
     <Cultures>$(MgCulture)</Cultures>
     <SuppressIces>ICE47</SuppressIces>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
-    <OutputPath>..\..\Output\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <SuppressValidation>False</SuppressValidation>
-    <SuppressPdbOutput>True</SuppressPdbOutput>
-    <DefineConstants>MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
-    <Cultures>$(MgCulture)</Cultures>
-    <SuppressIces>ICE47</SuppressIces>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
-    <DefineConstants>Debug;MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
-    <Cultures>$(MgCulture)</Cultures>
-    <SuppressIces>ICE47</SuppressIces>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
+  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
     <SuppressValidation>False</SuppressValidation>
     <SuppressPdbOutput>True</SuppressPdbOutput>
-    <DefineConstants>MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
+    <DefineConstants>MgTitle=$(MgTitle);MgVersion=$(MgVersion);MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
     <Cultures>$(MgCulture)</Cultures>
     <SuppressIces>ICE47</SuppressIces>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
@@ -57,10 +39,6 @@
     <Content Include="Resources\LGPL21.rtf" />
   </ItemGroup>
   <ItemGroup>
-    <Folder Include="Lang" />
-    <Folder Include="Resources" />
-  </ItemGroup>
-  <ItemGroup>
     <ProjectReference Include="..\..\Libraries\CS Map\CS Map.wixproj">
       <Name>CS Map</Name>
       <Project>{01313db9-2aaf-4791-9b81-69bce3194531}</Project>
@@ -81,30 +59,9 @@
     <EmbeddedResource Include="Lang\MapGuide_en-US.wxl" />
   </ItemGroup>
   <ItemGroup>
-    <WixExtension Include="WixUtilExtension">
-      <HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
-      <Name>WixUtilExtension</Name>
-    </WixExtension>
-    <WixExtension Include="WixUIExtension">
-      <HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
-      <Name>WixUIExtension</Name>
-    </WixExtension>
-    <WixExtension Include="WixNetFxExtension">
-      <HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
-      <Name>WixNetFxExtension</Name>
-    </WixExtension>
-    <WixExtension Include="WixIIsExtension">
-      <HintPath>$(WixExtDir)\WixIIsExtension.dll</HintPath>
-      <Name>WixIIsExtension</Name>
-    </WixExtension>
+    <PackageReference Include="WixToolset.Util.wixext" Version="6.0.2" />
+    <PackageReference Include="WixToolset.UI.wixext" Version="6.0.2" />
+    <PackageReference Include="WixToolset.Netfx.wixext" Version="6.0.2" />
+    <PackageReference Include="WixToolset.Iis.wixext" Version="6.0.2" />
   </ItemGroup>
-  <Import Project="$(WixTargetsPath)" />
-  <!--
-	To modify your build process, add your task inside one of the targets below and uncomment it.
-	Other similar extension points exist, see Wix.targets.
-	<Target Name="BeforeBuild">
-	</Target>
-  <Target Name="AfterBuild">
-  </Target>
-	-->
 </Project>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wxs
===================================================================
--- sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Installers/MapGuide/MapGuide.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,48 +1,19 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix
-  xmlns="http://schemas.microsoft.com/wix/2006/wi"
-  xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
-  xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension"
-  >
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
     <?if "$(var.MgPlatform)" = "x64" ?>
-      <?define Win64 = "yes" ?>
-      <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-    <?else ?>
-      <?define Win64 = "no" ?>
-      <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-    <?endif ?>
-    <Product
-           Id="*"
-           UpgradeCode="5D9A7D8D-485E-43E0-A4C8-3582E4D80051"
-           Name="$(var.MgTitle)"
-           Version="$(var.MgVersion)"
-           Manufacturer="!(loc.ProductManufacturer)"
-           Language="!(loc.LANG)" >
+      <?define Win64 = "always64" ?>
+    <?else?>
+      <?define Win64 = "default" ?>
+    <?endif?>
+    <Package UpgradeCode="5D9A7D8D-485E-43E0-A4C8-3582E4D80051" Name="$(var.MgTitle)" Version="$(var.MgVersion)" Manufacturer="!(loc.ProductManufacturer)" Language="!(loc.LANG)" InstallerVersion="300"><Media Id="1" Cabinet="MapGuideOpenSource.cab" EmbedCab="yes" CompressionLevel="none" />
 
-        <Package InstallerVersion="300" Compressed="yes" Platform="$(var.MgPlatform)" />
-
-        <Media Id="1" Cabinet="MapGuideOpenSource.cab" EmbedCab="yes" CompressionLevel="none" />
-
         <!-- Initial MapGuide Web Configuration: APACHE | IIS | MANUAL 
              RegSearches are for uninstall -->
         <Property Id="MGWEB_CONFIG" Secure="yes" Value="APACHE">
-          <RegistrySearch
-            Id="MgWebConfigRs"
-            Type="raw"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="$(var.MgRegKey)"
-            Name="MGWEB_CONFIG" />
+          <RegistrySearch Id="MgWebConfigRs" Type="raw" Root="HKLM" Key="$(var.MgRegKey)" Name="MGWEB_CONFIG" Bitness="$(var.Win64)" />
         </Property>
         <Property Id="APACHE_API_TYPE" Secure="yes" Value="PHP" />
         <Property Id="IIS_API_TYPE" Secure="yes" Value="PHP">
-          <RegistrySearch
-            Id="IisApiTypeRs"
-            Type="raw"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="$(var.MgRegKey)"
-            Name="IIS_API_TYPE"  />
+          <RegistrySearch Id="IisApiTypeRs" Type="raw" Root="HKLM" Key="$(var.MgRegKey)" Name="IIS_API_TYPE" Bitness="$(var.Win64)" />
         </Property>
         <Property Id="MGSERVER_IP" Secure="yes" Value="127.0.0.1" />
         <Property Id="APACHE_PORT" Secure="yes" Value="8008" />
@@ -50,13 +21,7 @@
         <Property Id="PHP_VERSION" Secure="yes" Value="5.6.40" />
         <Property Id="MG_VERSION_MAJOR_MINOR" Secure="yes" Value="4.0" />
         <Property Id="APP_POOL_NAME" Secure="yes" Value="MapGuide40AppPool">
-            <RegistrySearch
-            Id="MgAppPoolNameRs"
-            Type="raw"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="$(var.MgRegKey)"
-            Name="APP_POOL_NAME"  />
+            <RegistrySearch Id="MgAppPoolNameRs" Type="raw" Root="HKLM" Key="$(var.MgRegKey)" Name="APP_POOL_NAME" Bitness="$(var.Win64)" />
         </Property>
         <!-- Server Port Settings  -->
         <Property Id="MG_ADMIN_PORT" Secure="yes" Value="2810" />
@@ -77,22 +42,10 @@
         -->
         <Property Id="SITE_ID" Secure="yes" Value="1" />
         <Property Id="VIRTUALDIR" Secure="yes" Value="mapguide">
-            <RegistrySearch
-            Id="MgVirtualDirRs"
-            Type="raw"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="$(var.MgRegKey)"
-            Name="VIRTUALDIR"  />
+            <RegistrySearch Id="MgVirtualDirRs" Type="raw" Root="HKLM" Key="$(var.MgRegKey)" Name="VIRTUALDIR" Bitness="$(var.Win64)" />
         </Property>
         <Property Id="MG_WEBSITE" Secure="yes" Value="Default Web Site">
-            <RegistrySearch
-            Id="MgWebsiteRs"
-            Type="raw"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="$(var.MgRegKey)"
-            Name="MG_WEBSITE"  />
+            <RegistrySearch Id="MgWebsiteRs" Type="raw" Root="HKLM" Key="$(var.MgRegKey)" Name="MG_WEBSITE" Bitness="$(var.Win64)" />
         </Property>
 
         <!-- Add Remove Programs metadata -->
@@ -100,50 +53,22 @@
         <Property Id="ARPURLINFOABOUT" Value="http://mapguide.osgeo.org" />
         <Property Id="ARPPRODUCTICON" Value="OSGeo.ico" />
         
-        <Property Id="ALLUSERS">1</Property>
-
         <!-- we need to know what version of IIS is installed (if any) to see what options to offer during install UI, and
              which custom actions to run during installation -->
         <Property Id="IISVERSIONMAJOR" Value="#0" Secure="yes">
-            <RegistrySearch
-            Id="SearchRegIISVERSIONMAJOR"
-            Root="HKLM"
-            Win64="$(var.Win64)"
-            Key="Software\Microsoft\InetStp"
-            Name="MajorVersion"
-            Type="raw" />
+            <RegistrySearch Id="SearchRegIISVERSIONMAJOR" Root="HKLM" Key="Software\Microsoft\InetStp" Name="MajorVersion" Type="raw" Bitness="$(var.Win64)" />
         </Property>
 
         <Icon Id="OSGeo.ico" SourceFile="..\..\Support\Graphics\OSGeo.ico" />
         
-        <Directory Id="TARGETDIR" Name="SourceDir">
-            <Directory Id="WindowsFolder">
-                <Directory Id="System32Folder" Name="System32">
-                    <Directory Id="IISROOTLOCATION" Name="inetsrv">
+        
 
-                    </Directory>
-                </Directory>
-            </Directory>
-            <Directory Id="ProgramMenuFolder" Name="Programs"/>
-            <Directory Id="DesktopFolder" Name="Desktop"/>
-            <Directory Id="$(var.PlatformProgramFilesFolder)">
-                <Directory Id="OSGeoFolder" Name="OSGeo">
-                    <Directory Id="INSTALLLOCATION" Name="MapGuide">
-                        <!-- These are "aliases", set in the individual feature libraries.-->
-                        <Directory Id="WebParentFolder" />
-                        <Directory Id="ServerParentFolder" />
-                        <Directory Id="CsMapParentFolder" />
-                    </Directory>
-                </Directory>
-            </Directory>
-        </Directory>
-
         <!-- The actual features are defined in the individual WiX libraries, e.g. MapGuideServer.wxs -->
-        <FeatureRef Id="CSMapFeature"/>
-        <FeatureRef Id="ServerFeature"/>
-        <FeatureRef Id="WebExtensionsFeature"/>
+        <FeatureRef Id="CSMapFeature" />
+        <FeatureRef Id="ServerFeature" />
+        <FeatureRef Id="WebExtensionsFeature" />
 
-        <UIRef Id="WixUI_Common"/>
+        <UIRef Id="WixUI_Common" />
 
         <!-- These control UI elements -->
         <WixVariable Id="WixUILicenseRtf" Value="Resources/LGPL21.rtf" />
@@ -197,12 +122,8 @@
                 <Control Id="BannerBitmap" Type="Bitmap" X="0" Y="0" Width="370" Height="44" TabSkip="no" Text="!(loc.InstallDirDlgBannerBitmap)" />
                 <Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" Height="0" />
 
-                <Control Id="TxtMessageIIS" Type="Text" X="30" Y="110" Width="316" Height="26" Text="!(loc.DisabledFeaturesDialog_IIS)">
-                    <Condition Action="hide">NOT IISVERSIONMAJOR="#0"</Condition>
-                </Control>
-                <Control Id="TxtMessageDotNet" Type="Text" X="30" Y="150" Width="302" Height="30" Text="!(loc.DisabledFeaturesDialog_DotNet)">
-                    <Condition Action="hide">NETFRAMEWORK40FULL</Condition>
-                </Control>
+                <Control Id="TxtMessageIIS" Type="Text" X="30" Y="110" Width="316" Height="26" Text="!(loc.DisabledFeaturesDialog_IIS)" HideCondition="NOT IISVERSIONMAJOR="#0"" />
+                <Control Id="TxtMessageDotNet" Type="Text" X="30" Y="150" Width="302" Height="30" Text="!(loc.DisabledFeaturesDialog_DotNet)" HideCondition="NETFRAMEWORK40FULL" />
                 <Control Id="TxtMessageInstructions" Type="Text" X="22" Y="64" Width="318" Height="27" Text="!(loc.DisabledFeaturesDialog_Instructions)" />
                 
                 <Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.NextButtonText)" />
@@ -444,38 +365,38 @@
             </Dialog>
 
             <!-- Utility browse dialog to locate installation directory -->
-            <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" Value="WixUIValidatePath" Order="3">1</Publish>
-            <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" Value="InvalidDirDlg" Order="4"><![CDATA[WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>
+            <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" Value="WixUIValidatePath_$(sys.BUILDARCHSHORT)" Order="3" />
+            <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" Value="InvalidDirDlg" Order="4" Condition="WIXUI_INSTALLDIR_VALID<>"1"" />
 
           
             <!-- This section controls the order and custom UI events performed as user navigates the UI  -->
           
-            <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
+            <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg" />
             
-            <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
-            <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="ServerConfigDlg" Order="1">LicenseAccepted="1"</Publish>
-            <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="DisabledFeaturesDialog" Order="2">LicenseAccepted="1" AND (IISVERSIONMAJOR="#0" OR (NOT NETFRAMEWORK40FULL))</Publish>
+            <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" />
+            <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="ServerConfigDlg" Order="1" Condition="LicenseAccepted="1"" />
+            <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="DisabledFeaturesDialog" Order="2" Condition="LicenseAccepted="1" AND (IISVERSIONMAJOR="#0" OR (NOT NETFRAMEWORK40FULL))" />
 
-            <Publish Dialog="DisabledFeaturesDialog" Control="Next" Event="NewDialog" Value="ServerConfigDlg" Order="1">1</Publish>
-            <Publish Dialog="DisabledFeaturesDialog" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
-            <Publish Dialog="DisabledFeaturesDialog" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="DisabledFeaturesDialog" Control="Next" Event="NewDialog" Value="ServerConfigDlg" Order="1" />
+            <Publish Dialog="DisabledFeaturesDialog" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" />
+            <Publish Dialog="DisabledFeaturesDialog" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="ServerConfigDlg" Control="Next" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="1">NOT IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="ServerConfigDlg" Control="Next" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="2">IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="ServerConfigDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" Order="2">1</Publish>
-            <Publish Dialog="ServerConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="ServerConfigDlg" Control="Next" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="1" Condition="NOT IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="ServerConfigDlg" Control="Next" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="2" Condition="IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="ServerConfigDlg" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" Order="2" />
+            <Publish Dialog="ServerConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="DoAction" Value="MgWeb_Config_From_IIS_CA" Order="1">1</Publish>
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="DoAction" Value="MgWeb_Config_From_IIS_CA" Order="1" />
             <!-- This "resets" the feature tree in case someone starts down a path then changes their mind -->
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="AddLocal" Value="ALL" Order="2">1</Publish>
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="AddLocal" Value="ALL" Order="2" />
             <!-- Turn off these FDO providers by default since they require external libraries not bundled in this installer. -->
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoArcSdeProviderFeature" Order="3">1</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoKingOracleProviderFeature" Order="4">1</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoMySqlProviderFeature" Order="5">1</Publish>
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoArcSdeProviderFeature" Order="3" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoKingOracleProviderFeature" Order="4" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="FdoMySqlProviderFeature" Order="5" />
             <!-- If Apache, or IIS and the .Net Framework is not installed, set feature default for the ASPX viewer to not install -->
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Order="6">(MGWEB_CONFIG="APACHE") OR (MGWEB_CONFIG="IIS" AND NOT NETFRAMEWORK40FULL)</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="ApacheConfigDlg" Order="7">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="FastCgiWarningDlg" Order="8">MGWEB_CONFIG="IIS"</Publish>
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Order="6" Condition="(MGWEB_CONFIG="APACHE") OR (MGWEB_CONFIG="IIS" AND NOT NETFRAMEWORK40FULL)" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="ApacheConfigDlg" Order="7" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="FastCgiWarningDlg" Order="8" Condition="MGWEB_CONFIG="IIS"" />
             <!-- If IIS, set feature defaults for Apache, Tomcat, and JSP viewer to not install -->
             <!-- 
             Turn off:
@@ -487,31 +408,31 @@
                 - PHP Viewer Sample
                 - PHP DevGuide Sample
             -->
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtApacheFeature" Order="10">MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtTomcatFeature" Order="11">MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtMapViewerJSPFeature" Order="12">MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtJavaDevGuideSamplesFeature" Order="13">MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtJavaViewerSampleFeature" Order="14">MGWEB_CONFIG="IIS"</Publish>
-                  <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature">MGWEB_CONFIG="IIS"</Publish>
-                  <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature">MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="IPConfigDlg" Order="13">MGWEB_CONFIG="MANUAL"</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
-            <Publish Dialog="WebServerConfigDlgIIS" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtApacheFeature" Order="10" Condition="MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtTomcatFeature" Order="11" Condition="MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtMapViewerJSPFeature" Order="12" Condition="MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtJavaDevGuideSamplesFeature" Order="13" Condition="MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtJavaViewerSampleFeature" Order="14" Condition="MGWEB_CONFIG="IIS"" />
+                  <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature" Condition="MGWEB_CONFIG="IIS"" />
+                  <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature" Condition="MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Next" Event="NewDialog" Value="IPConfigDlg" Order="13" Condition="MGWEB_CONFIG="MANUAL"" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" />
+            <Publish Dialog="WebServerConfigDlgIIS" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
             <!-- Show the FastCGI warning before advancing to any IIS configuration dialog -->
-            <Publish Dialog="FastCgiWarningDlg" Control="Next" Event="NewDialog" Value="IISLangConfigDlg" Order="1">MGWEB_CONFIG="IIS" AND NETFRAMEWORK40FULL</Publish>
-            <Publish Dialog="FastCgiWarningDlg" Control="Next" Event="NewDialog" Value="IIS7ConfigDlg" Order="2">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND (NOT NETFRAMEWORK40FULL)</Publish>
-            <Publish Dialog="FastCgiWarningDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS">1</Publish>
-            <Publish Dialog="FastCgiWarningDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="FastCgiWarningDlg" Control="Next" Event="NewDialog" Value="IISLangConfigDlg" Order="1" Condition="MGWEB_CONFIG="IIS" AND NETFRAMEWORK40FULL" />
+            <Publish Dialog="FastCgiWarningDlg" Control="Next" Event="NewDialog" Value="IIS7ConfigDlg" Order="2" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND (NOT NETFRAMEWORK40FULL)" />
+            <Publish Dialog="FastCgiWarningDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" />
+            <Publish Dialog="FastCgiWarningDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="DoAction" Value="MgWeb_Config_From_NoIIS_CA" Order="1">1</Publish>
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="DoAction" Value="MgWeb_Config_From_NoIIS_CA" Order="1" />
             <!-- This "resets" the feature tree in case someone starts down a path then changes their mind -->
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="AddLocal" Value="ALL" Order="2">1</Publish>
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="AddLocal" Value="ALL" Order="2" />
             <!-- Turn off these FDO providers by default since they require external libraries not bundled in this installer. -->
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoArcSdeProviderFeature" Order="3">1</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoKingOracleProviderFeature" Order="4">1</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoMySqlProviderFeature" Order="5">1</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoPostgreSqlProviderFeature" Order="6">1</Publish>
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoArcSdeProviderFeature" Order="3" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoKingOracleProviderFeature" Order="4" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoMySqlProviderFeature" Order="5" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="FdoPostgreSqlProviderFeature" Order="6" />
             <!-- If Apache, set feature default for the ASPX viewer to not install -->
             <!-- 
             Turn off:
@@ -519,15 +440,15 @@
                 - .net Viewer Sample
                 - .net DevGuide Sample
             -->
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Order="7">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature" Order="8">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature" Order="9">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="NewDialog" Value="ApacheConfigDlg" Order="10">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="NewDialog" Value="IPConfigDlg" Order="11">MGWEB_CONFIG="MANUAL"</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
-            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Order="7" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature" Order="8" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature" Order="9" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="NewDialog" Value="ApacheConfigDlg" Order="10" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Next" Event="NewDialog" Value="IPConfigDlg" Order="11" Condition="MGWEB_CONFIG="MANUAL"" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Back" Event="NewDialog" Value="LicenseAgreementDlg" />
+            <Publish Dialog="WebServerConfigDlgNoIIS" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="NewDialog" Value="IPConfigDlg">1</Publish>
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="NewDialog" Value="IPConfigDlg" />
             <!-- Set default features based on Java API choice - AddLocal required in case user changes mind and comes back -->
             <!-- 
             Turn off:
@@ -538,14 +459,14 @@
                 - .net DevGuide Sample
                 - PHP DevGuide Sample
             -->
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerPHPFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtTomcatFeature">APACHE_API_TYPE="JAVA"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerJSPFeature">APACHE_API_TYPE="JAVA"</Publish>
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerPHPFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtTomcatFeature" Condition="APACHE_API_TYPE="JAVA"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerJSPFeature" Condition="APACHE_API_TYPE="JAVA"" />
             <!-- Set default features based on PHP API choice - AddLocal required in case user changes mind and comes back -->
             <!-- 
             Turn off:
@@ -557,149 +478,149 @@
                 - .net DevGuide Sample
                 - Java DevGuide Sample
             -->
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtTomcatFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerJSPFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtJavaDevGuideSamplesFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtJavaViewerSampleFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature">APACHE_API_TYPE="PHP"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerPHPFeature">APACHE_API_TYPE="PHP"</Publish>
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtTomcatFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerJSPFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtJavaDevGuideSamplesFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtJavaViewerSampleFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature" Condition="APACHE_API_TYPE="PHP"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerPHPFeature" Condition="APACHE_API_TYPE="PHP"" />
             <!-- Handle special "Back" actions to set UI properties -->
-            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_NoIIS_CA" Order="1">IISVERSIONMAJOR="#0"</Publish> 
-            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="2">IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="1">NOT IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="2">NOT IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="ApacheConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_NoIIS_CA" Order="1" Condition="IISVERSIONMAJOR="#0"" /> 
+            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="2" Condition="IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="1" Condition="NOT IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="2" Condition="NOT IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="ApacheConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="NewDialog" Value="IIS7ConfigDlg" Order="1">(NOT IISVERSIONMAJOR="#0")</Publish>
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="NewDialog" Value="IIS7ConfigDlg" Order="1" Condition="(NOT IISVERSIONMAJOR="#0")" />
             <!-- Default feature settings for PHP API - AddLocal required in case user changes mind and comes back -->
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature">IIS_API_TYPE="PHP"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature">IIS_API_TYPE="PHP"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature">IIS_API_TYPE="PHP"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerPHPFeature">IIS_API_TYPE="PHP"</Publish>
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerASPXFeature" Condition="IIS_API_TYPE="PHP"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetDevGuideSamplesFeature" Condition="IIS_API_TYPE="PHP"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtDotNetViewerSampleFeature" Condition="IIS_API_TYPE="PHP"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerPHPFeature" Condition="IIS_API_TYPE="PHP"" />
             <!-- Default feature settings for ASP.Net API - AddLocal required in case user changes mind and comes back -->
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerPHPFeature">IIS_API_TYPE="DOTNET"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature">IIS_API_TYPE="DOTNET"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature">IIS_API_TYPE="DOTNET"</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerASPXFeature">IIS_API_TYPE="DOTNET"</Publish>
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtMapViewerPHPFeature" Condition="IIS_API_TYPE="DOTNET"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpDevGuideSamplesFeature" Condition="IIS_API_TYPE="DOTNET"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="Remove" Value="WebExtPhpViewerSampleFeature" Condition="IIS_API_TYPE="DOTNET"" />
+            <Publish Dialog="IISLangConfigDlg" Control="Next" Event="AddLocal" Value="WebExtMapViewerASPXFeature" Condition="IIS_API_TYPE="DOTNET"" />
             <!-- Handle special "Back" actions to set UI properties -->
-            <Publish Dialog="IISLangConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="1">1</Publish> 
-            <Publish Dialog="IISLangConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="2">1</Publish>
-            <Publish Dialog="IISLangConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="IISLangConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="1" /> 
+            <Publish Dialog="IISLangConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="2" />
+            <Publish Dialog="IISLangConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
             
-            <Publish Dialog="IIS7ConfigDlg" Control="Next" Event="NewDialog" Value="IPConfigDlg">1</Publish>
-            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="NewDialog" Value="IISLangConfigDlg" Order="1">NETFRAMEWORK40FULL</Publish>
-            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="2">NOT NETFRAMEWORK40FULL</Publish>
-            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="3">NOT NETFRAMEWORK40FULL</Publish>
-            <Publish Dialog="IIS7ConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="IIS7ConfigDlg" Control="Next" Event="NewDialog" Value="IPConfigDlg" />
+            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="NewDialog" Value="IISLangConfigDlg" Order="1" Condition="NETFRAMEWORK40FULL" />
+            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="2" Condition="NOT NETFRAMEWORK40FULL" />
+            <Publish Dialog="IIS7ConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="3" Condition="NOT NETFRAMEWORK40FULL" />
+            <Publish Dialog="IIS7ConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="IPConfigDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg">1</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="IIS7ConfigDlg" Order="1">(NOT IISVERSIONMAJOR="#0") AND MGWEB_CONFIG="IIS"</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="ApacheConfigDlg" Order="2">MGWEB_CONFIG="APACHE"</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="3">(NOT IISVERSIONMAJOR="#0") AND ( (IISVERSIONMAJOR="#5" AND (NOT NETFRAMEWORK40FULL)) OR (MGWEB_CONFIG="MANUAL" ))</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="4">(NOT IISVERSIONMAJOR="#0") AND ( (IISVERSIONMAJOR="#5" AND (NOT NETFRAMEWORK40FULL) AND MGWEB_CONFIG="IIS" ) OR (MGWEB_CONFIG="MANUAL" ))</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_NoIIS_CA" Order="5">IISVERSIONMAJOR="#0"</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="6">IISVERSIONMAJOR="#0" AND MGWEB_CONFIG="MANUAL"</Publish>
-            <Publish Dialog="IPConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg">1</Publish>
+            <Publish Dialog="IPConfigDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="IIS7ConfigDlg" Order="1" Condition="(NOT IISVERSIONMAJOR="#0") AND MGWEB_CONFIG="IIS"" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="ApacheConfigDlg" Order="2" Condition="MGWEB_CONFIG="APACHE"" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_IIS_CA" Order="3" Condition="(NOT IISVERSIONMAJOR="#0") AND ( (IISVERSIONMAJOR="#5" AND (NOT NETFRAMEWORK40FULL)) OR (MGWEB_CONFIG="MANUAL" ))" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgIIS" Order="4" Condition="(NOT IISVERSIONMAJOR="#0") AND ( (IISVERSIONMAJOR="#5" AND (NOT NETFRAMEWORK40FULL) AND MGWEB_CONFIG="IIS" ) OR (MGWEB_CONFIG="MANUAL" ))" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="DoAction" Value="MgWeb_Config_To_NoIIS_CA" Order="5" Condition="IISVERSIONMAJOR="#0"" />
+            <Publish Dialog="IPConfigDlg" Control="Back" Event="NewDialog" Value="WebServerConfigDlgNoIIS" Order="6" Condition="IISVERSIONMAJOR="#0" AND MGWEB_CONFIG="MANUAL"" />
+            <Publish Dialog="IPConfigDlg" Control="Cancel" Event="SpawnDialog" Value="CancelDlg" />
 
-            <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="IPConfigDlg">1</Publish>
-            <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
-            <Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" Value="WixUIValidatePath" Order="2">1</Publish>
-            <Publish Dialog="InstallDirDlg" Control="Next" Event="SpawnDialog" Value="InvalidDirDlg" Order="3"><![CDATA[WIXUI_INSTALLDIR_VALID<>"1"]]></Publish>
-            <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="CustomizeDlg" Order="4"><![CDATA[WIXUI_INSTALLDIR_VALID="1"]]></Publish>
-            <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
-            <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="2">1</Publish>
+            <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="IPConfigDlg" />
+            <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1" />
+            <Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" Value="WixUIValidatePath_$(sys.BUILDARCHSHORT)" Order="2" />
+            <Publish Dialog="InstallDirDlg" Control="Next" Event="SpawnDialog" Value="InvalidDirDlg" Order="3" Condition="WIXUI_INSTALLDIR_VALID<>"1"" />
+            <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="CustomizeDlg" Order="4" Condition="WIXUI_INSTALLDIR_VALID="1"" />
+            <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1" />
+            <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="2" />
 
-            <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="1">Installed</Publish>
-            <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="InstallDirDlg" Order="7">NOT Installed</Publish>
-            <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
+            <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="1" Condition="Installed" />
+            <Publish Dialog="CustomizeDlg" Control="Back" Event="NewDialog" Value="InstallDirDlg" Order="7" Condition="NOT Installed" />
+            <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" />
 
-            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1">NOT Installed OR WixUI_InstallMode = "Change"</Publish>
-            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed</Publish>
+            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CustomizeDlg" Order="1" Condition="NOT Installed OR WixUI_InstallMode = "Change"" />
+            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2" Condition="Installed" />
 
-            <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
+            <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg" />
 
-            <Publish Dialog="MaintenanceTypeDlg" Control="ChangeButton" Event="NewDialog" Value="CustomizeDlg">1</Publish>
-            <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
-            <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
-            <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>
+            <Publish Dialog="MaintenanceTypeDlg" Control="ChangeButton" Event="NewDialog" Value="CustomizeDlg" />
+            <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg" />
+            <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg" />
+            <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg" />
 
-            <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
+            <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999" />
 
 
 
             <!-- Progress messages (so the user knows what's happening under the hood) - could use more of these... -->
-            <ProgressText Action="UpdateApacheConfig">!(loc.UpdateApacheConfig)</ProgressText>
-            <ProgressText Action="UpdatePhpIni">!(loc.UpdatePhpIni)</ProgressText>
-            <ProgressText Action="InstallApacheServiceCA">!(loc.InstallApacheServiceCA)</ProgressText>
-            <ProgressText Action="InstallTomcatServiceCA">!(loc.InstallTomcatServiceCA)</ProgressText>
-            <ProgressText Action="MgServerInstallCA">!(loc.MgServerInstallCA)</ProgressText>
-            <ProgressText Action="MgServerUninstallCA">!(loc.MgServerUninstallCA)</ProgressText>
-            <ProgressText Action="RemoveApacheServiceCA">!(loc.RemoveApacheServiceCA)</ProgressText>
-            <ProgressText Action="RemoveTomcatServiceCA">!(loc.RemoveTomcatServiceCA)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_UnlockSiteHandlers">!(loc.MapGuideIIS7_I_UnlockSiteHandlers)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateMapGuideApp">!(loc.MapGuideIIS7_I_CreateMapGuideApp)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SelectXmlCompat">!(loc.MapGuideIIS7_I_SelectXmlCompat)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreatePhpScriptMapping">!(loc.MapGuideIIS7_I_CreatePhpScriptMapping)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateMapAgentApp">!(loc.MapGuideIIS7_I_CreateMapAgentApp)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetMapAgentHandlerAccess">!(loc.MapGuideIIS7_I_SetMapAgentHandlerAccess)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateMapAgentScriptHandling">!(loc.MapGuideIIS7_I_CreateMapAgentScriptHandling)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_EnableMapAgentExtension">!(loc.MapGuideIIS7_I_EnableMapAgentExtension)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignMapGuideAppPool">!(loc.MapGuideIIS7_I_AssignMapGuideAppPool)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignMapAgentAppPool">!(loc.MapGuideIIS7_I_AssignMapAgentAppPool)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsMain">!(loc.MapGuideIIS7_I_UnlockHttpErrorsMain)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite">!(loc.MapGuideIIS7_I_UnlockHttpErrorsWebSite)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide">!(loc.MapGuideIIS7_I_UnlockHttpErrorsMapGuide)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_Reset401Handler">!(loc.MapGuideIIS7_I_Reset401Handler)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AddJsonMime">!(loc.MapGuideIIS7_I_AddJsonMime)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateViewerPhp">!(loc.MapGuideIIS7_I_CreateViewerPhp)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetViewerDocPhp">!(loc.MapGuideIIS7_I_SetViewerDocPhp)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolPhp">!(loc.MapGuideIIS7_I_AssignViewerAppPoolPhp)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateViewerNet">!(loc.MapGuideIIS7_I_CreateViewerNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetViewerDocNet">!(loc.MapGuideIIS7_I_SetViewerDocNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolNet">!(loc.MapGuideIIS7_I_AssignViewerAppPoolNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateMapViewerNet">!(loc.MapGuideIIS7_I_CreateMapViewerNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetMapViewerDocNet">!(loc.MapGuideIIS7_I_SetMapViewerDocNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet">!(loc.MapGuideIIS7_I_AssignMapViewerAppPoolNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateViewerSampleNet">!(loc.MapGuideIIS7_I_CreateViewerSampleNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet">!(loc.MapGuideIIS7_I_SetViewerDocViewerSampleNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet">!(loc.MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet">!(loc.MapGuideIIS7_I_CreateViewerDevGuideSamplesNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet">!(loc.MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet">!(loc.MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_U_ClearMapAgentRestriction">!(loc.MapGuideIIS7_U_ClearMapAgentRestriction)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_U_RemoveViewer">!(loc.MapGuideIIS7_U_RemoveViewer)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_U_RemoveMapAgent">!(loc.MapGuideIIS7_U_RemoveMapAgent)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_U_RemoveMapGuide">!(loc.MapGuideIIS7_U_RemoveMapGuide)</ProgressText>
-            <ProgressText Action="MapGuideIIS7_U_DeleteAppPool">!(loc.MapGuideIIS7_U_DeleteAppPool)</ProgressText>
-            <ProgressText Action="AspNetRegIIS">!(loc.AspNetRegIIS)</ProgressText>
-            <ProgressText Action="FdoRegArcSde">!(loc.FdoRegArcSde)</ProgressText>
-            <ProgressText Action="FdoRegSdf">!(loc.FdoRegSdf)</ProgressText>
-            <ProgressText Action="FdoRegShp">!(loc.FdoRegShp)</ProgressText>
-            <ProgressText Action="FdoRegWfs">!(loc.FdoRegWfs)</ProgressText>
-            <ProgressText Action="FdoRegWms">!(loc.FdoRegWms)</ProgressText>
-            <ProgressText Action="FdoRegOdbc">!(loc.FdoRegOdbc)</ProgressText>
-            <ProgressText Action="FdoRegMySql">!(loc.FdoRegMySql)</ProgressText>
-            <ProgressText Action="FdoRegGdal">!(loc.FdoRegGdal)</ProgressText>
-            <ProgressText Action="FdoRegOgr">!(loc.FdoRegOgr)</ProgressText>
-            <ProgressText Action="FdoRegPostgreSql">!(loc.FdoRegPostgreSql)</ProgressText>
-            <ProgressText Action="FdoRegOracle">!(loc.FdoRegOracle)</ProgressText>
-            <ProgressText Action="FdoRegSqlServer">!(loc.FdoRegSqlServer)</ProgressText>
-            <ProgressText Action="FdoRegSlt">!(loc.FdoRegSlt)</ProgressText>
-            <ProgressText Action="FdoUnRegArcSde">!(loc.FdoUnRegArcSde)</ProgressText>
-            <ProgressText Action="FdoUnRegSdf">!(loc.FdoUnRegSdf)</ProgressText>
-            <ProgressText Action="FdoUnRegShp">!(loc.FdoUnRegShp)</ProgressText>
-            <ProgressText Action="FdoUnRegWfs">!(loc.FdoUnRegWfs)</ProgressText>
-            <ProgressText Action="FdoUnRegWms">!(loc.FdoUnRegWms)</ProgressText>
-            <ProgressText Action="FdoUnRegOdbc">!(loc.FdoUnRegOdbc)</ProgressText>
-            <ProgressText Action="FdoUnRegMySql">!(loc.FdoUnRegMySql)</ProgressText>
-            <ProgressText Action="FdoUnRegGdal">!(loc.FdoUnRegGdal)</ProgressText>
-            <ProgressText Action="FdoUnRegOgr">!(loc.FdoUnRegOgr)</ProgressText>
-            <ProgressText Action="FdoUnRegPostgreSql">!(loc.FdoUnRegPostgreSql)</ProgressText>
-            <ProgressText Action="FdoUnRegOracle">!(loc.FdoUnRegOracle)</ProgressText>
-            <ProgressText Action="FdoUnRegSqlServer">!(loc.FdoUnRegSqlServer)</ProgressText>
-            <ProgressText Action="FdoUnRegSlt">!(loc.FdoUnRegSlt)</ProgressText>
+            <ProgressText Action="UpdateApacheConfig" Message="!(loc.UpdateApacheConfig)" />
+            <ProgressText Action="UpdatePhpIni" Message="!(loc.UpdatePhpIni)" />
+            <ProgressText Action="InstallApacheServiceCA" Message="!(loc.InstallApacheServiceCA)" />
+            <ProgressText Action="InstallTomcatServiceCA" Message="!(loc.InstallTomcatServiceCA)" />
+            <ProgressText Action="MgServerInstallCA" Message="!(loc.MgServerInstallCA)" />
+            <ProgressText Action="MgServerUninstallCA" Message="!(loc.MgServerUninstallCA)" />
+            <ProgressText Action="RemoveApacheServiceCA" Message="!(loc.RemoveApacheServiceCA)" />
+            <ProgressText Action="RemoveTomcatServiceCA" Message="!(loc.RemoveTomcatServiceCA)" />
+            <ProgressText Action="MapGuideIIS7_I_UnlockSiteHandlers" Message="!(loc.MapGuideIIS7_I_UnlockSiteHandlers)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateMapGuideApp" Message="!(loc.MapGuideIIS7_I_CreateMapGuideApp)" />
+            <ProgressText Action="MapGuideIIS7_I_SelectXmlCompat" Message="!(loc.MapGuideIIS7_I_SelectXmlCompat)" />
+            <ProgressText Action="MapGuideIIS7_I_CreatePhpScriptMapping" Message="!(loc.MapGuideIIS7_I_CreatePhpScriptMapping)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateMapAgentApp" Message="!(loc.MapGuideIIS7_I_CreateMapAgentApp)" />
+            <ProgressText Action="MapGuideIIS7_I_SetMapAgentHandlerAccess" Message="!(loc.MapGuideIIS7_I_SetMapAgentHandlerAccess)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateMapAgentScriptHandling" Message="!(loc.MapGuideIIS7_I_CreateMapAgentScriptHandling)" />
+            <ProgressText Action="MapGuideIIS7_I_EnableMapAgentExtension" Message="!(loc.MapGuideIIS7_I_EnableMapAgentExtension)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignMapGuideAppPool" Message="!(loc.MapGuideIIS7_I_AssignMapGuideAppPool)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignMapAgentAppPool" Message="!(loc.MapGuideIIS7_I_AssignMapAgentAppPool)" />
+            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsMain" Message="!(loc.MapGuideIIS7_I_UnlockHttpErrorsMain)" />
+            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite" Message="!(loc.MapGuideIIS7_I_UnlockHttpErrorsWebSite)" />
+            <ProgressText Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" Message="!(loc.MapGuideIIS7_I_UnlockHttpErrorsMapGuide)" />
+            <ProgressText Action="MapGuideIIS7_I_Reset401Handler" Message="!(loc.MapGuideIIS7_I_Reset401Handler)" />
+            <ProgressText Action="MapGuideIIS7_I_AddJsonMime" Message="!(loc.MapGuideIIS7_I_AddJsonMime)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateViewerPhp" Message="!(loc.MapGuideIIS7_I_CreateViewerPhp)" />
+            <ProgressText Action="MapGuideIIS7_I_SetViewerDocPhp" Message="!(loc.MapGuideIIS7_I_SetViewerDocPhp)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolPhp" Message="!(loc.MapGuideIIS7_I_AssignViewerAppPoolPhp)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateViewerNet" Message="!(loc.MapGuideIIS7_I_CreateViewerNet)" />
+            <ProgressText Action="MapGuideIIS7_I_SetViewerDocNet" Message="!(loc.MapGuideIIS7_I_SetViewerDocNet)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolNet" Message="!(loc.MapGuideIIS7_I_AssignViewerAppPoolNet)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateMapViewerNet" Message="!(loc.MapGuideIIS7_I_CreateMapViewerNet)" />
+            <ProgressText Action="MapGuideIIS7_I_SetMapViewerDocNet" Message="!(loc.MapGuideIIS7_I_SetMapViewerDocNet)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet" Message="!(loc.MapGuideIIS7_I_AssignMapViewerAppPoolNet)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateViewerSampleNet" Message="!(loc.MapGuideIIS7_I_CreateViewerSampleNet)" />
+            <ProgressText Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet" Message="!(loc.MapGuideIIS7_I_SetViewerDocViewerSampleNet)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" Message="!(loc.MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet)" />
+            <ProgressText Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" Message="!(loc.MapGuideIIS7_I_CreateViewerDevGuideSamplesNet)" />
+            <ProgressText Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" Message="!(loc.MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet)" />
+            <ProgressText Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" Message="!(loc.MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet)" />
+            <ProgressText Action="MapGuideIIS7_U_ClearMapAgentRestriction" Message="!(loc.MapGuideIIS7_U_ClearMapAgentRestriction)" />
+            <ProgressText Action="MapGuideIIS7_U_RemoveViewer" Message="!(loc.MapGuideIIS7_U_RemoveViewer)" />
+            <ProgressText Action="MapGuideIIS7_U_RemoveMapAgent" Message="!(loc.MapGuideIIS7_U_RemoveMapAgent)" />
+            <ProgressText Action="MapGuideIIS7_U_RemoveMapGuide" Message="!(loc.MapGuideIIS7_U_RemoveMapGuide)" />
+            <ProgressText Action="MapGuideIIS7_U_DeleteAppPool" Message="!(loc.MapGuideIIS7_U_DeleteAppPool)" />
+            <ProgressText Action="AspNetRegIIS" Message="!(loc.AspNetRegIIS)" />
+            <ProgressText Action="FdoRegArcSde" Message="!(loc.FdoRegArcSde)" />
+            <ProgressText Action="FdoRegSdf" Message="!(loc.FdoRegSdf)" />
+            <ProgressText Action="FdoRegShp" Message="!(loc.FdoRegShp)" />
+            <ProgressText Action="FdoRegWfs" Message="!(loc.FdoRegWfs)" />
+            <ProgressText Action="FdoRegWms" Message="!(loc.FdoRegWms)" />
+            <ProgressText Action="FdoRegOdbc" Message="!(loc.FdoRegOdbc)" />
+            <ProgressText Action="FdoRegMySql" Message="!(loc.FdoRegMySql)" />
+            <ProgressText Action="FdoRegGdal" Message="!(loc.FdoRegGdal)" />
+            <ProgressText Action="FdoRegOgr" Message="!(loc.FdoRegOgr)" />
+            <ProgressText Action="FdoRegPostgreSql" Message="!(loc.FdoRegPostgreSql)" />
+            <ProgressText Action="FdoRegOracle" Message="!(loc.FdoRegOracle)" />
+            <ProgressText Action="FdoRegSqlServer" Message="!(loc.FdoRegSqlServer)" />
+            <ProgressText Action="FdoRegSlt" Message="!(loc.FdoRegSlt)" />
+            <ProgressText Action="FdoUnRegArcSde" Message="!(loc.FdoUnRegArcSde)" />
+            <ProgressText Action="FdoUnRegSdf" Message="!(loc.FdoUnRegSdf)" />
+            <ProgressText Action="FdoUnRegShp" Message="!(loc.FdoUnRegShp)" />
+            <ProgressText Action="FdoUnRegWfs" Message="!(loc.FdoUnRegWfs)" />
+            <ProgressText Action="FdoUnRegWms" Message="!(loc.FdoUnRegWms)" />
+            <ProgressText Action="FdoUnRegOdbc" Message="!(loc.FdoUnRegOdbc)" />
+            <ProgressText Action="FdoUnRegMySql" Message="!(loc.FdoUnRegMySql)" />
+            <ProgressText Action="FdoUnRegGdal" Message="!(loc.FdoUnRegGdal)" />
+            <ProgressText Action="FdoUnRegOgr" Message="!(loc.FdoUnRegOgr)" />
+            <ProgressText Action="FdoUnRegPostgreSql" Message="!(loc.FdoUnRegPostgreSql)" />
+            <ProgressText Action="FdoUnRegOracle" Message="!(loc.FdoUnRegOracle)" />
+            <ProgressText Action="FdoUnRegSqlServer" Message="!(loc.FdoUnRegSqlServer)" />
+            <ProgressText Action="FdoUnRegSlt" Message="!(loc.FdoUnRegSlt)" />
         </UI>
 
         <InstallUISequence />
@@ -707,210 +628,198 @@
         <InstallExecuteSequence>
 
           <!-- IIS7 Base properties for deferred actions -->
-            <Custom Action="MapGuideIIS7_I_AppCmd_Cmd" After="CostFinalize">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateFastCgi_Cmd" After="MapGuideIIS7_I_AppCmd_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateAppPool_Cmd" After="MapGuideIIS7_I_CreateFastCgi_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetAppPoolProp_Cmd" After="MapGuideIIS7_I_CreateAppPool_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_AppCmd_Cmd" After="CostFinalize" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateFastCgi_Cmd" After="MapGuideIIS7_I_AppCmd_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateAppPool_Cmd" After="MapGuideIIS7_I_CreateFastCgi_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetAppPoolProp_Cmd" After="MapGuideIIS7_I_CreateAppPool_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
             
             <?if "$(var.MgPlatform)" = "x64" ?>
-            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" After="MapGuideIIS7_I_SetAppPoolProp_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <?else ?>
-            <Custom Action="MapGuideIIS7_I_Set32BitAppPool_Cmd" After="MapGuideIIS7_I_SetAppPoolProp_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" After="MapGuideIIS7_I_Set32BitAppPool_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <?endif ?>
+            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" After="MapGuideIIS7_I_SetAppPoolProp_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <?else?>
+            <Custom Action="MapGuideIIS7_I_Set32BitAppPool_Cmd" After="MapGuideIIS7_I_SetAppPoolProp_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" After="MapGuideIIS7_I_Set32BitAppPool_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <?endif?>
             
-            <Custom Action="MapGuideIIS7_I_UnlockSiteHandlers_Cmd" After="MapGuideIIS7_I_UnlockSrvHandlers_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapGuideApp_Cmd" After="MapGuideIIS7_I_UnlockSiteHandlers_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SelectXmlCompat_Cmd" After="MapGuideIIS7_I_CreateMapGuideApp_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd" After="MapGuideIIS7_I_SelectXmlCompat_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapAgentApp_Cmd" After="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd" After="MapGuideIIS7_I_CreateMapAgentApp_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd" After="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_EnableMapAgentExtension_Cmd" After="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd" After="MapGuideIIS7_I_EnableMapAgentExtension_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd" After="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd" After="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_Reset401Handler_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AddJsonMime_Cmd" After="MapGuideIIS7_I_Reset401Handler_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_UnlockSiteHandlers_Cmd" After="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapGuideApp_Cmd" After="MapGuideIIS7_I_UnlockSiteHandlers_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SelectXmlCompat_Cmd" After="MapGuideIIS7_I_CreateMapGuideApp_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd" After="MapGuideIIS7_I_SelectXmlCompat_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapAgentApp_Cmd" After="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd" After="MapGuideIIS7_I_CreateMapAgentApp_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd" After="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_EnableMapAgentExtension_Cmd" After="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd" After="MapGuideIIS7_I_EnableMapAgentExtension_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd" After="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd" After="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_Reset401Handler_Cmd" After="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AddJsonMime_Cmd" After="MapGuideIIS7_I_Reset401Handler_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
             <!-- IIS7 PHP Viewer properties for deferred actions -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerPhp_Cmd" After="MapGuideIIS7_I_AddJsonMime_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocPhp_Cmd" After="MapGuideIIS7_I_CreateViewerPhp_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolPhp_Cmd" After="MapGuideIIS7_I_SetViewerDocPhp_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerPhp_Cmd" After="MapGuideIIS7_I_AddJsonMime_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocPhp_Cmd" After="MapGuideIIS7_I_CreateViewerPhp_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolPhp_Cmd" After="MapGuideIIS7_I_SetViewerDocPhp_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
             <!-- IIS7 ASP.Net Viewer properties for deferred actions -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerNet_Cmd" After="MapGuideIIS7_I_Reset401Handler_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocNet_Cmd" After="MapGuideIIS7_I_CreateViewerNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd" After="MapGuideIIS7_I_SetViewerDocNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerNet_Cmd" After="MapGuideIIS7_I_Reset401Handler_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocNet_Cmd" After="MapGuideIIS7_I_CreateViewerNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd" After="MapGuideIIS7_I_SetViewerDocNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
             <!-- mapviewernet -->
-            <Custom Action="MapGuideIIS7_I_CreateMapViewerNet_Cmd" After="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetMapViewerDocNet_Cmd" After="MapGuideIIS7_I_CreateMapViewerNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd" After="MapGuideIIS7_I_SetMapViewerDocNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateMapViewerNet_Cmd" After="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetMapViewerDocNet_Cmd" After="MapGuideIIS7_I_CreateMapViewerNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd" After="MapGuideIIS7_I_SetMapViewerDocNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
             <!-- .net viewer sample -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerSampleNet_Cmd" After="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd" After="MapGuideIIS7_I_CreateViewerSampleNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd" After="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerSampleNet_Cmd" After="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd" After="MapGuideIIS7_I_CreateViewerSampleNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd" After="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
 
             <!-- .net devguide sample -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet_Cmd" After="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
             
             <!-- IIS7 Base deferred CAs -->
-            <Custom Action="MapGuideIIS7_I_CreateAppPool" After="InstallFiles">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateFastCgi" After="MapGuideIIS7_I_CreateAppPool">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetAppPoolProp" After="MapGuideIIS7_I_CreateFastCgi">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateAppPool" After="InstallFiles" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateFastCgi" After="MapGuideIIS7_I_CreateAppPool" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetAppPoolProp" After="MapGuideIIS7_I_CreateFastCgi" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
             
             <?if "$(var.MgPlatform)" = "x64" ?>
-            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers" After="MapGuideIIS7_I_SetAppPoolProp">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <?else ?>
-            <Custom Action="MapGuideIIS7_I_Set32BitAppPool" After="MapGuideIIS7_I_SetAppPoolProp">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers" After="MapGuideIIS7_I_Set32BitAppPool">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <?endif ?>
+            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers" After="MapGuideIIS7_I_SetAppPoolProp" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <?else?>
+            <Custom Action="MapGuideIIS7_I_Set32BitAppPool" After="MapGuideIIS7_I_SetAppPoolProp" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockSrvHandlers" After="MapGuideIIS7_I_Set32BitAppPool" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <?endif?>
             
-            <Custom Action="MapGuideIIS7_I_UnlockSiteHandlers" After="MapGuideIIS7_I_UnlockSrvHandlers">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapGuideApp" After="MapGuideIIS7_I_UnlockSiteHandlers">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SelectXmlCompat" After="MapGuideIIS7_I_CreateMapGuideApp">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreatePhpScriptMapping" After="MapGuideIIS7_I_SelectXmlCompat">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapAgentApp" After="MapGuideIIS7_I_CreatePhpScriptMapping">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetMapAgentHandlerAccess" After="MapGuideIIS7_I_CreateMapAgentApp">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_CreateMapAgentScriptHandling" After="MapGuideIIS7_I_SetMapAgentHandlerAccess">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_EnableMapAgentExtension" After="MapGuideIIS7_I_CreateMapAgentScriptHandling">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapGuideAppPool" After="MapGuideIIS7_I_EnableMapAgentExtension">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapAgentAppPool" After="MapGuideIIS7_I_AssignMapGuideAppPool">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMain" After="MapGuideIIS7_I_AssignMapAgentAppPool">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite" After="MapGuideIIS7_I_UnlockHttpErrorsMain">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" After="MapGuideIIS7_I_UnlockHttpErrorsWebSite">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_Reset401Handler" After="MapGuideIIS7_I_UnlockHttpErrorsMapGuide">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AddJsonMime" After="MapGuideIIS7_I_Reset401Handler">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_UnlockSiteHandlers" After="MapGuideIIS7_I_UnlockSrvHandlers" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapGuideApp" After="MapGuideIIS7_I_UnlockSiteHandlers" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SelectXmlCompat" After="MapGuideIIS7_I_CreateMapGuideApp" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreatePhpScriptMapping" After="MapGuideIIS7_I_SelectXmlCompat" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapAgentApp" After="MapGuideIIS7_I_CreatePhpScriptMapping" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetMapAgentHandlerAccess" After="MapGuideIIS7_I_CreateMapAgentApp" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_CreateMapAgentScriptHandling" After="MapGuideIIS7_I_SetMapAgentHandlerAccess" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_EnableMapAgentExtension" After="MapGuideIIS7_I_CreateMapAgentScriptHandling" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapGuideAppPool" After="MapGuideIIS7_I_EnableMapAgentExtension" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapAgentAppPool" After="MapGuideIIS7_I_AssignMapGuideAppPool" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMain" After="MapGuideIIS7_I_AssignMapAgentAppPool" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsWebSite" After="MapGuideIIS7_I_UnlockHttpErrorsMain" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" After="MapGuideIIS7_I_UnlockHttpErrorsWebSite" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_Reset401Handler" After="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AddJsonMime" After="MapGuideIIS7_I_Reset401Handler" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
           <!-- IIS7 PHP Viewer deferred CAs -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerPhp" After="MapGuideIIS7_I_AddJsonMime">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocPhp" After="MapGuideIIS7_I_CreateViewerPhp">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolPhp" After="MapGuideIIS7_I_SetViewerDocPhp">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerPhp" After="MapGuideIIS7_I_AddJsonMime" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocPhp" After="MapGuideIIS7_I_CreateViewerPhp" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolPhp" After="MapGuideIIS7_I_SetViewerDocPhp" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="PHP" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
           <!-- IIS7 DOTNET Viewer deferred CAs -->
-            <Custom Action="MapGuideIIS7_I_CreateViewerNet" After="MapGuideIIS7_I_Reset401Handler">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocNet" After="MapGuideIIS7_I_CreateViewerNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolNet" After="MapGuideIIS7_I_SetViewerDocNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerNet" After="MapGuideIIS7_I_Reset401Handler" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocNet" After="MapGuideIIS7_I_CreateViewerNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolNet" After="MapGuideIIS7_I_SetViewerDocNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2" />
 
-            <Custom Action="MapGuideIIS7_I_CreateMapViewerNet" After="MapGuideIIS7_I_AssignViewerAppPoolNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetMapViewerDocNet" After="MapGuideIIS7_I_CreateMapViewerNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet" After="MapGuideIIS7_I_SetMapViewerDocNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateMapViewerNet" After="MapGuideIIS7_I_AssignViewerAppPoolNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetMapViewerDocNet" After="MapGuideIIS7_I_CreateMapViewerNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignMapViewerAppPoolNet" After="MapGuideIIS7_I_SetMapViewerDocNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtMapViewerASPXFeature>2" />
 
-            <Custom Action="MapGuideIIS7_I_CreateViewerSampleNet" After="MapGuideIIS7_I_AssignMapViewerAppPoolNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet" After="MapGuideIIS7_I_CreateViewerSampleNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" After="MapGuideIIS7_I_SetViewerDocViewerSampleNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerSampleNet" After="MapGuideIIS7_I_AssignMapViewerAppPoolNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocViewerSampleNet" After="MapGuideIIS7_I_CreateViewerSampleNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" After="MapGuideIIS7_I_SetViewerDocViewerSampleNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetViewerSampleFeature>2" />
 
-            <Custom Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" After="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" After="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
-            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" After="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet">MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2</Custom>
+            <Custom Action="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" After="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
+            <Custom Action="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" After="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
+            <Custom Action="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" After="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" Condition="MGWEB_CONFIG="IIS" AND IIS_API_TYPE="DOTNET" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature>2 AND &WebExtDotNetDevGuideSamplesFeature>2" />
 
           <!-- IIS7 UNINSTALL deferred action properties -->
-            <Custom Action="MapGuideIIS7_U_AppCmd_Cmd" After="InstallInitialize">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd" After="MapGuideIIS7_U_AppCmd_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveDotNetSamples_Cmd" After="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd" After="MapGuideIIS7_U_RemoveDotNetSamples_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveViewer_Cmd" After="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveViewerNet_Cmd" After="MapGuideIIS7_U_RemoveViewer_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveMapAgent_Cmd" After="MapGuideIIS7_U_RemoveViewerNet_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveMapGuide_Cmd" After="MapGuideIIS7_U_RemoveMapAgent_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_DeleteAppPool_Cmd" After="MapGuideIIS7_U_RemoveMapGuide_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
+            <Custom Action="MapGuideIIS7_U_AppCmd_Cmd" After="InstallInitialize" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd" After="MapGuideIIS7_U_AppCmd_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveDotNetSamples_Cmd" After="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd" After="MapGuideIIS7_U_RemoveDotNetSamples_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveViewer_Cmd" After="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveViewerNet_Cmd" After="MapGuideIIS7_U_RemoveViewer_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveMapAgent_Cmd" After="MapGuideIIS7_U_RemoveViewerNet_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveMapGuide_Cmd" After="MapGuideIIS7_U_RemoveMapAgent_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_DeleteAppPool_Cmd" After="MapGuideIIS7_U_RemoveMapGuide_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
 
           <!-- IIS7 UNINSTALL deferred CAs -->
-            <Custom Action="MapGuideIIS7_U_ClearMapAgentRestriction" After="MapGuideIIS7_U_DeleteAppPool_Cmd">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveDotNetSamples" After="MapGuideIIS7_U_ClearMapAgentRestriction">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveDotNetViewerSample" After="MapGuideIIS7_U_RemoveDotNetSamples">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveViewer" After="MapGuideIIS7_U_RemoveDotNetViewerSample">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveViewerNet" After="MapGuideIIS7_U_RemoveViewer">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveMapAgent" After="MapGuideIIS7_U_RemoveViewerNet">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_RemoveMapGuide" After="MapGuideIIS7_U_RemoveMapAgent">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
-            <Custom Action="MapGuideIIS7_U_DeleteAppPool" After="MapGuideIIS7_U_RemoveMapGuide">MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2</Custom>
+            <Custom Action="MapGuideIIS7_U_ClearMapAgentRestriction" After="MapGuideIIS7_U_DeleteAppPool_Cmd" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveDotNetSamples" After="MapGuideIIS7_U_ClearMapAgentRestriction" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveDotNetViewerSample" After="MapGuideIIS7_U_RemoveDotNetSamples" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveViewer" After="MapGuideIIS7_U_RemoveDotNetViewerSample" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveViewerNet" After="MapGuideIIS7_U_RemoveViewer" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveMapAgent" After="MapGuideIIS7_U_RemoveViewerNet" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_RemoveMapGuide" After="MapGuideIIS7_U_RemoveMapAgent" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
+            <Custom Action="MapGuideIIS7_U_DeleteAppPool" After="MapGuideIIS7_U_RemoveMapGuide" Condition="MGWEB_CONFIG="IIS" AND (NOT IISVERSIONMAJOR="#0") AND &WebExtensionsFeature=2" />
             
             <Custom Action="FdoRegCmd" After="InstallInitialize"></Custom>
             <!-- FDO Provider Registration Immediate Actions -->
-            <Custom Action="FdoRegArcSdeCmd" After="InstallFiles">&FdoArcSdeProviderFeature>2</Custom>
-            <Custom Action="FdoRegSdfCmd" After="FdoRegArcSdeCmd">&FdoSdfProviderFeature>2</Custom>
-            <Custom Action="FdoRegShpCmd" After="FdoRegSdfCmd">&FdoShpProviderFeature>2</Custom>
-            <Custom Action="FdoRegWfsCmd" After="FdoRegShpCmd">&FdoWfsProviderFeature>2</Custom>
-            <Custom Action="FdoRegWmsCmd" After="FdoRegWfsCmd">&FdoWmsProviderFeature>2</Custom>
-            <Custom Action="FdoRegOdbcCmd" After="FdoRegWmsCmd">&FdoOdbcProviderFeature>2</Custom>
-            <Custom Action="FdoRegMySqlCmd" After="FdoRegOdbcCmd">&FdoMySqlProviderFeature>2</Custom>
-            <Custom Action="FdoRegGdalCmd" After="FdoRegMySqlCmd">&FdoGdalProviderFeature>2</Custom>
-            <Custom Action="FdoRegOgrCmd" After="FdoRegGdalCmd">&FdoOgrProviderFeature>2</Custom>
-            <Custom Action="FdoRegPostgreSqlCmd" After="FdoRegOgrCmd">&FdoPostgreSqlProviderFeature>2</Custom>
-            <Custom Action="FdoRegOracleCmd" After="FdoRegPostgreSqlCmd">&FdoKingOracleProviderFeature>2</Custom>
-            <Custom Action="FdoRegSqlServerCmd" After="FdoRegOracleCmd">&FdoSqlServerSpatialProviderFeature>2</Custom>
-            <Custom Action="FdoRegSltCmd" After="FdoRegSqlServerCmd">&FdoSltProviderFeature>2</Custom>
+            <Custom Action="FdoRegArcSdeCmd" After="InstallFiles" Condition="&FdoArcSdeProviderFeature>2" />
+            <Custom Action="FdoRegSdfCmd" After="FdoRegArcSdeCmd" Condition="&FdoSdfProviderFeature>2" />
+            <Custom Action="FdoRegShpCmd" After="FdoRegSdfCmd" Condition="&FdoShpProviderFeature>2" />
+            <Custom Action="FdoRegWfsCmd" After="FdoRegShpCmd" Condition="&FdoWfsProviderFeature>2" />
+            <Custom Action="FdoRegWmsCmd" After="FdoRegWfsCmd" Condition="&FdoWmsProviderFeature>2" />
+            <Custom Action="FdoRegOdbcCmd" After="FdoRegWmsCmd" Condition="&FdoOdbcProviderFeature>2" />
+            <Custom Action="FdoRegMySqlCmd" After="FdoRegOdbcCmd" Condition="&FdoMySqlProviderFeature>2" />
+            <Custom Action="FdoRegGdalCmd" After="FdoRegMySqlCmd" Condition="&FdoGdalProviderFeature>2" />
+            <Custom Action="FdoRegOgrCmd" After="FdoRegGdalCmd" Condition="&FdoOgrProviderFeature>2" />
+            <Custom Action="FdoRegPostgreSqlCmd" After="FdoRegOgrCmd" Condition="&FdoPostgreSqlProviderFeature>2" />
+            <Custom Action="FdoRegOracleCmd" After="FdoRegPostgreSqlCmd" Condition="&FdoKingOracleProviderFeature>2" />
+            <Custom Action="FdoRegSqlServerCmd" After="FdoRegOracleCmd" Condition="&FdoSqlServerSpatialProviderFeature>2" />
+            <Custom Action="FdoRegSltCmd" After="FdoRegSqlServerCmd" Condition="&FdoSltProviderFeature>2" />
 
             <!-- FDO Provider Registration deferred Actions -->
-            <Custom Action="FdoRegArcSde" After="FdoRegSltCmd">&FdoArcSdeProviderFeature>2</Custom>
-            <Custom Action="FdoRegSdf" After="FdoRegArcSde">&FdoSdfProviderFeature>2</Custom>
-            <Custom Action="FdoRegShp" After="FdoRegSdf">&FdoShpProviderFeature>2</Custom>
-            <Custom Action="FdoRegWfs" After="FdoRegShp">&FdoWfsProviderFeature>2</Custom>
-            <Custom Action="FdoRegWms" After="FdoRegWfs">&FdoWmsProviderFeature>2</Custom>
-            <Custom Action="FdoRegOdbc" After="FdoRegWms">&FdoOdbcProviderFeature>2</Custom>
-            <Custom Action="FdoRegMySql" After="FdoRegOdbc">&FdoMySqlProviderFeature>2</Custom>
-            <Custom Action="FdoRegGdal" After="FdoRegMySql">&FdoGdalProviderFeature>2</Custom>
-            <Custom Action="FdoRegOgr" After="FdoRegGdal">&FdoOgrProviderFeature>2</Custom>
-            <Custom Action="FdoRegPostgreSql" After="FdoRegOgr">&FdoPostgreSqlProviderFeature>2</Custom>
-            <Custom Action="FdoRegOracle" After="FdoRegPostgreSql">&FdoKingOracleProviderFeature>2</Custom>
-            <Custom Action="FdoRegSqlServer" After="FdoRegOracle">&FdoSqlServerSpatialProviderFeature>2</Custom>
-            <Custom Action="FdoRegSlt" After="FdoRegSqlServer">&FdoSltProviderFeature>2</Custom>
+            <Custom Action="FdoRegArcSde" After="FdoRegSltCmd" Condition="&FdoArcSdeProviderFeature>2" />
+            <Custom Action="FdoRegSdf" After="FdoRegArcSde" Condition="&FdoSdfProviderFeature>2" />
+            <Custom Action="FdoRegShp" After="FdoRegSdf" Condition="&FdoShpProviderFeature>2" />
+            <Custom Action="FdoRegWfs" After="FdoRegShp" Condition="&FdoWfsProviderFeature>2" />
+            <Custom Action="FdoRegWms" After="FdoRegWfs" Condition="&FdoWmsProviderFeature>2" />
+            <Custom Action="FdoRegOdbc" After="FdoRegWms" Condition="&FdoOdbcProviderFeature>2" />
+            <Custom Action="FdoRegMySql" After="FdoRegOdbc" Condition="&FdoMySqlProviderFeature>2" />
+            <Custom Action="FdoRegGdal" After="FdoRegMySql" Condition="&FdoGdalProviderFeature>2" />
+            <Custom Action="FdoRegOgr" After="FdoRegGdal" Condition="&FdoOgrProviderFeature>2" />
+            <Custom Action="FdoRegPostgreSql" After="FdoRegOgr" Condition="&FdoPostgreSqlProviderFeature>2" />
+            <Custom Action="FdoRegOracle" After="FdoRegPostgreSql" Condition="&FdoKingOracleProviderFeature>2" />
+            <Custom Action="FdoRegSqlServer" After="FdoRegOracle" Condition="&FdoSqlServerSpatialProviderFeature>2" />
+            <Custom Action="FdoRegSlt" After="FdoRegSqlServer" Condition="&FdoSltProviderFeature>2" />
 
             <!-- FDO Provider Unregistration Immediate Actions -->
-            <Custom Action="FdoUnRegArcSdeCmd" After="InstallInitialize">&FdoArcSdeProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSdfCmd" After="FdoUnRegArcSdeCmd">&FdoSdfProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegShpCmd" After="FdoUnRegSdfCmd">&FdoShpProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegWfsCmd" After="FdoUnRegShpCmd">&FdoWfsProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegWmsCmd" After="FdoUnRegWfsCmd">&FdoWmsProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOdbcCmd" After="FdoUnRegWmsCmd">&FdoOdbcProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegMySqlCmd" After="FdoUnRegOdbcCmd">&FdoMySqlProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegGdalCmd" After="FdoUnRegMySqlCmd">&FdoGdalProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOgrCmd" After="FdoUnRegGdalCmd">&FdoOgrProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegPostgreSqlCmd" After="FdoUnRegOgrCmd">&FdoPostgreSqlProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOracleCmd" After="FdoUnRegPostgreSqlCmd">&FdoKingOracleProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSqlServerCmd" After="FdoUnRegOracleCmd">&FdoSqlServerSpatialProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSltCmd" After="FdoUnRegSqlServerCmd">&FdoSltProviderFeature=2</Custom>
+            <Custom Action="FdoUnRegArcSdeCmd" After="InstallInitialize" Condition="&FdoArcSdeProviderFeature=2" />
+            <Custom Action="FdoUnRegSdfCmd" After="FdoUnRegArcSdeCmd" Condition="&FdoSdfProviderFeature=2" />
+            <Custom Action="FdoUnRegShpCmd" After="FdoUnRegSdfCmd" Condition="&FdoShpProviderFeature=2" />
+            <Custom Action="FdoUnRegWfsCmd" After="FdoUnRegShpCmd" Condition="&FdoWfsProviderFeature=2" />
+            <Custom Action="FdoUnRegWmsCmd" After="FdoUnRegWfsCmd" Condition="&FdoWmsProviderFeature=2" />
+            <Custom Action="FdoUnRegOdbcCmd" After="FdoUnRegWmsCmd" Condition="&FdoOdbcProviderFeature=2" />
+            <Custom Action="FdoUnRegMySqlCmd" After="FdoUnRegOdbcCmd" Condition="&FdoMySqlProviderFeature=2" />
+            <Custom Action="FdoUnRegGdalCmd" After="FdoUnRegMySqlCmd" Condition="&FdoGdalProviderFeature=2" />
+            <Custom Action="FdoUnRegOgrCmd" After="FdoUnRegGdalCmd" Condition="&FdoOgrProviderFeature=2" />
+            <Custom Action="FdoUnRegPostgreSqlCmd" After="FdoUnRegOgrCmd" Condition="&FdoPostgreSqlProviderFeature=2" />
+            <Custom Action="FdoUnRegOracleCmd" After="FdoUnRegPostgreSqlCmd" Condition="&FdoKingOracleProviderFeature=2" />
+            <Custom Action="FdoUnRegSqlServerCmd" After="FdoUnRegOracleCmd" Condition="&FdoSqlServerSpatialProviderFeature=2" />
+            <Custom Action="FdoUnRegSltCmd" After="FdoUnRegSqlServerCmd" Condition="&FdoSltProviderFeature=2" />
 
             <!-- FDO Provider Unregistration Deferred Actions -->
-            <Custom Action="FdoUnRegArcSde" After="FdoUnRegSltCmd">&FdoArcSdeProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSdf" After="FdoUnRegArcSde">&FdoSdfProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegShp" After="FdoUnRegSdf">&FdoShpProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegWfs" After="FdoUnRegShp">&FdoWfsProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegWms" After="FdoUnRegWfs">&FdoWmsProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOdbc" After="FdoUnRegWms">&FdoOdbcProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegMySql" After="FdoUnRegOdbc">&FdoMySqlProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegGdal" After="FdoUnRegMySql">&FdoGdalProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOgr" After="FdoUnRegGdal">&FdoOgrProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegPostgreSql" After="FdoUnRegOgr">&FdoPostgreSqlProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegOracle" After="FdoUnRegPostgreSql">&FdoKingOracleProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSqlServer" After="FdoUnRegOracle">&FdoSqlServerSpatialProviderFeature=2</Custom>
-            <Custom Action="FdoUnRegSlt" After="FdoUnRegSqlServer">&FdoSltProviderFeature=2</Custom>
+            <Custom Action="FdoUnRegArcSde" After="FdoUnRegSltCmd" Condition="&FdoArcSdeProviderFeature=2" />
+            <Custom Action="FdoUnRegSdf" After="FdoUnRegArcSde" Condition="&FdoSdfProviderFeature=2" />
+            <Custom Action="FdoUnRegShp" After="FdoUnRegSdf" Condition="&FdoShpProviderFeature=2" />
+            <Custom Action="FdoUnRegWfs" After="FdoUnRegShp" Condition="&FdoWfsProviderFeature=2" />
+            <Custom Action="FdoUnRegWms" After="FdoUnRegWfs" Condition="&FdoWmsProviderFeature=2" />
+            <Custom Action="FdoUnRegOdbc" After="FdoUnRegWms" Condition="&FdoOdbcProviderFeature=2" />
+            <Custom Action="FdoUnRegMySql" After="FdoUnRegOdbc" Condition="&FdoMySqlProviderFeature=2" />
+            <Custom Action="FdoUnRegGdal" After="FdoUnRegMySql" Condition="&FdoGdalProviderFeature=2" />
+            <Custom Action="FdoUnRegOgr" After="FdoUnRegGdal" Condition="&FdoOgrProviderFeature=2" />
+            <Custom Action="FdoUnRegPostgreSql" After="FdoUnRegOgr" Condition="&FdoPostgreSqlProviderFeature=2" />
+            <Custom Action="FdoUnRegOracle" After="FdoUnRegPostgreSql" Condition="&FdoKingOracleProviderFeature=2" />
+            <Custom Action="FdoUnRegSqlServer" After="FdoUnRegOracle" Condition="&FdoSqlServerSpatialProviderFeature=2" />
+            <Custom Action="FdoUnRegSlt" After="FdoUnRegSqlServer" Condition="&FdoSltProviderFeature=2" />
 
             <!-- Apache / PHP / MG Server Custom Actions-->
-            <Custom
-                Action="UpdateApacheConfig"
-                After="UpdateApacheConfig.SetValues">&WebExtPhpFeature>2 AND &WebExtApacheFeature>2</Custom>
-            <Custom
-                Action="UpdateApacheConfig.SetValues"
-                After="InstallFiles">&WebExtPhpFeature>2 AND &WebExtApacheFeature>2</Custom>
-            <Custom
-                Action="UpdatePhpIni"
-                After="UpdatePhpIni.SetValues">&WebExtPhpFeature>2</Custom>
-            <Custom
-                Action="UpdatePhpIni.SetValues"
-                Before="InstallFinalize">&WebExtPhpFeature>2</Custom>
-            <Custom
-                Action="InstallApacheServiceCA"
-                Before="InstallFinalize">MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature>2</Custom>
-            <Custom
-                Action="StartApacheServiceCA"
-                After="InstallApacheServiceCA">MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature>2</Custom>
+            <Custom Action="UpdateApacheConfig" After="UpdateApacheConfig.SetValues" Condition="&WebExtPhpFeature>2 AND &WebExtApacheFeature>2" />
+            <Custom Action="UpdateApacheConfig.SetValues" After="InstallFiles" Condition="&WebExtPhpFeature>2 AND &WebExtApacheFeature>2" />
+            <Custom Action="UpdatePhpIni" After="UpdatePhpIni.SetValues" Condition="&WebExtPhpFeature>2" />
+            <Custom Action="UpdatePhpIni.SetValues" Before="InstallFinalize" Condition="&WebExtPhpFeature>2" />
+            <Custom Action="InstallApacheServiceCA" Before="InstallFinalize" Condition="MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature>2" />
+            <Custom Action="StartApacheServiceCA" After="InstallApacheServiceCA" Condition="MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature>2" />
             <!-- Something's wrong with the Tomcat actions. So disable them for now -->
             <!--
             <Custom
@@ -920,15 +829,9 @@
                 Action="StartTomcatServiceCA"
                 Before="InstallTomcatServiceCA">MGWEB_CONFIG="APACHE" AND &WebExtTomcatFeature>2</Custom>
             -->
-            <Custom
-                Action="MgServerInstallCA"
-                Before="InstallFinalize">&ServerFeature>2</Custom>
-            <Custom
-                Action="MgServerUninstallCA"
-                Before="RemoveFiles">&ServerFeature=2</Custom>
-            <Custom
-                Action="RemoveApacheServiceCA"
-                Before="RemoveFiles">MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature=2</Custom>
+            <Custom Action="MgServerInstallCA" Before="InstallFinalize" Condition="&ServerFeature>2" />
+            <Custom Action="MgServerUninstallCA" Before="RemoveFiles" Condition="&ServerFeature=2" />
+            <Custom Action="RemoveApacheServiceCA" Before="RemoveFiles" Condition="MGWEB_CONFIG="APACHE" AND &WebExtApacheFeature=2" />
             <!--
             <Custom
                 Action="RemoveTomcatServiceCA"
@@ -935,5 +838,25 @@
                 Before="RemoveFiles">MGWEB_CONFIG="APACHE" AND &WebExtTomcatFeature>2</Custom>
             -->
         </InstallExecuteSequence>
-    </Product>
+    
+            <StandardDirectory Id="WindowsFolder">
+                <Directory Id="System32Folder" Name="System32">
+                    <Directory Id="IISROOTLOCATION" Name="inetsrv">
+
+                    </Directory>
+                </Directory>
+            </StandardDirectory>
+            <StandardDirectory Id="ProgramMenuFolder" />
+            <StandardDirectory Id="DesktopFolder" />
+            <StandardDirectory Id="ProgramFiles64Folder">
+                <Directory Id="OSGeoFolder" Name="OSGeo">
+                    <Directory Id="INSTALLLOCATION" Name="MapGuide">
+                        <!-- These are "aliases", set in the individual feature libraries.-->
+                        <Directory Id="WebParentFolder" />
+                        <Directory Id="ServerParentFolder" />
+                        <Directory Id="CsMapParentFolder" />
+                    </Directory>
+                </Directory>
+            </StandardDirectory>
+        </Package>
 </Wix>

Modified: sandbox/jng/installer_wix6/Libraries/CS Map/CS Map.wixproj
===================================================================
--- sandbox/jng/installer_wix6/Libraries/CS Map/CS Map.wixproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/CS Map/CS Map.wixproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,55 +1,28 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
+<Project Sdk="WixToolset.Sdk/6.0.2">
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
-    <ProductVersion>3.0</ProductVersion>
-    <ProjectGuid>{01313db9-2aaf-4791-9b81-69bce3194531}</ProjectGuid>
-    <SchemaVersion>2.0</SchemaVersion>
+    <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
+    <Platform Condition="'$(Platform)' == ''">x64</Platform>
+    <EnableDefaultItems>false</EnableDefaultItems>
     <OutputName>CS Map</OutputName>
     <OutputType>Library</OutputType>
-    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
-    <MgRegKey Condition=" '$(MgRegKey)' == '' ">SOFTWARE\OSGeo\MapGuide</MgRegKey>
-    <MgSource Condition="('$(MgSource)'=='')">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgRegKey Condition="'$(MgRegKey)' == ''">SOFTWARE\OSGeo\MapGuide</MgRegKey>
+    <MgSource Condition="'$(MgSource)' == ''">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgSourceSanitized>$([System.String]::Copy('$(MgSource)').Replace('"', ''))</MgSourceSanitized>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
+    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
-    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
+    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
   <ItemGroup>
-    <Compile Include="FileIncludes\incCSMapDictionaryFiles.wxs" />
+    <Compile Include="HarvestFiles.wxs" />
     <Compile Include="CSMap.wxs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="FileIncludes" />
-    <Folder Include="Lang" />
-  </ItemGroup>
-  <ItemGroup>
     <EmbeddedResource Include="Lang\CSMap_en-US.wxl" />
   </ItemGroup>
-  <Import Project="$(WixTargetsPath)" />
-  <!--
-	To modify your build process, add your task inside one of the targets below and uncomment it.
-	Other similar extension points exist, see Wix.targets.
-	<Target Name="BeforeBuild">
-	</Target>
-	<Target Name="AfterBuild">
-	</Target>
-	-->
 </Project>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/CS Map/CSMap.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/CS Map/CSMap.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/CS Map/CSMap.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,37 +1,25 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
   <?if "$(var.MgPlatform)" = "x64" ?>
-    <?define Win64 = "yes" ?>
+    <?define Win64 = "always64" ?>
     <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-  <?else ?>
-     <?define Win64 = "no" ?>
+  <?else?>
+     <?define Win64 = "default" ?>
      <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-  <?endif ?>
+  <?endif?>
 	<Fragment>
     <DirectoryRef Id="CsMapParentFolder">
       <Directory Id="CSMAPLOCATION" Name="CS-Map">
-        <Component Id="CsMapComponent" Win64="$(var.Win64)" Guid="552EAF5E-2420-4C2A-A52C-62B456EE1F64">
+        <Directory Id="CSMAPDICTIONARIESLOCATION" Name="Dictionaries" />
+        <Component Id="CsMapComponent" Guid="552EAF5E-2420-4C2A-A52C-62B456EE1F64" Bitness="$(var.Win64)">
           <CreateFolder />
-          <IniFile Id="INISETSERVERDICTPATH"
-                   Action="addLine"
-                   Directory="SERVERBINLOCATION"
-                   Key="MentorDictionaryPath"
-                   Name="serverconfig.ini"
-                   Section="GeneralProperties"
-                   Value="[dir_Dictionaries_0]"/>
-          <IniFile Id="INISETWEBDICTPATH"
-                   Action="addLine"
-                   Directory="WEBROOTLOCATION"
-                   Key="MentorDictionaryPath"
-                   Name="webconfig.ini"
-                   Section="GeneralProperties"
-                   Value="[dir_Dictionaries_0]"/>
+          <IniFile Id="INISETSERVERDICTPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="MentorDictionaryPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[CSMAPDICTIONARIESLOCATION]" />
+          <IniFile Id="INISETWEBDICTPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="MentorDictionaryPath" Name="webconfig.ini" Section="GeneralProperties" Value="[CSMAPDICTIONARIESLOCATION]" />
         </Component>
       </Directory>
     </DirectoryRef>
-    <Feature Id="CSMapFeature" Display="hidden" Title="!(loc.CSMapFeature)" Level="1" Description="!(loc.CSMapFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
-      <ComponentRef Id="CsMapComponent"/>
-      <ComponentGroupRef Id="group_CSMAPDICTFILES"/>
+    <Feature Id="CSMapFeature" Display="hidden" Title="!(loc.CSMapFeature)" Level="1" Description="!(loc.CSMapFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no">
+      <ComponentRef Id="CsMapComponent" />
+      <ComponentGroupRef Id="group_CSMAPDICTFILES" />
     </Feature>
     </Fragment>
 </Wix>

Added: sandbox/jng/installer_wix6/Libraries/CS Map/HarvestFiles.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/CS Map/HarvestFiles.wxs	                        (rev 0)
+++ sandbox/jng/installer_wix6/Libraries/CS Map/HarvestFiles.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
+  <Fragment>
+    <ComponentGroup Id="group_CSMAPDICTFILES">
+      <Files Include="$(var.MgSource)\CS-Map\Dictionaries\**\*" Directory="CSMAPDICTIONARIESLOCATION" />
+    </ComponentGroup>
+  </Fragment>
+</Wix>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/CS Map/Lang/CSMap_en-US.wxl
===================================================================
--- sandbox/jng/installer_wix6/Libraries/CS Map/Lang/CSMap_en-US.wxl	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/CS Map/Lang/CSMap_en-US.wxl	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,5 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<WixLocalization Culture="en-US" xmlns="http://schemas.microsoft.com/wix/2006/localization">
-	<String Id="CSMapFeature">CS-Map</String>
-    <String Id="CSMapFeature_Description">CS-Map Open Source is a required component for MapGuide Server and Web Extensions.</String>
+<WixLocalization Culture="en-US" xmlns="http://wixtoolset.org/schemas/v4/wxl">
+	<String Id="CSMapFeature" Value="CS-Map" />
+    <String Id="CSMapFeature_Description" Value="CS-Map Open Source is a required component for MapGuide Server and Web Extensions." />
 </WixLocalization>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Server/FDO.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/FDO.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/FDO.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,17 +1,23 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
   <?if "$(var.MgPlatform)" = "x64" ?>
-    <?define Win64 = "yes" ?>
+    <?define Win64 = "always64" ?>
     <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-  <?else ?>
-     <?define Win64 = "no" ?>
+  <?else?>
+     <?define Win64 = "default" ?>
      <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-  <?endif ?>
+  <?endif?>
   <Fragment>
+      <Property Id="FDO_SDF_PROVIDER_NAME" Value="!(loc.SdfProvider)" />
+      <Property Id="FDO_SDF_PROVIDER_DESC" Value="!(loc.SdfProviderDesc)" />
+      <Property Id="FDO_POSTGRES_PROVIDER_NAME" Value="!(loc.PostgreSqlProvider)" />
+      <Property Id="FDO_POSTGRES_PROVIDER_DESC" Value="!(loc.PostgreSqlProviderDesc)" />
+      <Property Id="FDO_SQLSERVER_PROVIDER_NAME" Value="!(loc.SqlServerProvider)" />
+      <Property Id="FDO_SQLSERVER_PROVIDER_DESC" Value="!(loc.SqlServerProviderDesc)" />
+
       <CustomAction Id="FdoRegCmd" Property="FdoReg" Execute="immediate" Value=""[FDOLOCATION]FdoRegUtil.exe"" />
 
       <CustomAction Execute="immediate" Id="FdoRegArcSdeCmd" Property="FdoRegArcSde" Value="[FdoReg] -r "OSGeo.ArcSDE.[FDO_VERSION_SMALL]" "!(loc.ArcSdeProvider)" "!(loc.ArcSdeProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\ArcSDEProvider.dll"" />
-      <CustomAction Execute="immediate" Id="FdoRegSdfCmd" Property="FdoRegSdf" Value="[FdoReg] -r "OSGeo.SDF.[FDO_VERSION_SMALL]" "!(loc.SdfProvider)" "!(loc.SdfProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\SDFProvider.dll"" />
+    <CustomAction Execute="immediate" Id="FdoRegSdfCmd" Property="FdoRegSdf" Value="[FdoReg] -r "OSGeo.SDF.[FDO_VERSION_SMALL]" "[FDO_SDF_PROVIDER_NAME]" "[FDO_SDF_PROVIDER_DESC]" "[FDO_VERSION]" "[FDO_VERSION]" ".\SDFProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegShpCmd" Property="FdoRegShp" Value="[FdoReg] -r "OSGeo.SHP.[FDO_VERSION_SMALL]" "!(loc.ShpProvider)" "!(loc.ShpProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\SHPProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegWfsCmd" Property="FdoRegWfs" Value="[FdoReg] -r "OSGeo.WFS.[FDO_VERSION_SMALL]" "!(loc.WfsProvider)" "!(loc.WfsProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\WFSProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegWmsCmd" Property="FdoRegWms" Value="[FdoReg] -r "OSGeo.WMS.[FDO_VERSION_SMALL]" "!(loc.WmsProvider)" "!(loc.WmsProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\WMSProvider.dll"" />
@@ -19,24 +25,24 @@
       <CustomAction Execute="immediate" Id="FdoRegMySqlCmd" Property="FdoRegMySql" Value="[FdoReg] -r "OSGeo.MySQL.[FDO_VERSION_SMALL]" "!(loc.MySqlProvider)" "!(loc.MySqlProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\MySQLProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegGdalCmd" Property="FdoRegGdal" Value="[FdoReg] -r "OSGeo.Gdal.[FDO_VERSION_SMALL]" "!(loc.GdalProvider)" "!(loc.GdalProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\GRFPProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegOgrCmd" Property="FdoRegOgr" Value="[FdoReg] -r "OSGeo.OGR.[FDO_VERSION_SMALL]" "!(loc.OgrProvider)" "!(loc.OgrProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\OGRProvider.dll"" />
-      <CustomAction Execute="immediate" Id="FdoRegPostgreSqlCmd" Property="FdoRegPostgreSql" Value="[FdoReg] -r "OSGeo.PostgreSQL.[FDO_VERSION_SMALL]" "!(loc.PostgreSqlProvider)" "!(loc.PostgreSqlProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\PostgreSQLProvider.dll"" />
+    <CustomAction Execute="immediate" Id="FdoRegPostgreSqlCmd" Property="FdoRegPostgreSql" Value="[FdoReg] -r "OSGeo.PostgreSQL.[FDO_VERSION_SMALL]" "[FDO_POSTGRES_PROVIDER_NAME]" "[FDO_POSTGRES_PROVIDER_DESC]" "[FDO_VERSION]" "[FDO_VERSION]" ".\PostgreSQLProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegOracleCmd" Property="FdoRegOracle" Value="[FdoReg] -r "King.Oracle.[FDO_VERSION_SMALL]" "!(loc.KingOracleProvider)" "!(loc.KingOracleProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\KingOracleProvider.dll"" />
-      <CustomAction Execute="immediate" Id="FdoRegSqlServerCmd" Property="FdoRegSqlServer" Value="[FdoReg] -r "OSGeo.SQLServerSpatial.[FDO_VERSION_SMALL]" "!(loc.SqlServerProvider)" "!(loc.SqlServerProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\SQLServerSpatialProvider.dll"" />
+    <CustomAction Execute="immediate" Id="FdoRegSqlServerCmd" Property="FdoRegSqlServer" Value="[FdoReg] -r "OSGeo.SQLServerSpatial.[FDO_VERSION_SMALL]" "[FDO_SQLSERVER_PROVIDER_NAME]" "[FDO_SQLSERVER_PROVIDER_DESC]" "[FDO_VERSION]" "[FDO_VERSION]" ".\SQLServerSpatialProvider.dll"" />
       <CustomAction Execute="immediate" Id="FdoRegSltCmd" Property="FdoRegSlt" Value="[FdoReg] -r "OSGeo.SQLite.[FDO_VERSION_SMALL]" "!(loc.SltProvider)" "!(loc.SltProviderDesc)" "[FDO_VERSION]" "[FDO_VERSION]" ".\SQLiteProvider.dll"" />
 
-      <CustomAction Id="FdoRegArcSde" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegSdf" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegShp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegWfs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegWms" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegOdbc" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegMySql" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegGdal" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegOgr" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegPostgreSql" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegOracle" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegSqlServer" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoRegSlt" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+      <CustomAction Id="FdoRegArcSde" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegSdf" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegShp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegWfs" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegWms" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegOdbc" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegMySql" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegGdal" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegOgr" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegPostgreSql" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegOracle" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegSqlServer" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoRegSlt" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
       <CustomAction Execute="immediate" Id="FdoUnRegArcSdeCmd" Property="FdoUnRegArcSde" Value="[FdoReg] -u "OSGeo.ArcSDE.[FDO_VERSION_SMALL]"" />
       <CustomAction Execute="immediate" Id="FdoUnRegSdfCmd" Property="FdoUnRegSdf" Value="[FdoReg] -u "OSGeo.SDF.[FDO_VERSION_SMALL]"" />
@@ -52,41 +58,35 @@
       <CustomAction Execute="immediate" Id="FdoUnRegSqlServerCmd" Property="FdoUnRegSqlServer" Value="[FdoReg] -u "OSGeo.SQLServerSpatial.[FDO_VERSION_SMALL]"" />
       <CustomAction Execute="immediate" Id="FdoUnRegSltCmd" Property="FdoUnRegSlt" Value="[FdoReg] -u "OSGeo.SQLite.[FDO_VERSION_SMALL]"" />
 
-      <CustomAction Id="FdoUnRegArcSde" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegSdf" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegShp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegWfs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegWms" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegOdbc" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegMySql" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegGdal" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegOgr" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegPostgreSql" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegOracle" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegSqlServer" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
-      <CustomAction Id="FdoUnRegSlt" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+      <CustomAction Id="FdoUnRegArcSde" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegSdf" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegShp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegWfs" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegWms" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegOdbc" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegMySql" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegGdal" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegOgr" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegPostgreSql" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegOracle" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegSqlServer" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+      <CustomAction Id="FdoUnRegSlt" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
       <DirectoryRef Id="SERVERROOTLOCATION">
       <Directory Id="FDOLOCATION" Name="Fdo">
           <Directory Id="FDOCOMLOCATION" Name="com">
-              <Component Id="FdoComComponent" Win64="$(var.Win64)" Guid="2318F3DF-88E4-46EB-B2A7-86A17202D9CB">
+              <Component Id="FdoComComponent" Guid="2318F3DF-88E4-46EB-B2A7-86A17202D9CB" Bitness="$(var.Win64)">
                   <File Id="FdoSysSql" Checksum="yes" Source="$(var.MgSource)\Server\FDO\com\fdo_sys.sql" />
                   <File Id="FdoSysIdxSql" Checksum="yes" Source="$(var.MgSource)\Server\FDO\com\fdo_sys_idx.sql" />
                   <File Id="FdoSysSysSql" Checksum="yes" Source="$(var.MgSource)\Server\FDO\com\fdosys_sys.sql" />
               </Component>
           </Directory>
-          <Component Id="FdoComponent" Win64="$(var.Win64)" Guid="EC356C4B-8AD8-472C-8D3B-90AC4E77BDB0">
+          <Component Id="FdoComponent" Guid="EC356C4B-8AD8-472C-8D3B-90AC4E77BDB0" Bitness="$(var.Win64)">
             <CreateFolder />
-            <IniFile Id="INISETFDOPATH"
-                     Action="addLine"
-                     Directory="SERVERBINLOCATION"
-                     Key="FdoPath"
-                     Name="serverconfig.ini"
-                     Section="GeneralProperties"
-                     Value="[FDOLOCATION]" />
+            <IniFile Id="INISETFDOPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="FdoPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[FDOLOCATION]" />
           </Component>
           <!-- FDO Core -->
-          <Component Id="FdoCoreCompnent" Win64="$(var.Win64)" Guid="90F4CB26-524F-499B-AA22-BD17036B167D">
+          <Component Id="FdoCoreCompnent" Guid="90F4CB26-524F-499B-AA22-BD17036B167D" Bitness="$(var.Win64)">
               <File Id="FdoRegUtil" Checksum="yes" Source="$(var.MgSource)\Server\FDO\FdoRegUtil.exe" />
               <File Id="XalanLib" Checksum="yes" Source="$(var.MgSource)\Server\FDO\Xalan-C_1_11fdo.dll" />
               <File Id="XalanMessagesLib" Checksum="yes" Source="$(var.MgSource)\Server\FDO\XalanMessages_1_11fdo.dll" />
@@ -106,43 +106,43 @@
               <File Id="SmMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SmMessage.dll" />
           </Component>
           <!-- ArcSDE Provider -->
-          <Component Id="FdoArcSdeComponent" Win64="$(var.Win64)" Guid="73E0719B-243F-49E9-BF74-F1B7CF7EA35F">
+          <Component Id="FdoArcSdeComponent" Guid="73E0719B-243F-49E9-BF74-F1B7CF7EA35F" Bitness="$(var.Win64)">
               <?if "$(var.Have_ArcSde)" = "yes" ?>
               <File Id="ArcSdeMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\ArcSDEMessage.dll" />
               <File Id="ArcSdeProvider92" Checksum="yes" Source="$(var.MgSource)\Server\FDO\ArcSdeProvider92.dll" />
               <File Id="ArcSdeProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\ArcSdeProvider.dll" />
-              <?else ?>
+              <?else?>
               <CreateFolder />
-              <?endif ?>
+              <?endif?>
           </Component>
           <!-- GDAL Provider -->
-          <Component Id="FdoGdalProviderComponent" Win64="$(var.Win64)" Guid="B1D7539F-865E-4A32-B82A-96E76012780B">
+          <Component Id="FdoGdalProviderComponent" Guid="B1D7539F-865E-4A32-B82A-96E76012780B" Bitness="$(var.Win64)">
               <File Id="GrfpMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\GRFPMessage.dll" />
               <File Id="GrfpOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\GRFPOverrides.dll" />
               <File Id="GrfpProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\GRFPProvider.dll" />
           </Component>
           <!-- King Oracle Provider -->
-          <Component Id="FdoKingOracleProviderComponent" Win64="$(var.Win64)" Guid="A383085F-5531-4E31-9F74-0CDDF154FCAA">
+          <Component Id="FdoKingOracleProviderComponent" Guid="A383085F-5531-4E31-9F74-0CDDF154FCAA" Bitness="$(var.Win64)">
               <File Id="KingOracleMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\KingOracleMessage.dll" />
               <File Id="KingOracleOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\KingOracleOverrides.dll" />
               <File Id="KingOracleProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\KingOracleProvider.dll" />
           </Component>
           <!-- MySQL Provider -->
-          <Component Id="FdoMySqlProviderComponent" Win64="$(var.Win64)" Guid="26D8BA03-9BFE-4E89-BFBB-026284A38A6C">
+          <Component Id="FdoMySqlProviderComponent" Guid="26D8BA03-9BFE-4E89-BFBB-026284A38A6C" Bitness="$(var.Win64)">
               <File Id="MySqlOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\MySQLOverrides.dll" />
               <File Id="MySqlProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\MySQLProvider.dll" />
           </Component>
           <!-- ODBC Provider -->
-          <Component Id="FdoOdbcProviderComponent" Win64="$(var.Win64)" Guid="DB266999-621F-4503-B27C-F5F2B5AE2187">
+          <Component Id="FdoOdbcProviderComponent" Guid="DB266999-621F-4503-B27C-F5F2B5AE2187" Bitness="$(var.Win64)">
               <File Id="OdbcOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\ODBCOverrides.dll" />
               <File Id="OdbcProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\ODBCProvider.dll" />
           </Component>
           <!-- OGR Provider -->
-          <Component Id="FdoOgrProviderComponent" Win64="$(var.Win64)" Guid="7FB890D4-8824-478E-83F6-E14DF2A3F949">
+          <Component Id="FdoOgrProviderComponent" Guid="7FB890D4-8824-478E-83F6-E14DF2A3F949" Bitness="$(var.Win64)">
               <File Id="OgrProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\OGRProvider.dll" />
           </Component>
           <!-- PostGIS (new) Provider -->
-          <Component Id="FdoPostgreSqlProviderComponent" Win64="$(var.Win64)" Guid="550B6CA0-10F8-444B-B51B-8569FF23B8C2">
+          <Component Id="FdoPostgreSqlProviderComponent" Guid="550B6CA0-10F8-444B-B51B-8569FF23B8C2" Bitness="$(var.Win64)">
               <File Id="PostgreSqlOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\PostgreSQLOverrides.dll" />
               <File Id="PostgreSqlProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\PostgreSQLProvider.dll" />
               <File Id="LibPq" Checksum="yes" Source="$(var.MgSource)\Server\FDO\libpq.dll" />
@@ -153,32 +153,32 @@
               <File Id="LibWinPthread" Checksum="yes" Source="$(var.MgSource)\Server\FDO\libwinpthread-1.dll" />
           </Component>
           <!-- SDF Provider -->
-          <Component Id="FdoSdfProviderComponent" Win64="$(var.Win64)" Guid="F0976038-9F62-42E7-AA6E-B37C33744C6F">
+          <Component Id="FdoSdfProviderComponent" Guid="F0976038-9F62-42E7-AA6E-B37C33744C6F" Bitness="$(var.Win64)">
               <File Id="SdfMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SDFMessage.dll" />
               <File Id="SdfProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SDFProvider.dll" />
           </Component>
           <!-- SHP Provider -->
-          <Component Id="FdoShpProviderComponent" Win64="$(var.Win64)" Guid="AE77DBB1-1453-4528-A6F3-D8B58DEC90B1">
+          <Component Id="FdoShpProviderComponent" Guid="AE77DBB1-1453-4528-A6F3-D8B58DEC90B1" Bitness="$(var.Win64)">
               <File Id="ShpMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SHPMessage.dll" />
               <File Id="ShpOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SHPOverrides.dll" />
               <File Id="ShpProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SHPProvider.dll" />
           </Component>
           <!-- SQLite Provider -->
-          <Component Id="FdoSltProviderComponent" Win64="$(var.Win64)" Guid="B08D37EF-BE05-486B-ACE5-E1C4CF15112E">
+          <Component Id="FdoSltProviderComponent" Guid="B08D37EF-BE05-486B-ACE5-E1C4CF15112E" Bitness="$(var.Win64)">
               <File Id="SltProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SQLiteProvider.dll" />
           </Component>
           <!-- SQL Server Spatial Provider -->
-          <Component Id="FdoSqlServerSpatialProviderComponent" Win64="$(var.Win64)" Guid="C7BBA455-5885-4207-953E-C5C6455FF7FB">
+          <Component Id="FdoSqlServerSpatialProviderComponent" Guid="C7BBA455-5885-4207-953E-C5C6455FF7FB" Bitness="$(var.Win64)">
               <File Id="SqlServerSpatialOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SQLServerSpatialOverrides.dll" />
               <File Id="SqlServerSpatialProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\SQLServerSpatialProvider.dll" />
           </Component>
           <!-- WFS Provider -->
-          <Component Id="FdoWfsProviderComponent" Win64="$(var.Win64)" Guid="FE44D851-BBE6-4D72-811F-0BAA1B81A29B">
+          <Component Id="FdoWfsProviderComponent" Guid="FE44D851-BBE6-4D72-811F-0BAA1B81A29B" Bitness="$(var.Win64)">
               <File Id="WfsMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\WFSMessage.dll" />
               <File Id="WfsProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\WFSProvider.dll" />
           </Component>
           <!-- WMS Provider -->
-          <Component Id="FdoWmsProviderComponent" Win64="$(var.Win64)" Guid="97C77CE8-4F97-49E3-B6D8-E4A40DB02190">
+          <Component Id="FdoWmsProviderComponent" Guid="97C77CE8-4F97-49E3-B6D8-E4A40DB02190" Bitness="$(var.Win64)">
               <File Id="WmsMessage" Checksum="yes" Source="$(var.MgSource)\Server\FDO\WMSMessage.dll" />
               <File Id="WmsOverrides" Checksum="yes" Source="$(var.MgSource)\Server\FDO\WMSOverrides.dll" />
               <File Id="WmsProvider" Checksum="yes" Source="$(var.MgSource)\Server\FDO\WMSProvider.dll" />
@@ -185,8 +185,8 @@
           </Component>
       </Directory>
     </DirectoryRef>
-    <Feature Id="FdoFeature" Title="FDO" Level="1" ConfigurableDirectory="FDOLOCATION" Description="!(loc.FdoDescription)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-        <ComponentRef Id="FdoComponent"/>
+    <Feature Id="FdoFeature" Title="FDO" Level="1" ConfigurableDirectory="FDOLOCATION" Description="!(loc.FdoDescription)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+        <ComponentRef Id="FdoComponent" />
         <ComponentRef Id="FdoComComponent" />
         <ComponentRef Id="FdoCoreCompnent" />
         <?if "$(var.Have_ArcSde)" = "yes" ?>
@@ -193,11 +193,11 @@
         <Feature Id="FdoArcSdeProviderFeature" Title="!(loc.ArcSdeProvider)" Level="1" Description="!(loc.ArcSdeProviderDesc)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
           <ComponentRef Id="FdoArcSdeComponent" />
         </Feature>
-        <?else ?>
+        <?else?>
         <Feature Id="FdoArcSdeProviderFeature" Title="!(loc.ArcSdeProvider)" Display="hidden" Level="1" Description="!(loc.ArcSdeProviderDesc)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
           <ComponentRef Id="FdoArcSdeComponent" />
         </Feature>
-        <?endif ?>
+        <?endif?>
         <Feature Id="FdoGdalProviderFeature" Title="!(loc.GdalProvider)" Level="1" Description="!(loc.GdalProviderDesc)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
             <ComponentRef Id="FdoGdalProviderComponent" />
         </Feature>

Added: sandbox/jng/installer_wix6/Libraries/MapGuide Server/HarvestFiles.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/HarvestFiles.wxs	                        (rev 0)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/HarvestFiles.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
+  <Fragment>
+    <ComponentGroup Id="group_SRVBINFILES">
+      <Component Id="MgServerExeComponent" Directory="SERVERBINLOCATION" Guid="*" Bitness="always64">
+        <File Id="MGSERVER_EXE" Source="$(var.MgSource)\Server\bin\mgserver.exe" KeyPath="yes" />
+      </Component>
+      <Files Include="$(var.MgSource)\Server\bin\*" Directory="SERVERBINLOCATION">
+        <Exclude Files="$(var.MgSource)\Server\bin\mgserver.exe" />
+      </Files>
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_SRVREPADMINFILES">
+      <Files Include="$(var.MgSource)\Server\RepositoryAdmin\**\*" Directory="SERVERROOTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_SRVRESOURCESFILES">
+      <Files Include="$(var.MgSource)\Server\Resources\**\*" Directory="SERVERROOTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_SRVSCHEMAFILES">
+      <Files Include="$(var.MgSource)\Server\Schema\**\*" Directory="SERVERROOTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_SRVWMSFILES">
+      <Files Include="$(var.MgSource)\Server\wms\*" Directory="SERVERWMSLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_SRVWFSFILES">
+      <Files Include="$(var.MgSource)\Server\wfs\*" Directory="SERVERWFSLOCATION" />
+    </ComponentGroup>
+  </Fragment>
+</Wix>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Server/InstallService.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/InstallService.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/InstallService.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,5 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Wix   xmlns="http://schemas.microsoft.com/wix/2006/wi">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
   <!-- 
     MGSERVER_EXE is a special identifiers assigned by Paraffin using
     settings defined in Features.xml
@@ -6,19 +5,9 @@
     -->
   <Fragment>
   
-    <CustomAction 
-      Execute="deferred" 
-      Return="ignore" 
-      Id="MgServerInstallCA" 
-      FileKey="MGSERVER_EXE"
-      ExeCommand="install "MapGuide Server [MG_VERSION_MAJOR_MINOR]"" />
+    <CustomAction Execute="deferred" Return="ignore" Id="MgServerInstallCA" ExeCommand="install "MapGuide Server [MG_VERSION_MAJOR_MINOR]"" FileRef="MGSERVER_EXE" />
 
-    <CustomAction
-      Execute="immediate"
-      Return="ignore"
-      Id="MgServerUninstallCA"
-      FileKey="MGSERVER_EXE"
-      ExeCommand="uninstall" />
+    <CustomAction Execute="immediate" Return="ignore" Id="MgServerUninstallCA" ExeCommand="uninstall" FileRef="MGSERVER_EXE" />
 
   </Fragment>
 </Wix>

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Server/Lang/MapGuideServer_en-US.wxl
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/Lang/MapGuideServer_en-US.wxl	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/Lang/MapGuideServer_en-US.wxl	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,51 +1,50 @@
-<?xml version="1.0" encoding="utf-8"?>
-<WixLocalization Culture="en-US" xmlns="http://schemas.microsoft.com/wix/2006/localization">
-	<String Id="ServerFeature">Server</String>
-    <String Id="ServerFeature_Description">MapGuide Server provides geographic analysis and rendering services.</String>
-    <String Id="ServerLogsFeature">Log Files</String>
-    <String Id="ServerLogsFeature_Description">You may choose a location to place the server logfiles.</String>
-    <String Id="ServerPackagesFeature">Packages</String>
-    <String Id="ServerPackagesFeature_Description">You may choose a location where the server will access Packages (*.mgp).</String>
-    <String Id="ServerRepositoriesFeature">Repositories</String>
-    <String Id="ServerRepositoriesFeature_Description">You may choose a parent location for the server repositories.</String>
-    <String Id="ServerRepositoriesLibraryFeature">Library</String>
-    <String Id="ServerRepositoriesLibraryFeature_Description">You may choose a location for the Library repository.</String>
-    <String Id="ServerRepositoriesSessionFeature">Session</String>
-    <String Id="ServerRepositoriesSessionFeature_Description">You may choose a location for the Session repository.</String>
-    <String Id="ServerRepositoriesSiteFeature">Site</String>
-    <String Id="ServerRepositoriesSiteFeature_Description">You may choose a location for the Site repository.</String>
-    <String Id="ServerRepositoriesTileCacheFeature">TileCache</String>
-    <String Id="ServerRepositoriesTileCacheFeature_Description">You may choose a location for the Tile Cache repository.</String>
-    <String Id="ServerTempFeature">Temp Directory</String>
-    <String Id="ServerTempFeature_Description">You may choose a location where MapGuide will store temporary files.</String>
+<WixLocalization Culture="en-US" xmlns="http://wixtoolset.org/schemas/v4/wxl">
+	<String Id="ServerFeature" Value="Server" />
+    <String Id="ServerFeature_Description" Value="MapGuide Server provides geographic analysis and rendering services." />
+    <String Id="ServerLogsFeature" Value="Log Files" />
+    <String Id="ServerLogsFeature_Description" Value="You may choose a location to place the server logfiles." />
+    <String Id="ServerPackagesFeature" Value="Packages" />
+    <String Id="ServerPackagesFeature_Description" Value="You may choose a location where the server will access Packages (*.mgp)." />
+    <String Id="ServerRepositoriesFeature" Value="Repositories" />
+    <String Id="ServerRepositoriesFeature_Description" Value="You may choose a parent location for the server repositories." />
+    <String Id="ServerRepositoriesLibraryFeature" Value="Library" />
+    <String Id="ServerRepositoriesLibraryFeature_Description" Value="You may choose a location for the Library repository." />
+    <String Id="ServerRepositoriesSessionFeature" Value="Session" />
+    <String Id="ServerRepositoriesSessionFeature_Description" Value="You may choose a location for the Session repository." />
+    <String Id="ServerRepositoriesSiteFeature" Value="Site" />
+    <String Id="ServerRepositoriesSiteFeature_Description" Value="You may choose a location for the Site repository." />
+    <String Id="ServerRepositoriesTileCacheFeature" Value="TileCache" />
+    <String Id="ServerRepositoriesTileCacheFeature_Description" Value="You may choose a location for the Tile Cache repository." />
+    <String Id="ServerTempFeature" Value="Temp Directory" />
+    <String Id="ServerTempFeature_Description" Value="You may choose a location where MapGuide will store temporary files." />
     <!-- FDO -->
-    <String Id="FdoDescription">FDO (Feature Data Objects) allows abstract access to many different data sources.</String>
-    <String Id="ArcSdeProvider">ArcSDE Provider</String>
-    <String Id="ArcSdeProviderDesc">Read/write access to an ESRI ArcSDE-based data store, using Oracle and SQL Server. (Requires external ArcSDE dlls)</String>
-    <String Id="GdalProvider">GDAL Provider</String>
-    <String Id="GdalProviderDesc">FDO Raster Provider for GDAL</String>
-    <String Id="KingOracleProvider">Oracle Provider</String>
-    <String Id="KingOracleProviderDesc">Read/write access to spatial and attribute data in an Oracle Spatial. (requires Oracle Instant Client libraries)</String>
-    <String Id="MySqlProvider">MySQL Provider</String>
-    <String Id="MySqlProviderDesc">FDO Provider for MySQL (requires libmysql.dll)</String>
-    <String Id="OdbcProvider">ODBC Provider</String>
-    <String Id="OdbcProviderDesc">FDO Provider for ODBC</String>
-    <String Id="OgrProvider">OGR Provider</String>
-    <String Id="OgrProviderDesc">FDO Access to OGR Data Sources</String>
-    <String Id="PostGisProvider">PostGIS Provider</String>
-    <String Id="PostGisProviderDesc">Read/write access to spatial and attribute data in a PostGIS database. (requires libpq.dll)</String>
-    <String Id="PostgreSqlProvider">PostgreSQL/PostGIS Provider</String>
-    <String Id="PostgreSqlProviderDesc">Read/write access to PostgreSQL/PostGIS-based data store. Supports spatial data types and spatial query operations.</String>
-    <String Id="SdfProvider">SDF Provider</String>
-    <String Id="SdfProviderDesc">Read/write access to Autodesk's spatial database format, a file-based personal geodatabase that supports multiple features/attributes, spatial indexing, and file-locking.</String>
-    <String Id="ShpProvider">SHP Provider</String>
-    <String Id="ShpProviderDesc">Read/write access to spatial and attribute data in an ESRI SHP file.</String>
-    <String Id="SltProvider">SQLite Provider</String>
-    <String Id="SltProviderDesc">The SQLite Provider</String>
-    <String Id="SqlServerProvider">MS SQL Server Spatial Provider</String>
-    <String Id="SqlServerProviderDesc">Read/Write access to feature data in a MS SQL Server spatially enabled data store. Supports geospatial and non-geospatial data and schema.</String>
-    <String Id="WfsProvider">WFS Provider</String>
-    <String Id="WfsProviderDesc">Read access to OGC WFS-based data store.</String>
-    <String Id="WmsProvider">WMS Provider</String>
-    <String Id="WmsProviderDesc">Read access to OGC WMS-based data store.</String>
+    <String Id="FdoDescription" Value="FDO (Feature Data Objects) allows abstract access to many different data sources." />
+    <String Id="ArcSdeProvider" Value="ArcSDE Provider" />
+    <String Id="ArcSdeProviderDesc" Value="Read/write access to an ESRI ArcSDE-based data store, using Oracle and SQL Server. (Requires external ArcSDE dlls)" />
+    <String Id="GdalProvider" Value="GDAL Provider" />
+    <String Id="GdalProviderDesc" Value="FDO Raster Provider for GDAL" />
+    <String Id="KingOracleProvider" Value="Oracle Provider" />
+    <String Id="KingOracleProviderDesc" Value="Read/write access to spatial and attribute data in an Oracle Spatial. (requires Oracle Instant Client libraries)" />
+    <String Id="MySqlProvider" Value="MySQL Provider" />
+    <String Id="MySqlProviderDesc" Value="FDO Provider for MySQL (requires libmysql.dll)" />
+    <String Id="OdbcProvider" Value="ODBC Provider" />
+    <String Id="OdbcProviderDesc" Value="FDO Provider for ODBC" />
+    <String Id="OgrProvider" Value="OGR Provider" />
+    <String Id="OgrProviderDesc" Value="FDO Access to OGR Data Sources" />
+    <String Id="PostGisProvider" Value="PostGIS Provider" />
+    <String Id="PostGisProviderDesc" Value="Read/write access to spatial and attribute data in a PostGIS database. (requires libpq.dll)" />
+    <String Id="PostgreSqlProvider" Value="PostgreSQL/PostGIS Provider" />
+    <String Id="PostgreSqlProviderDesc" Value="Read/write access to PostgreSQL/PostGIS-based data store. Supports spatial data types and spatial query operations." />
+    <String Id="SdfProvider" Value="SDF Provider" />
+    <String Id="SdfProviderDesc" Value="Read/write access to Autodesk's spatial database format, a file-based personal geodatabase that supports multiple features/attributes, spatial indexing, and file-locking." />
+    <String Id="ShpProvider" Value="SHP Provider" />
+    <String Id="ShpProviderDesc" Value="Read/write access to spatial and attribute data in an ESRI SHP file." />
+    <String Id="SltProvider" Value="SQLite Provider" />
+    <String Id="SltProviderDesc" Value="The SQLite Provider" />
+    <String Id="SqlServerProvider" Value="MS SQL Server Spatial Provider" />
+    <String Id="SqlServerProviderDesc" Value="Read/Write access to feature data in a MS SQL Server spatially enabled data store. Supports geospatial and non-geospatial data and schema." />
+    <String Id="WfsProvider" Value="WFS Provider" />
+    <String Id="WfsProviderDesc" Value="Read access to OGC WFS-based data store." />
+    <String Id="WmsProvider" Value="WMS Provider" />
+    <String Id="WmsProviderDesc" Value="Read access to OGC WMS-based data store." />
 </WixLocalization>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuide Server.wixproj
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuide Server.wixproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuide Server.wixproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,71 +1,37 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
+<Project Sdk="WixToolset.Sdk/6.0.2">
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
-    <ProductVersion>3.0</ProductVersion>
-    <ProjectGuid>{715e2d88-e822-4a9a-a5a2-dbb71cd9b320}</ProjectGuid>
-    <SchemaVersion>2.0</SchemaVersion>
+    <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
+    <Platform Condition="'$(Platform)' == ''">x64</Platform>
+    <EnableDefaultItems>false</EnableDefaultItems>
     <OutputName>MapGuideServer</OutputName>
     <OutputType>Library</OutputType>
-    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
     <Name>MapGuide Server</Name>
-    <MgRegKey Condition=" '$(MgRegKey)' == '' ">SOFTWARE\OSGeo\MapGuide</MgRegKey>
-    <MgSource Condition="('$(MgSource)'=='')">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgRegKey Condition="'$(MgRegKey)' == ''">SOFTWARE\OSGeo\MapGuide</MgRegKey>
+    <MgSource Condition="'$(MgSource)' == ''">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgSourceSanitized>$([System.String]::Copy('$(MgSource)').Replace('"', ''))</MgSourceSanitized>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
+    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
     <LibBindFiles>True</LibBindFiles>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>MgCulture=$(MgCulture);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
-    <LibBindFiles>True</LibBindFiles>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
-    <DefineConstants>MgCulture=$(MgCulture);MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
+    <DefineConstants>MgCulture=$(MgCulture);MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform);Have_ArcSde=$(Have_ArcSde)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
   <ItemGroup>
     <Compile Include="FDO.wxs" />
-    <Compile Include="FileIncludes\incBinFiles.wxs" />
-    <Compile Include="FileIncludes\incRepositoryAdminFiles.wxs" />
-    <Compile Include="FileIncludes\incResourcesFiles.wxs" />
-    <Compile Include="FileIncludes\incSchemaFiles.wxs" />
-    <Compile Include="FileIncludes\incWfsFiles.wxs" />
-    <Compile Include="FileIncludes\incWmsFiles.wxs" />
+    <Compile Include="HarvestFiles.wxs" />
     <Compile Include="InstallService.wxs" />
     <Compile Include="MapGuideServer.wxs" />
   </ItemGroup>
   <ItemGroup>
-    <Folder Include="FileIncludes" />
-    <Folder Include="Lang" />
-  </ItemGroup>
-  <ItemGroup>
     <EmbeddedResource Include="Lang\MapGuideServer_en-US.wxl" />
   </ItemGroup>
   <ItemGroup>
-    <WixExtension Include="WixUtilExtension">
-      <HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
-      <Name>WixUtilExtension</Name>
-    </WixExtension>
+    <PackageReference Include="WixToolset.Util.wixext" Version="6.0.2" />
   </ItemGroup>
-  <Import Project="$(WixTargetsPath)" />
-  <!--
-	To modify your build process, add your task inside one of the targets below and uncomment it.
-	Other similar extension points exist, see Wix.targets.
-	<Target Name="BeforeBuild">
-	</Target>
-	<Target Name="AfterBuild">
-	</Target>
-	-->
 </Project>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuideServer.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuideServer.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Server/MapGuideServer.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,230 +1,131 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix 
-  xmlns="http://schemas.microsoft.com/wix/2006/wi"
-  xmlns:util="http://schemas.microsoft.com/wix/UtilExtension" >
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
     <?if "$(var.MgPlatform)" = "x64" ?>
-      <?define Win64 = "yes" ?>
+      <?define Win64 = "always64" ?>
       <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-    <?else ?>
-       <?define Win64 = "no" ?>
+    <?else?>
+       <?define Win64 = "default" ?>
        <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-    <?endif ?>
+    <?endif?>
     <Fragment>
 
         <DirectoryRef Id="ServerParentFolder">
             <Directory Id="SERVERROOTLOCATION" Name="Server">
-                <Component Id="ServerPortConfigComponent" Win64="$(var.Win64)" Guid="68F33B54-F8C2-4BF5-AD25-3E549C73075C" Feature="ServerFeature">
+                <Component Id="ServerPortConfigComponent" Guid="68F33B54-F8C2-4BF5-AD25-3E549C73075C" Feature="ServerFeature" Bitness="$(var.Win64)">
                     <CreateFolder />
-                    <IniFile Id="INISETSERVERADMINPORT"
-                             Action="addLine"
-                             Directory="SERVERBINLOCATION"
-                             Key="Port"
-                             Name="serverconfig.ini"
-                             Section="AdministrativeConnectionProperties"
-                             Value="[MG_ADMIN_PORT]"/>
-                    <IniFile Id="INISETSERVERCLIENTPORT"
-                             Action="addLine"
-                             Directory="SERVERBINLOCATION"
-                             Key="Port"
-                             Name="serverconfig.ini"
-                             Section="ClientConnectionProperties"
-                             Value="[MG_CLIENT_PORT]"/>
-                    <IniFile Id="INISETSERVERSITEPORT"
-                             Action="addLine"
-                             Directory="SERVERBINLOCATION"
-                             Key="Port"
-                             Name="serverconfig.ini"
-                             Section="SiteConnectionProperties"
-                             Value="[MG_SITE_PORT]"/>
+                    <IniFile Id="INISETSERVERADMINPORT" Action="addLine" Directory="SERVERBINLOCATION" Key="Port" Name="serverconfig.ini" Section="AdministrativeConnectionProperties" Value="[MG_ADMIN_PORT]" />
+                    <IniFile Id="INISETSERVERCLIENTPORT" Action="addLine" Directory="SERVERBINLOCATION" Key="Port" Name="serverconfig.ini" Section="ClientConnectionProperties" Value="[MG_CLIENT_PORT]" />
+                    <IniFile Id="INISETSERVERSITEPORT" Action="addLine" Directory="SERVERBINLOCATION" Key="Port" Name="serverconfig.ini" Section="SiteConnectionProperties" Value="[MG_SITE_PORT]" />
                 </Component>
                 <Directory Id="SERVERBINLOCATION" Name="Bin" />
                 <Directory Id="SERVERLOGSLOCATION" Name="Logs">
-                    <Component Id="ServerLogsComponent" Win64="$(var.Win64)" Guid="B8107569-201D-4FAC-B1B1-BB3AC7207782" Feature="ServerLogsFeature">
+                    <Component Id="ServerLogsComponent" Guid="B8107569-201D-4FAC-B1B1-BB3AC7207782" Feature="ServerLogsFeature" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETLOGPATH"
-                                 Action="addLine"
-                                 Directory="SERVERBINLOCATION"
-                                 Key="LogsPath"
-                                 Name="serverconfig.ini"
-                                 Section="GeneralProperties"
-                                 Value="[SERVERLOGSLOCATION]" />
+                        <IniFile Id="INISETLOGPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="LogsPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[SERVERLOGSLOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERPACKAGESLOCATION" Name="Packages">
-                    <Component Id="ServerPackagesComponent" Win64="$(var.Win64)" Guid="58B60D26-35CB-4343-9854-EBC766C775B2" Feature="ServerPackagesFeature">
+                    <Component Id="ServerPackagesComponent" Guid="58B60D26-35CB-4343-9854-EBC766C775B2" Feature="ServerPackagesFeature" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETPACKAGESPATH"
-                                 Action="addLine"
-                                 Directory="SERVERBINLOCATION"
-                                 Key="PackagesPath"
-                                 Name="serverconfig.ini"
-                                 Section="ResourceServiceProperties"
-                                 Value="[SERVERPACKAGESLOCATION]" />
+                        <IniFile Id="INISETPACKAGESPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="PackagesPath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERPACKAGESLOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERREPOSITORIESLOCATION" Name="Repositories">
-                    <Component Id="ServerRepositoriesComponent" Win64="$(var.Win64)" Guid="2D89F4D5-4D13-434D-86DE-F34768DE46FA" Feature="ServerRepositoriesFeature">
+                    <Component Id="ServerRepositoriesComponent" Guid="2D89F4D5-4D13-434D-86DE-F34768DE46FA" Feature="ServerRepositoriesFeature" Bitness="$(var.Win64)">
                         <CreateFolder />
                     </Component>
                     <Directory Id="SERVERREPOSITORIESLIBRARYLOCATION" Name="Library">
-                        <Component Id="ServerRepositoriesLibraryComponent" Win64="$(var.Win64)" Guid="1ABDE417-D567-42cd-AC0F-78A7C444DB4A" Feature="ServerRepositoriesLibraryFeature">
+                        <Component Id="ServerRepositoriesLibraryComponent" Guid="1ABDE417-D567-42cd-AC0F-78A7C444DB4A" Feature="ServerRepositoriesLibraryFeature" Bitness="$(var.Win64)">
                             <CreateFolder />
-                            <IniFile Id="INISETREPOSITORIESLIBRARYPATH"
-                                     Action="addLine"
-                                     Directory="SERVERBINLOCATION"
-                                     Key="LibraryRepositoryPath"
-                                     Name="serverconfig.ini"
-                                     Section="ResourceServiceProperties"
-                                     Value="[SERVERREPOSITORIESLIBRARYLOCATION]" />
+                            <IniFile Id="INISETREPOSITORIESLIBRARYPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="LibraryRepositoryPath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERREPOSITORIESLIBRARYLOCATION]" />
                         </Component>
                         <Directory Id="SERVERREPOSITORIESLIBRARYDATAFILESLOCATION" Name="DataFiles">
-                            <Component Id="ServerRepositoriesLibraryDataFilesComponent" Win64="$(var.Win64)" Guid="12998202-7FEE-448B-9371-42193B12EC7E" Feature="ServerRepositoriesLibraryFeature">
+                            <Component Id="ServerRepositoriesLibraryDataFilesComponent" Guid="12998202-7FEE-448B-9371-42193B12EC7E" Feature="ServerRepositoriesLibraryFeature" Bitness="$(var.Win64)">
                                 <CreateFolder />
-                                <IniFile Id="INISETREPOSITORIESLIBRARYDATAFILESPATH"
-                                     Action="addLine"
-                                     Directory="SERVERBINLOCATION"
-                                     Key="LibraryResourceDataFilePath"
-                                     Name="serverconfig.ini"
-                                     Section="ResourceServiceProperties"
-                                     Value="[SERVERREPOSITORIESLIBRARYDATAFILESLOCATION]" />
+                                <IniFile Id="INISETREPOSITORIESLIBRARYDATAFILESPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="LibraryResourceDataFilePath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERREPOSITORIESLIBRARYDATAFILESLOCATION]" />
                             </Component>
                         </Directory>
                     </Directory>
                     <Directory Id="SERVERREPOSITORIESSESSIONLOCATION" Name="Session">
-                        <Component Id="ServerRepositoriesSessionComponent" Win64="$(var.Win64)" Guid="BB476765-5FA5-4CB0-AA63-1CCDE8867F7E" Feature="ServerRepositoriesSessionFeature">
-                            <CreateFolder/>
-                            <IniFile Id="INISETREPOSITORIESSESSIONPATH"
-                                   Action="addLine"
-                                   Directory="SERVERBINLOCATION"
-                                   Key="SessionRepositoryPath"
-                                   Name="serverconfig.ini"
-                                   Section="ResourceServiceProperties"
-                                   Value="[SERVERREPOSITORIESSESSIONLOCATION]" />
+                        <Component Id="ServerRepositoriesSessionComponent" Guid="BB476765-5FA5-4CB0-AA63-1CCDE8867F7E" Feature="ServerRepositoriesSessionFeature" Bitness="$(var.Win64)">
+                            <CreateFolder />
+                            <IniFile Id="INISETREPOSITORIESSESSIONPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="SessionRepositoryPath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERREPOSITORIESSESSIONLOCATION]" />
                         </Component>
                         <Directory Id="SERVERREPOSITORIESSESSIONDATAFILESLOCATION" Name="DataFiles">
-                            <Component Id="ServerRepositoriesSessionDataFilesComponent" Win64="$(var.Win64)" Guid="28C0B4C0-7516-43C5-94D4-8AAF4C0DB6EE"  Feature="ServerRepositoriesSessionFeature">
+                            <Component Id="ServerRepositoriesSessionDataFilesComponent" Guid="28C0B4C0-7516-43C5-94D4-8AAF4C0DB6EE" Feature="ServerRepositoriesSessionFeature" Bitness="$(var.Win64)">
                                 <CreateFolder />
-                                <IniFile Id="INISETREPOSITORIESSESSIONDATAFILESPATH"
-                                     Action="addLine"
-                                     Directory="SERVERBINLOCATION"
-                                     Key="SessionResourceDataFilePath"
-                                     Name="serverconfig.ini"
-                                     Section="ResourceServiceProperties"
-                                     Value="[SERVERREPOSITORIESSESSIONDATAFILESLOCATION]" />
+                                <IniFile Id="INISETREPOSITORIESSESSIONDATAFILESPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="SessionResourceDataFilePath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERREPOSITORIESSESSIONDATAFILESLOCATION]" />
                             </Component>
                         </Directory>
                     </Directory>
                     <Directory Id="SERVERREPOSITORIESSITELOCATION" Name="Site">
-                        <Component Id="ServerRepositoriesSiteComponent" Win64="$(var.Win64)" Guid="FAD5C161-00B2-4A26-A0B1-9F82DE049E0B" Feature="ServerRepositoriesSiteFeature">
+                        <Component Id="ServerRepositoriesSiteComponent" Guid="FAD5C161-00B2-4A26-A0B1-9F82DE049E0B" Feature="ServerRepositoriesSiteFeature" Bitness="$(var.Win64)">
                             <CreateFolder />
-                            <IniFile Id="INISETREPOSITORIESSITEPATH"
-                                   Action="addLine"
-                                   Directory="SERVERBINLOCATION"
-                                   Key="SiteRepositoryPath"
-                                   Name="serverconfig.ini"
-                                   Section="ResourceServiceProperties"
-                                   Value="[SERVERREPOSITORIESSITELOCATION]" />
+                            <IniFile Id="INISETREPOSITORIESSITEPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="SiteRepositoryPath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERREPOSITORIESSITELOCATION]" />
                         </Component>
                     </Directory>
                     <Directory Id="SERVERREPOSITORIESTILECACHELOCATION" Name="TileCache">
-                        <Component Id="ServerRepositoriesTileCacheComponent" Win64="$(var.Win64)" Guid="902988DA-F9F8-4827-9CC0-63756A4BEE2E" Feature="ServerRepositoriesTileCacheFeature">
+                        <Component Id="ServerRepositoriesTileCacheComponent" Guid="902988DA-F9F8-4827-9CC0-63756A4BEE2E" Feature="ServerRepositoriesTileCacheFeature" Bitness="$(var.Win64)">
                             <CreateFolder />
-                            <IniFile Id="INISETREPOSITORIESTILECACHEPATH"
-                                   Action="addLine"
-                                   Directory="SERVERBINLOCATION"
-                                   Key="TileCachePath"
-                                   Name="serverconfig.ini"
-                                   Section="TileServiceProperties"
-                                   Value="[SERVERREPOSITORIESTILECACHELOCATION]" />
+                            <IniFile Id="INISETREPOSITORIESTILECACHEPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="TileCachePath" Name="serverconfig.ini" Section="TileServiceProperties" Value="[SERVERREPOSITORIESTILECACHELOCATION]" />
                         </Component>
                     </Directory>
                 </Directory>
                 <Directory Id="SERVERRESOURCESLOCATION" Name="Resources">
-                    <Component Id="ServerResourcesComponent" Win64="$(var.Win64)" Guid="73D633D6-F358-4DED-A9A7-0A55B133F8EA">
+                    <Component Id="ServerResourcesComponent" Guid="73D633D6-F358-4DED-A9A7-0A55B133F8EA" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETRESOURCESPATH"
-                                 Action="addLine"
-                               Directory="SERVERBINLOCATION"
-                               Key="ResourcesPath"
-                               Name="serverconfig.ini"
-                               Section="GeneralProperties"
-                               Value="[SERVERRESOURCESLOCATION]" />
+                        <IniFile Id="INISETRESOURCESPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="ResourcesPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[SERVERRESOURCESLOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERSCHEMALOCATION" Name="Schema">
-                    <Component Id="ServerSchemaComponent" Win64="$(var.Win64)" Guid="4839A32B-CB9F-4FCC-8F40-0139C8E1FB3A">
+                    <Component Id="ServerSchemaComponent" Guid="4839A32B-CB9F-4FCC-8F40-0139C8E1FB3A" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETSCHEMAPATH"
-                               Action="addLine"
-                               Directory="SERVERBINLOCATION"
-                               Key="ResourceSchemaFilePath"
-                               Name="serverconfig.ini"
-                               Section="ResourceServiceProperties"
-                               Value="[SERVERSCHEMALOCATION]" />
+                        <IniFile Id="INISETSCHEMAPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="ResourceSchemaFilePath" Name="serverconfig.ini" Section="ResourceServiceProperties" Value="[SERVERSCHEMALOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERTEMPLOCATION" Name="Temp">
-                    <Component Id="ServerTempComponent" Win64="$(var.Win64)" Guid="8FEBC0F2-A1CA-43D5-B7EF-C11907B9A67D" Feature="ServerTempFeature">
+                    <Component Id="ServerTempComponent" Guid="8FEBC0F2-A1CA-43D5-B7EF-C11907B9A67D" Feature="ServerTempFeature" Bitness="$(var.Win64)">
                         <CreateFolder>
                           <util:PermissionEx User="Everyone" GenericAll="yes" />
                         </CreateFolder>
-                        <IniFile Id="INISETTEMPPATH"
-                                 Action="addLine"
-                                 Directory="SERVERBINLOCATION"
-                                 Key="TempPath"
-                                 Name="serverconfig.ini"
-                                 Section="GeneralProperties"
-                                 Value="[SERVERTEMPLOCATION]" />
+                        <IniFile Id="INISETTEMPPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="TempPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[SERVERTEMPLOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERWFSLOCATION" Name="Wfs">
-                    <Component Id="ServerWfsComponent" Win64="$(var.Win64)" Guid="A27AF9DB-C72E-477C-83BD-ECD40601C5FC">
+                    <Component Id="ServerWfsComponent" Guid="A27AF9DB-C72E-477C-83BD-ECD40601C5FC" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETWFSPATH"
-                             Action="addLine"
-                             Directory="SERVERBINLOCATION"
-                             Key="WfsDocumentPath"
-                             Name="serverconfig.ini"
-                             Section="GeneralProperties"
-                             Value="[SERVERWFSLOCATION]" />
+                        <IniFile Id="INISETWFSPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="WfsDocumentPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[SERVERWFSLOCATION]" />
                     </Component>
                 </Directory>
                 <Directory Id="SERVERWMSLOCATION" Name="Wms">
-                    <Component Id="ServerWmsComponent" Win64="$(var.Win64)" Guid="AB35AD62-B06B-4D1D-90DB-FC8A6B49078F">
+                    <Component Id="ServerWmsComponent" Guid="AB35AD62-B06B-4D1D-90DB-FC8A6B49078F" Bitness="$(var.Win64)">
                         <CreateFolder />
-                        <IniFile Id="INISETWMSPATH"
-                             Action="addLine"
-                             Directory="SERVERBINLOCATION"
-                             Key="WmsDocumentPath"
-                             Name="serverconfig.ini"
-                             Section="GeneralProperties"
-                             Value="[SERVERWMSLOCATION]" />
+                        <IniFile Id="INISETWMSPATH" Action="addLine" Directory="SERVERBINLOCATION" Key="WmsDocumentPath" Name="serverconfig.ini" Section="GeneralProperties" Value="[SERVERWMSLOCATION]" />
                     </Component>
                 </Directory>
             </Directory>
         </DirectoryRef>
 
-        <Feature Id="ServerFeature" Title="!(loc.ServerFeature)" Level="1" Description="!(loc.ServerFeature_Description)"  AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-            <FeatureRef Id="FdoFeature"/>
-            <Feature Id="ServerLogsFeature" Title="!(loc.ServerLogsFeature)" Level="1" ConfigurableDirectory="SERVERLOGSLOCATION" Description="!(loc.ServerLogsFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-            <Feature Id="ServerPackagesFeature" Title="!(loc.ServerPackagesFeature)" Level="1" ConfigurableDirectory="SERVERPACKAGESLOCATION" Description="!(loc.ServerPackagesFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-            <Feature Id="ServerRepositoriesFeature" Title="!(loc.ServerRepositoriesFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESLOCATION" Description="!(loc.ServerRepositoriesFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <Feature Id="ServerRepositoriesLibraryFeature" Title="!(loc.ServerRepositoriesLibraryFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESLIBRARYLOCATION" Description="!(loc.ServerRepositoriesLibraryFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-                <Feature Id="ServerRepositoriesSessionFeature" Title="!(loc.ServerRepositoriesSessionFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESSESSIONLOCATION" Description="!(loc.ServerRepositoriesSessionFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-                <Feature Id="ServerRepositoriesSiteFeature" Title="!(loc.ServerRepositoriesSiteFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESSITELOCATION" Description="!(loc.ServerRepositoriesSiteFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-                <Feature Id="ServerRepositoriesTileCacheFeature" Title="!(loc.ServerRepositoriesTileCacheFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESTILECACHELOCATION" Description="!(loc.ServerRepositoriesTileCacheFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
+        <Feature Id="ServerFeature" Title="!(loc.ServerFeature)" Level="1" Description="!(loc.ServerFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+            <FeatureRef Id="FdoFeature" />
+            <Feature Id="ServerLogsFeature" Title="!(loc.ServerLogsFeature)" Level="1" ConfigurableDirectory="SERVERLOGSLOCATION" Description="!(loc.ServerLogsFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+            <Feature Id="ServerPackagesFeature" Title="!(loc.ServerPackagesFeature)" Level="1" ConfigurableDirectory="SERVERPACKAGESLOCATION" Description="!(loc.ServerPackagesFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+            <Feature Id="ServerRepositoriesFeature" Title="!(loc.ServerRepositoriesFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESLOCATION" Description="!(loc.ServerRepositoriesFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no">
+                <Feature Id="ServerRepositoriesLibraryFeature" Title="!(loc.ServerRepositoriesLibraryFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESLIBRARYLOCATION" Description="!(loc.ServerRepositoriesLibraryFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+                <Feature Id="ServerRepositoriesSessionFeature" Title="!(loc.ServerRepositoriesSessionFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESSESSIONLOCATION" Description="!(loc.ServerRepositoriesSessionFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+                <Feature Id="ServerRepositoriesSiteFeature" Title="!(loc.ServerRepositoriesSiteFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESSITELOCATION" Description="!(loc.ServerRepositoriesSiteFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+                <Feature Id="ServerRepositoriesTileCacheFeature" Title="!(loc.ServerRepositoriesTileCacheFeature)" Level="1" ConfigurableDirectory="SERVERREPOSITORIESTILECACHELOCATION" Description="!(loc.ServerRepositoriesTileCacheFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
             </Feature>
-            <Feature Id="ServerTempFeature" Title="!(loc.ServerTempFeature)" Level="1" ConfigurableDirectory="SERVERTEMPLOCATION" Description="!(loc.ServerTempFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
-            <ComponentRef Id="ServerResourcesComponent"/>
-            <ComponentRef Id="ServerSchemaComponent"/>
-            <ComponentRef Id="ServerWfsComponent"/>
-            <ComponentRef Id="ServerWmsComponent"/>
-            <ComponentGroupRef Id="group_SRVBINFILES"/>
-            <ComponentGroupRef Id="group_SRVREPADMINFILES"/>
-            <ComponentGroupRef Id="group_SRVRESOURCESFILES"/>
-            <ComponentGroupRef Id="group_SRVSCHEMAFILES"/>
-            <ComponentGroupRef Id="group_SRVWFSFILES"/>
-            <ComponentGroupRef Id="group_SRVWMSFILES"/>
+            <Feature Id="ServerTempFeature" Title="!(loc.ServerTempFeature)" Level="1" ConfigurableDirectory="SERVERTEMPLOCATION" Description="!(loc.ServerTempFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
+            <ComponentRef Id="ServerResourcesComponent" />
+            <ComponentRef Id="ServerSchemaComponent" />
+            <ComponentRef Id="ServerWfsComponent" />
+            <ComponentRef Id="ServerWmsComponent" />
+            <ComponentGroupRef Id="group_SRVBINFILES" />
+            <ComponentGroupRef Id="group_SRVREPADMINFILES" />
+            <ComponentGroupRef Id="group_SRVRESOURCESFILES" />
+            <ComponentGroupRef Id="group_SRVSCHEMAFILES" />
+            <ComponentGroupRef Id="group_SRVWFSFILES" />
+            <ComponentGroupRef Id="group_SRVWMSFILES" />
         </Feature>
 
     </Fragment>

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Apache.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Apache.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Apache.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,5 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
     <!-- 
     HTTPD_EXE, TOMCAT_EXE and TOMCAT_SERVICE_BAT are special identifiers assigned by Paraffin using
     settings defined in Features.xml
@@ -7,19 +6,19 @@
     <?if "$(var.MgPlatform)" = "x64" ?>
         <!-- apache_actions.dll path -->
         <?define ACTION_DLL_PATH = "..\..\Custom\apache_actions\bin142_x64\apache_actions.dll" ?>
-    <?else ?>
+    <?else?>
         <!-- apache_actions.dll path -->
         <?define ACTION_DLL_PATH = "..\..\Custom\apache_actions\bin142_Win32\apache_actions.dll" ?>
-    <?endif ?>
+    <?endif?>
     <Fragment>
         <Binary Id="ApacheActions" SourceFile="$(var.ACTION_DLL_PATH)" />
         <CustomAction Id="UpdateApacheConfig.SetValues" Property="UpdateApacheConfig" Value="[WEBEXTENSIONSLOCATION];[APACHE_API_TYPE];[APACHE_PORT];[APACHELOCATION];[PHPLOCATION];[WEBROOTLOCATION];[VIRTUALDIR]" />
-        <CustomAction Id="UpdateApacheConfig" Return="check" BinaryKey="ApacheActions" Execute="deferred"  DllEntry="UpdateApacheConfig" />
-        <CustomAction Id="UpdatePhpIni.SetValues" Property="UpdatePhpIni" Value='[PHPLOCATION];2;[WEBTEMPLOCATION]' />
-        <CustomAction Id="UpdatePhpIni" Return="check" BinaryKey="ApacheActions" Execute="deferred" DllEntry="UpdatePhpIni" />
-        <CustomAction Id="RemoveApacheServiceCA" Execute="immediate" Return="ignore" FileKey="HTTPD_EXE" ExeCommand="-k uninstall -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" />
-        <CustomAction Id="InstallApacheServiceCA" Execute="deferred" Return="ignore" FileKey="HTTPD_EXE" ExeCommand="-k install -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" />
-        <CustomAction Id="StartApacheServiceCA" Execute="deferred" Return="ignore" FileKey="HTTPD_EXE" ExeCommand="-k start -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" />
+        <CustomAction Id="UpdateApacheConfig" Return="check" Execute="deferred" DllEntry="UpdateApacheConfig" BinaryRef="ApacheActions" />
+        <CustomAction Id="UpdatePhpIni.SetValues" Property="UpdatePhpIni" Value="[PHPLOCATION];2;[WEBTEMPLOCATION]" />
+        <CustomAction Id="UpdatePhpIni" Return="check" Execute="deferred" DllEntry="UpdatePhpIni" BinaryRef="ApacheActions" />
+        <CustomAction Id="RemoveApacheServiceCA" Execute="immediate" Return="ignore" ExeCommand="-k uninstall -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" FileRef="HTTPD_EXE" />
+        <CustomAction Id="InstallApacheServiceCA" Execute="deferred" Return="ignore" ExeCommand="-k install -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" FileRef="HTTPD_EXE" />
+        <CustomAction Id="StartApacheServiceCA" Execute="deferred" Return="ignore" ExeCommand="-k start -n "ApacheMapGuide[MG_VERSION_MAJOR_MINOR]"" FileRef="HTTPD_EXE" />
         <!--
         <CustomAction Id="RemoveTomcatServiceCA" Execute="immediate" Return="ignore" FileKey="TOMCAT_EXE" ExeCommand="//DS//TomcatMapGuide[MG_VERSION_MAJOR_MINOR]" />
         <CustomAction Id="InstallTomcatServiceCA" Execute="deferred" Return="ignore" FileKey="TOMCAT_SERVICE_BAT" ExeCommand="install TomcatMapGuide[MG_VERSION_MAJOR_MINOR]" />

Added: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/HarvestFiles.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/HarvestFiles.wxs	                        (rev 0)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/HarvestFiles.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
+  <Fragment>
+    <ComponentGroup Id="group_APACHEFILES">
+      <Component Id="ApacheHttpdExeComponent" Directory="APACHEBINLOCATION" Guid="*" Bitness="always64">
+        <File Id="HTTPD_EXE" Source="$(var.MgSource)\Web\Apache24\bin\httpd.exe" KeyPath="yes" />
+      </Component>
+      <Files Include="$(var.MgSource)\Web\Apache24\**\*" Directory="APACHELOCATION">
+        <Exclude Files="$(var.MgSource)\Web\Apache24\bin\httpd.exe" />
+      </Files>
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_PHPFILES">
+      <Files Include="$(var.MgSource)\Web\Php\**\*" Directory="PHPLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_TOMCATFILES">
+      <Files Include="$(var.MgSource)\Web\Tomcat\**\*" Directory="TOMCATLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_DEVHTTPSERVER">
+      <Component Id="DevHttpServerExeComponent" Directory="DEVHTTPSERVERLOCATION" Guid="*" Bitness="always64">
+        <File Id="DEV_HTTP_SERVER_EXE" Source="$(var.MgSource)\Web\DevHttpServer\MgDevHttpServer.exe" KeyPath="yes" />
+      </Component>
+      <Files Include="$(var.MgSource)\Web\DevHttpServer\**\*" Directory="DEVHTTPSERVERLOCATION">
+        <Exclude Files="$(var.MgSource)\Web\DevHttpServer\MgDevHttpServer.exe" />
+      </Files>
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_HELPFILES">
+      <Files Include="$(var.MgSource)\Web\www\help\**\*" Directory="HELPLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_PHPDEVGUIDEFILES">
+      <Files Include="$(var.MgSource)\Web\www\phpsamples\**\*" Directory="WEBROOTLOCATION" Subdirectory="phpsamples" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_JAVADEVGUIDEFILES">
+      <Files Include="$(var.MgSource)\Web\www\javasamples\**\*" Directory="WEBROOTLOCATION" Subdirectory="javasamples" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_DOTNETDEVGUIDEFILES">
+      <Files Include="$(var.MgSource)\Web\www\dotnetsamples\**\*" Directory="WEBROOTLOCATION" Subdirectory="dotnetsamples" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_PHPVIEWERSAMPLEFILES">
+      <Files Include="$(var.MgSource)\Web\www\phpviewersample\**\*" Directory="WEBROOTLOCATION" Subdirectory="phpviewersample" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_JAVAVIEWERSAMPLEFILES">
+      <Files Include="$(var.MgSource)\Web\www\javaviewersample\**\*" Directory="WEBROOTLOCATION" Subdirectory="javaviewersample" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_DOTNETVIEWERSAMPLEFILES">
+      <Files Include="$(var.MgSource)\Web\www\dotnetviewersample\**\*" Directory="WEBROOTLOCATION" Subdirectory="dotnetviewersample" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_OPENLAYERSSAMPLEFILES">
+      <Files Include="$(var.MgSource)\Web\www\clientsamples\**\*" Directory="WEBROOTLOCATION" Subdirectory="clientsamples" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPAGENTFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapagent\Resources\**\*" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.dll" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.exe" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.fcgi" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.js" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.so" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\COPYRIGHT" Directory="MAPAGENTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPAGENTTESTPAGEFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.html" Directory="MAPAGENTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\mapagent\*.php" Directory="MAPAGENTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERASPXFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapviewernet\**\*" Directory="MAPVIEWERNETLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERPHPFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapviewerphp\**\*" Directory="MAPVIEWERPHPLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERJSPFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapviewerjava\**\*" Directory="WEBROOTLOCATION" Subdirectory="mapviewerjava" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_FUSIONFILES">
+      <Files Include="$(var.MgSource)\Web\www\fusion\**\*" Directory="FUSIONLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_WEBROOTFILES">
+      <Files Include="$(var.MgSource)\Web\www\samples.php" Directory="WEBROOTLOCATION" />
+      <Files Include="$(var.MgSource)\Web\www\webconfig.ini" Directory="WEBROOTLOCATION" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERFILES">
+      <Files Include="$(var.MgSource)\Web\www\viewerfiles\**\*" Directory="WEBROOTLOCATION" Subdirectory="viewerfiles" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERSTDICONFILES">
+      <Files Include="$(var.MgSource)\Web\www\stdicons\**\*" Directory="WEBROOTLOCATION" Subdirectory="stdicons" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERSCHEMAREPORTFILES">
+      <Files Include="$(var.MgSource)\Web\www\schemareport\**\*" Directory="WEBROOTLOCATION" Subdirectory="schemareport" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERMAPADMINFILES">
+      <Files Include="$(var.MgSource)\Web\www\mapadmin\**\*" Directory="WEBROOTLOCATION" Subdirectory="mapadmin" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_MAPVIEWERLOCALIZEDFILES">
+      <Files Include="$(var.MgSource)\Web\www\localized\**\*" Directory="WEBROOTLOCATION" Subdirectory="localized" />
+    </ComponentGroup>
+
+    <ComponentGroup Id="group_WEBINFFILES">
+      <Files Include="$(var.MgSource)\Web\www\WEB-INF\**\*" Directory="WEBROOTLOCATION" Subdirectory="WEB-INF" />
+    </ComponentGroup>
+  </Fragment>
+</Wix>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/IIS7.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/IIS7.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/IIS7.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,7 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
     <Fragment>
 
     <!-- ************************* Custom Actions for IIS7 INSTALL ***************************************** -->
@@ -11,121 +8,98 @@
     <!-- IIS7 Base MapGuide INSTALL -->
 
     <!-- Create the application pool -->
-    <CustomAction Id="MapGuideIIS7_I_CreateAppPool_Cmd" Property="MapGuideIIS7_I_CreateAppPool" Execute="immediate"
-        Value="[AppCmd] add apppool /name:"[APP_POOL_NAME]" /managedRuntimeVersion:"[ASPNETVERSION]"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateAppPool" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateAppPool_Cmd" Property="MapGuideIIS7_I_CreateAppPool" Execute="immediate" Value="[AppCmd] add apppool /name:"[APP_POOL_NAME]" /managedRuntimeVersion:"[ASPNETVERSION]"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateAppPool" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set up FastCGI -->
-    <CustomAction Id="MapGuideIIS7_I_CreateFastCgi_Cmd" Property="MapGuideIIS7_I_CreateFastCgi" Execute="immediate"
-            Value="[AppCmd] set config /section:system.webServer/fastCGI "/+[\[]fullPath='[PHPLOCATION]php-cgi.exe'[\]]"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateFastCgi" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateFastCgi_Cmd" Property="MapGuideIIS7_I_CreateFastCgi" Execute="immediate" Value="[AppCmd] set config /section:system.webServer/fastCGI "/+[\[]fullPath='[PHPLOCATION]php-cgi.exe'[\]]"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateFastCgi" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the application pool's properties -->
-    <CustomAction Id="MapGuideIIS7_I_SetAppPoolProp_Cmd" Property="MapGuideIIS7_I_SetAppPoolProp" Execute="immediate"
-        Value="[AppCmd] set config /section:applicationPools /[\[]name='[APP_POOL_NAME]'[\]].processModel.idleTimeout:00:00:00  /[\[]name='[APP_POOL_NAME]'[\]].recycling.disallowOverlappingRotation:True" />
-    <CustomAction Id="MapGuideIIS7_I_SetAppPoolProp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetAppPoolProp_Cmd" Property="MapGuideIIS7_I_SetAppPoolProp" Execute="immediate" Value="[AppCmd] set config /section:applicationPools /[\[]name='[APP_POOL_NAME]'[\]].processModel.idleTimeout:00:00:00  /[\[]name='[APP_POOL_NAME]'[\]].recycling.disallowOverlappingRotation:True" />
+    <CustomAction Id="MapGuideIIS7_I_SetAppPoolProp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock handlers at the server level -->
-    <CustomAction Id="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" Property="MapGuideIIS7_I_UnlockSrvHandlers" Execute="immediate"
-        Value="[AppCmd] unlock config /section:handlers" />
-    <CustomAction Id="MapGuideIIS7_I_UnlockSrvHandlers" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_UnlockSrvHandlers_Cmd" Property="MapGuideIIS7_I_UnlockSrvHandlers" Execute="immediate" Value="[AppCmd] unlock config /section:handlers" />
+    <CustomAction Id="MapGuideIIS7_I_UnlockSrvHandlers" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock handlers at the website level -->
-    <CustomAction Id="MapGuideIIS7_I_UnlockSiteHandlers_Cmd" Property="MapGuideIIS7_I_UnlockSiteHandlers" Execute="immediate"
-        Value="[AppCmd] unlock config "[MG_WEBSITE]" /section:handlers" />
-    <CustomAction Id="MapGuideIIS7_I_UnlockSiteHandlers" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_UnlockSiteHandlers_Cmd" Property="MapGuideIIS7_I_UnlockSiteHandlers" Execute="immediate" Value="[AppCmd] unlock config "[MG_WEBSITE]" /section:handlers" />
+    <CustomAction Id="MapGuideIIS7_I_UnlockSiteHandlers" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Create the "mapguide" virtual directory / app -->
-    <CustomAction Id="MapGuideIIS7_I_CreateMapGuideApp_Cmd" Property="MapGuideIIS7_I_CreateMapGuideApp" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]" /physicalPath:"[WEBEXTENSIONSLOCATION]www"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateMapGuideApp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateMapGuideApp_Cmd" Property="MapGuideIIS7_I_CreateMapGuideApp" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]" /physicalPath:"[WEBEXTENSIONSLOCATION]www"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateMapGuideApp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- ASP.net compatibility setting to allow selection XML strings to be passed in .net -->
-    <CustomAction Id="MapGuideIIS7_I_SelectXmlCompat_Cmd" Property="MapGuideIIS7_I_SelectXmlCompat" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:system.web/httpRuntime /requestValidationMode:2.0" />
-    <CustomAction Id="MapGuideIIS7_I_SelectXmlCompat" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SelectXmlCompat_Cmd" Property="MapGuideIIS7_I_SelectXmlCompat" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:system.web/httpRuntime /requestValidationMode:2.0" />
+    <CustomAction Id="MapGuideIIS7_I_SelectXmlCompat" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set up the PHP script mapping to FastCGI -->
-    <CustomAction Id="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd" Property="MapGuideIIS7_I_CreatePhpScriptMapping" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:handlers /+[\[]name='"[PHP_FCGI_HANDLER_NAME]"',path='*.php',verb='*',scriptProcessor='"[PHPLOCATION]php-cgi.exe"',modules='FastCgiModule',resourceType='File',requireAccess='Script'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_CreatePhpScriptMapping" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreatePhpScriptMapping_Cmd" Property="MapGuideIIS7_I_CreatePhpScriptMapping" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:handlers /+[\[]name='"[PHP_FCGI_HANDLER_NAME]"',path='*.php',verb='*',scriptProcessor='"[PHPLOCATION]php-cgi.exe"',modules='FastCgiModule',resourceType='File',requireAccess='Script'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_CreatePhpScriptMapping" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Create the MapAgent application -->
-    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentApp_Cmd" Property="MapGuideIIS7_I_CreateMapAgentApp" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapagent" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapagent"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentApp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentApp_Cmd" Property="MapGuideIIS7_I_CreateMapAgentApp" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapagent" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapagent"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentApp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock handlers at the MapAgent level -->
-    <CustomAction Id="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd" Property="MapGuideIIS7_I_SetMapAgentHandlerAccess" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /section:handlers /accessPolicy:Read,Script,Execute" />
-    <CustomAction Id="MapGuideIIS7_I_SetMapAgentHandlerAccess" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetMapAgentHandlerAccess_Cmd" Property="MapGuideIIS7_I_SetMapAgentHandlerAccess" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /section:handlers /accessPolicy:Read,Script,Execute" />
+    <CustomAction Id="MapGuideIIS7_I_SetMapAgentHandlerAccess" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set up the MapAgent script mapping -->
-    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd" Property="MapGuideIIS7_I_CreateMapAgentScriptHandling" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /section:handlers /+[\[]name='"[MAPAGENT_ISAPI_NAME]"',path='mapagent.fcgi',verb='*',scriptProcessor='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"',modules='IsapiModule'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentScriptHandling" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentScriptHandling_Cmd" Property="MapGuideIIS7_I_CreateMapAgentScriptHandling" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /section:handlers /+[\[]name='"[MAPAGENT_ISAPI_NAME]"',path='mapagent.fcgi',verb='*',scriptProcessor='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"',modules='IsapiModule'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_CreateMapAgentScriptHandling" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Allow access to the MapAgent ISAPI -->
-    <CustomAction Id="MapGuideIIS7_I_EnableMapAgentExtension_Cmd" Property="MapGuideIIS7_I_EnableMapAgentExtension" Execute="immediate"
-        Value="[AppCmd] set config /section:isapiCgiRestriction /+[\[]path='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"',allowed='True',description='"[MAPAGENT_ISAPI_NAME]"'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_EnableMapAgentExtension" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_EnableMapAgentExtension_Cmd" Property="MapGuideIIS7_I_EnableMapAgentExtension" Execute="immediate" Value="[AppCmd] set config /section:isapiCgiRestriction /+[\[]path='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"',allowed='True',description='"[MAPAGENT_ISAPI_NAME]"'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_EnableMapAgentExtension" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set App Pool to 32-bit mode (applies to 64-bit windows) -->
-    <CustomAction Id="MapGuideIIS7_I_Set32BitAppPool_Cmd" Property="MapGuideIIS7_I_Set32BitAppPool" Execute="immediate"
-        Value="[AppCmd] set apppool /apppool.name:"[APP_POOL_NAME]" /enable32BitAppOnWin64:true" />
-    <CustomAction Id="MapGuideIIS7_I_Set32BitAppPool" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no" />
+    <CustomAction Id="MapGuideIIS7_I_Set32BitAppPool_Cmd" Property="MapGuideIIS7_I_Set32BitAppPool" Execute="immediate" Value="[AppCmd] set apppool /apppool.name:"[APP_POOL_NAME]" /enable32BitAppOnWin64:true" />
+    <CustomAction Id="MapGuideIIS7_I_Set32BitAppPool" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
         
     <!-- Make the MapGuide application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd" Property="MapGuideIIS7_I_AssignMapGuideAppPool" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignMapGuideAppPool" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignMapGuideAppPool_Cmd" Property="MapGuideIIS7_I_AssignMapGuideAppPool" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignMapGuideAppPool" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the MapAgent application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd" Property="MapGuideIIS7_I_AssignMapAgentAppPool" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignMapAgentAppPool" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignMapAgentAppPool_Cmd" Property="MapGuideIIS7_I_AssignMapAgentAppPool" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapagent" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignMapAgentAppPool" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock the httpErrors configuration section for the entire server -->
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsMain" Execute="immediate"
-        Value="[AppCmd] unlock config /section:httpErrors" />
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMain" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMain_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsMain" Execute="immediate" Value="[AppCmd] unlock config /section:httpErrors" />
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMain" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock the httpErrors configuration section for the web site -->
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsWebSite" Execute="immediate"
-        Value="[AppCmd] unlock config "[MG_WEBSITE]" /section:httpErrors" />
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsWebSite" Execute="immediate" Value="[AppCmd] unlock config "[MG_WEBSITE]" /section:httpErrors" />
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsWebSite" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Unlock the httpErrors configuration section for the MapGuide application -->
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" Execute="immediate"
-        Value="[AppCmd] unlock config "[MG_WEBSITE]/[VIRTUALDIR]" /section:httpErrors" />
-    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide_Cmd" Property="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" Execute="immediate" Value="[AppCmd] unlock config "[MG_WEBSITE]/[VIRTUALDIR]" /section:httpErrors" />
+    <CustomAction Id="MapGuideIIS7_I_UnlockHttpErrorsMapGuide" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Reset the 401 error handlers to their default undecorated responses -->
-    <CustomAction Id="MapGuideIIS7_I_Reset401Handler_Cmd" Property="MapGuideIIS7_I_Reset401Handler" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:httpErrors /-[\[]statusCode='401'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_Reset401Handler" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_Reset401Handler_Cmd" Property="MapGuideIIS7_I_Reset401Handler" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]" /section:httpErrors /-[\[]statusCode='401'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_Reset401Handler" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Add a MIME type for JSON -->
-    <CustomAction Id="MapGuideIIS7_I_AddJsonMime_Cmd" Property="MapGuideIIS7_I_AddJsonMime" Execute="immediate"
-        Value="[AppCmd] set config /section:staticContent /+"[\[]fileExtension='.json',mimeType='application/json'[\]]"" />
-    <CustomAction Id="MapGuideIIS7_I_AddJsonMime" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AddJsonMime_Cmd" Property="MapGuideIIS7_I_AddJsonMime" Execute="immediate" Value="[AppCmd] set config /section:staticContent /+"[\[]fileExtension='.json',mimeType='application/json'[\]]"" />
+    <CustomAction Id="MapGuideIIS7_I_AddJsonMime" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- ************************* IIS7 PHP Viewer INSTALL ***************************************** -->
 
     <!-- Create the application / virtual directory pointing mapviewerajax to mapviewerphp  -->
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerPhp_Cmd" Property="MapGuideIIS7_I_CreateViewerPhp" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewerajax" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewerphp"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerPhp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerPhp_Cmd" Property="MapGuideIIS7_I_CreateViewerPhp" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewerajax" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewerphp"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerPhp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the default document for mapviewerajax to ajaxviewer.php -->
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocPhp_Cmd" Property="MapGuideIIS7_I_SetViewerDocPhp" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /section:defaultDocument /+files.[\[]value='ajaxviewer.php'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocPhp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocPhp_Cmd" Property="MapGuideIIS7_I_SetViewerDocPhp" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /section:defaultDocument /+files.[\[]value='ajaxviewer.php'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocPhp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the MapAgent application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolPhp_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolPhp" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolPhp" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolPhp_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolPhp" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolPhp" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- 
     PHP viewer/devguide samples fortunately do not require explicit set up in IIS7, as they should inherit
@@ -135,64 +109,52 @@
     <!-- ************************* IIS7 ASP.Net Viewer INSTALL ***************************************** -->
 
     <!-- Create the MapAgent application -->
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerNet_Cmd" Property="MapGuideIIS7_I_CreateViewerNet" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewerajax" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewernet"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerNet_Cmd" Property="MapGuideIIS7_I_CreateViewerNet" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewerajax" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewernet"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the default document for mapviewerajax to ajaxviewer.aspx -->
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocNet" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /section:defaultDocument /+files.[\[]value='ajaxviewer.aspx'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocNet" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /section:defaultDocument /+files.[\[]value='ajaxviewer.aspx'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the MapAgent application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolNet" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolNet" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Create the mapviewernet application -->
-    <CustomAction Id="MapGuideIIS7_I_CreateMapViewerNet_Cmd" Property="MapGuideIIS7_I_CreateMapViewerNet" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewernet" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewernet"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateMapViewerNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateMapViewerNet_Cmd" Property="MapGuideIIS7_I_CreateMapViewerNet" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/mapviewernet" /physicalPath:"[WEBEXTENSIONSLOCATION]www\mapviewernet"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateMapViewerNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the default document for mapviewernet to ajaxviewer.aspx -->
-    <CustomAction Id="MapGuideIIS7_I_SetMapViewerDocNet_Cmd" Property="MapGuideIIS7_I_SetMapViewerDocNet" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet" /section:defaultDocument /+files.[\[]value='ajaxviewer.aspx'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_SetMapViewerDocNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetMapViewerDocNet_Cmd" Property="MapGuideIIS7_I_SetMapViewerDocNet" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet" /section:defaultDocument /+files.[\[]value='ajaxviewer.aspx'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_SetMapViewerDocNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the mapviewernet application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd" Property="MapGuideIIS7_I_AssignMapViewerAppPoolNet" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet_Cmd" Property="MapGuideIIS7_I_AssignMapViewerAppPoolNet" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignMapViewerAppPoolNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Create the dotnetviewersample application -->
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerSampleNet_Cmd" Property="MapGuideIIS7_I_CreateViewerSampleNet" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/dotnetviewersample" /physicalPath:"[WEBEXTENSIONSLOCATION]www\dotnetviewersample"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerSampleNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerSampleNet_Cmd" Property="MapGuideIIS7_I_CreateViewerSampleNet" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/dotnetviewersample" /physicalPath:"[WEBEXTENSIONSLOCATION]www\dotnetviewersample"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerSampleNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the default document for dotnetviewersample to ajaxviewersample.aspx -->
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocViewerSampleNet" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample" /section:defaultDocument /+files.[\[]value='ajaxviewersample.aspx'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocViewerSampleNet" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample" /section:defaultDocument /+files.[\[]value='ajaxviewersample.aspx'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocViewerSampleNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the dotnetviewersample application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolViewerSampleNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Create the dotnetsamples application -->
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" Execute="immediate"
-        Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/dotnetsamples" /physicalPath:"[WEBEXTENSIONSLOCATION]www\dotnetsamples"" />
-    <CustomAction Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" Execute="immediate" Value="[AppCmd] add app /site.name:"[MG_WEBSITE]" /path:"/[VIRTUALDIR]/dotnetsamples" /physicalPath:"[WEBEXTENSIONSLOCATION]www\dotnetsamples"" />
+    <CustomAction Id="MapGuideIIS7_I_CreateViewerDevGuideSamplesNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Set the default document for dotnetsamples to main.aspx -->
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" Execute="immediate"
-        Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples" /section:defaultDocument /+files.[\[]value='main.aspx'[\]]" />
-    <CustomAction Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" Execute="immediate" Value="[AppCmd] set config "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples" /section:defaultDocument /+files.[\[]value='main.aspx'[\]]" />
+    <CustomAction Id="MapGuideIIS7_I_SetViewerDocDevGuideSamplesNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Make the dotnetsamples application run in the MapGuide app pool -->
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" Execute="immediate"
-        Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples" /applicationPool:"[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet_Cmd" Property="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" Execute="immediate" Value="[AppCmd] set app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples" /applicationPool:"[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_I_AssignViewerAppPoolDevGuideSamplesNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
         
     <!-- ************************* IIS7 All Features UNINSTALL ***************************************** -->
 
@@ -206,44 +168,36 @@
     -->
 
     <!-- Remove entry in ISAPI/CGI Restrictions for the MapAgent -->
-    <CustomAction Id="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd" Property="MapGuideIIS7_U_ClearMapAgentRestriction" Execute="immediate"
-        Value="[AppCmd] set config /section:isapiCgiRestriction /-[\[]path='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"'[\]]" />
-    <CustomAction Id="MapGuideIIS7_U_ClearMapAgentRestriction" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_ClearMapAgentRestriction_Cmd" Property="MapGuideIIS7_U_ClearMapAgentRestriction" Execute="immediate" Value="[AppCmd] set config /section:isapiCgiRestriction /-[\[]path='"[WEBEXTENSIONSLOCATION]www\mapagent\isapi_MapAgent.dll"'[\]]" />
+    <CustomAction Id="MapGuideIIS7_U_ClearMapAgentRestriction" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove MapViewerAjax application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveViewer_Cmd" Property="MapGuideIIS7_U_RemoveViewer" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveViewer" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveViewer_Cmd" Property="MapGuideIIS7_U_RemoveViewer" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewerajax"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveViewer" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove MapViewerNet application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveViewerNet_Cmd" Property="MapGuideIIS7_U_RemoveViewerNet" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveViewerNet" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveViewerNet_Cmd" Property="MapGuideIIS7_U_RemoveViewerNet" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapviewernet"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveViewerNet" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove dotnetsamples application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetSamples_Cmd" Property="MapGuideIIS7_U_RemoveDotNetSamples" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetSamples" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetSamples_Cmd" Property="MapGuideIIS7_U_RemoveDotNetSamples" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetsamples"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetSamples" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove dotnetviewersample application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd" Property="MapGuideIIS7_U_RemoveDotNetViewerSample" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetViewerSample" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetViewerSample_Cmd" Property="MapGuideIIS7_U_RemoveDotNetViewerSample" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/dotnetviewersample"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveDotNetViewerSample" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
         
     <!-- Remove MapAgent application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveMapAgent_Cmd" Property="MapGuideIIS7_U_RemoveMapAgent" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapagent"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveMapAgent" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveMapAgent_Cmd" Property="MapGuideIIS7_U_RemoveMapAgent" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]/mapagent"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveMapAgent" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove MapGuide application -->
-    <CustomAction Id="MapGuideIIS7_U_RemoveMapGuide_Cmd" Property="MapGuideIIS7_U_RemoveMapGuide" Execute="immediate"
-        Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]"" />
-    <CustomAction Id="MapGuideIIS7_U_RemoveMapGuide" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_RemoveMapGuide_Cmd" Property="MapGuideIIS7_U_RemoveMapGuide" Execute="immediate" Value="[AppCmd] delete app "[MG_WEBSITE]/[VIRTUALDIR]"" />
+    <CustomAction Id="MapGuideIIS7_U_RemoveMapGuide" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
     <!-- Remove MapGuide App Pool -->
-    <CustomAction Id="MapGuideIIS7_U_DeleteAppPool_Cmd" Property="MapGuideIIS7_U_DeleteAppPool" Execute="immediate"
-        Value="[AppCmd] delete apppool "[APP_POOL_NAME]"" />
-    <CustomAction Id="MapGuideIIS7_U_DeleteAppPool" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/>
+    <CustomAction Id="MapGuideIIS7_U_DeleteAppPool_Cmd" Property="MapGuideIIS7_U_DeleteAppPool" Execute="immediate" Value="[AppCmd] delete apppool "[APP_POOL_NAME]"" />
+    <CustomAction Id="MapGuideIIS7_U_DeleteAppPool" DllEntry="WixQuietExec" Execute="deferred" Return="ignore" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
 
   </Fragment>
 </Wix>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Lang/MapGuideWebExtensions_en-US.wxl
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Lang/MapGuideWebExtensions_en-US.wxl	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Lang/MapGuideWebExtensions_en-US.wxl	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,68 +1,67 @@
-<?xml version="1.0" encoding="utf-8"?>
-<WixLocalization Culture="en-US" xmlns="http://schemas.microsoft.com/wix/2006/localization">
-	<String Id="WebExtensionsFeature">Web</String>
-    <String Id="WebExtensionsFeature_Description">MapGuide Web provides the components needed to serve MapGuide resources over the internet.</String>
-    <String Id="WebExtApacheFeature">Apache</String>
-    <String Id="WebExtApacheFeature_Description">A bundled version of Apache with MapGuide enabled, running on port [APACHE_PORT].</String>
-    <String Id="WebExtPhpFeature">PHP</String>
-    <String Id="WebExtPhpFeature_Description">A bundled version of PHP with MapGuide enabled.</String>
-    <String Id="WebExtTomcatFeature">Tomcat</String>
-    <String Id="WebExtTomcatFeature_Description">A bundled version of Tomcat with MapGuide enabled.</String>
-    <String Id="WebDevHttpServerFeature">Development HTTP Server</String>
-    <String Id="WebDevHttpServerFeature_Description">A simple development HTTP server to easily spin up a mapagent or static HTML/JS content for development/testing without IIS or Apache</String>
-    <String Id="WebExtHelpFeature">API Help</String>
-    <String Id="WebExtHelpFeature_Description">Web Extension API documentation</String>
-    <String Id="WebExtMapViewerFeature">Map Viewer files</String>
-    <String Id="WebExtMapViewerFeature_Description">The support files for the map viewer, language independent.</String>
-    <String Id="WebExtMapViewerPHPFeature">PHP Viewer</String>
-    <String Id="WebExtMapViewerPHPFeature_Description">The PHP version of the map viewer.</String>
-    <String Id="WebExtMapViewerJSPFeature">JSP Viewer</String>
-    <String Id="WebExtMapViewerJSPFeature_Description">The JSP version of the map viewer.</String>
-    <String Id="WebExtMapViewerASPXFeature">.NET Viewer</String>
-    <String Id="WebExtMapViewerASPXFeature_Description">The .NET version of the map viewer.</String>
-    <String Id="WebExtSamplesFeature">Samples</String>
-    <String Id="WebExtSamplesFeature_Description">Sample code and data</String>
-    <String Id="WebExtPhpDevGuideSamplesFeature">Developer's Guide Sample Code (PHP)</String>
-    <String Id="WebExtPhpDevGuideSamplesFeature_Description">PHP sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data.</String>
-    <String Id="WebExtJavaDevGuideSamplesFeature">Developer's Guide Sample Code (Java)</String>
-    <String Id="WebExtJavaDevGuideSamplesFeature_Description">Java sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data.</String>
-    <String Id="WebExtDotNetDevGuideSamplesFeature">Developer's Guide Sample Code (.net)</String>
-    <String Id="WebExtDotNetDevGuideSamplesFeature_Description">.net sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data.</String>
-    <String Id="WebExtPhpViewerSampleFeature">Viewer Sample (PHP)</String>
-    <String Id="WebExtPhpViewerSampleFeature_Description">Viewer Sample code (PHP)</String>
-    <String Id="WebExtJavaViewerSampleFeature">Viewer Sample (Java)</String>
-    <String Id="WebExtJavaViewerSampleFeature_Description">Viewer Sample code (Java)</String>
-    <String Id="WebExtDotNetViewerSampleFeature">Viewer Sample (.net)</String>
-    <String Id="WebExtDotNetViewerSampleFeature_Description">Viewer Sample code (.net)</String>
-    <String Id="WebExtOpenLayersSampleFeature">OpenLayers Samples</String>
-    <String Id="WebExtOpenLayersSampleFeature_Description">Samples demonstrating OpenLayers integration with MapGuide</String>
-    <String Id="WebLocalizedFeature">Localization Files</String>
-    <String Id="WebLocalizedFeature_Description">Localization files for the web tier</String>
-    <String Id="WebFusionFeature">Fusion</String>
-    <String Id="WebFusionFeature_Description">Fusion is a web-mapping application framework, allowing non-spatial web developers to build rich mapping applications quickly and easily</String>
-    <String Id="WebMapAdminFeature">Site Administrator</String>
-    <String Id="WebMapAdminFeature_Description">The MapGuide Site Administrator is a web-based administrative front-end for the MapGuide Server</String>
-    <String Id="WebMapAgentFeature">Map Agent</String>
-    <String Id="WebMapAgentFeature_Description">The map agent allows client applications to communicate with MapGuide over HTTP</String>
-    <String Id="WebSchemaReportFeature">Schema Report</String>
-    <String Id="WebSchemaReportFeature_Description">The schema report allows the user to describe and preview MapGuide feature sources</String>
-    <String Id="WebStdIconsFeature">Standard Icons</String>
-    <String Id="WebStdIconsFeature_Description">Icons for the AJAX viewer</String>
-    <String Id="WebTempFeature">Temp Directory</String>
-    <String Id="WebTempFeature_Description">You may choose a location where MapGuide will store temporary files.</String>
-    <String Id="WebExtMapAgentTestPagesFeature">mapagent test pages</String>
-    <String Id="WebExtMapAgentTestPagesFeature_Description">mapagent test harness web pages and scripts</String>
+<WixLocalization Culture="en-US" xmlns="http://wixtoolset.org/schemas/v4/wxl">
+	<String Id="WebExtensionsFeature" Value="Web" />
+    <String Id="WebExtensionsFeature_Description" Value="MapGuide Web provides the components needed to serve MapGuide resources over the internet." />
+    <String Id="WebExtApacheFeature" Value="Apache" />
+    <String Id="WebExtApacheFeature_Description" Value="A bundled version of Apache with MapGuide enabled, running on port [APACHE_PORT]." />
+    <String Id="WebExtPhpFeature" Value="PHP" />
+    <String Id="WebExtPhpFeature_Description" Value="A bundled version of PHP with MapGuide enabled." />
+    <String Id="WebExtTomcatFeature" Value="Tomcat" />
+    <String Id="WebExtTomcatFeature_Description" Value="A bundled version of Tomcat with MapGuide enabled." />
+    <String Id="WebDevHttpServerFeature" Value="Development HTTP Server" />
+    <String Id="WebDevHttpServerFeature_Description" Value="A simple development HTTP server to easily spin up a mapagent or static HTML/JS content for development/testing without IIS or Apache" />
+    <String Id="WebExtHelpFeature" Value="API Help" />
+    <String Id="WebExtHelpFeature_Description" Value="Web Extension API documentation" />
+    <String Id="WebExtMapViewerFeature" Value="Map Viewer files" />
+    <String Id="WebExtMapViewerFeature_Description" Value="The support files for the map viewer, language independent." />
+    <String Id="WebExtMapViewerPHPFeature" Value="PHP Viewer" />
+    <String Id="WebExtMapViewerPHPFeature_Description" Value="The PHP version of the map viewer." />
+    <String Id="WebExtMapViewerJSPFeature" Value="JSP Viewer" />
+    <String Id="WebExtMapViewerJSPFeature_Description" Value="The JSP version of the map viewer." />
+    <String Id="WebExtMapViewerASPXFeature" Value=".NET Viewer" />
+    <String Id="WebExtMapViewerASPXFeature_Description" Value="The .NET version of the map viewer." />
+    <String Id="WebExtSamplesFeature" Value="Samples" />
+    <String Id="WebExtSamplesFeature_Description" Value="Sample code and data" />
+    <String Id="WebExtPhpDevGuideSamplesFeature" Value="Developer's Guide Sample Code (PHP)" />
+    <String Id="WebExtPhpDevGuideSamplesFeature_Description" Value="PHP sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data." />
+    <String Id="WebExtJavaDevGuideSamplesFeature" Value="Developer's Guide Sample Code (Java)" />
+    <String Id="WebExtJavaDevGuideSamplesFeature_Description" Value="Java sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data." />
+    <String Id="WebExtDotNetDevGuideSamplesFeature" Value="Developer's Guide Sample Code (.net)" />
+    <String Id="WebExtDotNetDevGuideSamplesFeature_Description" Value=".net sample code from the MapGuide Developer's Guide. This requires the Sheboygan sample data." />
+    <String Id="WebExtPhpViewerSampleFeature" Value="Viewer Sample (PHP)" />
+    <String Id="WebExtPhpViewerSampleFeature_Description" Value="Viewer Sample code (PHP)" />
+    <String Id="WebExtJavaViewerSampleFeature" Value="Viewer Sample (Java)" />
+    <String Id="WebExtJavaViewerSampleFeature_Description" Value="Viewer Sample code (Java)" />
+    <String Id="WebExtDotNetViewerSampleFeature" Value="Viewer Sample (.net)" />
+    <String Id="WebExtDotNetViewerSampleFeature_Description" Value="Viewer Sample code (.net)" />
+    <String Id="WebExtOpenLayersSampleFeature" Value="OpenLayers Samples" />
+    <String Id="WebExtOpenLayersSampleFeature_Description" Value="Samples demonstrating OpenLayers integration with MapGuide" />
+    <String Id="WebLocalizedFeature" Value="Localization Files" />
+    <String Id="WebLocalizedFeature_Description" Value="Localization files for the web tier" />
+    <String Id="WebFusionFeature" Value="Fusion" />
+    <String Id="WebFusionFeature_Description" Value="Fusion is a web-mapping application framework, allowing non-spatial web developers to build rich mapping applications quickly and easily" />
+    <String Id="WebMapAdminFeature" Value="Site Administrator" />
+    <String Id="WebMapAdminFeature_Description" Value="The MapGuide Site Administrator is a web-based administrative front-end for the MapGuide Server" />
+    <String Id="WebMapAgentFeature" Value="Map Agent" />
+    <String Id="WebMapAgentFeature_Description" Value="The map agent allows client applications to communicate with MapGuide over HTTP" />
+    <String Id="WebSchemaReportFeature" Value="Schema Report" />
+    <String Id="WebSchemaReportFeature_Description" Value="The schema report allows the user to describe and preview MapGuide feature sources" />
+    <String Id="WebStdIconsFeature" Value="Standard Icons" />
+    <String Id="WebStdIconsFeature_Description" Value="Icons for the AJAX viewer" />
+    <String Id="WebTempFeature" Value="Temp Directory" />
+    <String Id="WebTempFeature_Description" Value="You may choose a location where MapGuide will store temporary files." />
+    <String Id="WebExtMapAgentTestPagesFeature" Value="mapagent test pages" />
+    <String Id="WebExtMapAgentTestPagesFeature_Description" Value="mapagent test harness web pages and scripts" />
 
-    <String Id="Shortcut_DevGuide">MapGuide Developer's Guide</String>
-    <String Id="Shortcut_WebAPI">Web API Documentation</String>
-    <String Id="Shortcut_Samples">MapGuide Samples</String>
-    <String Id="Shortcut_WikiHelp">Autodesk WikiHelp</String>
-    <String Id="Shortcut_ViewerAPI">Viewer API Documentation</String>
-    <String Id="Shortcut_FusionAPI">Fusion API Documentation</String>
-    <String Id="Shortcut_SiteAdmin">MapGuide Site Administrator</String>
-    <String Id="Shortcut_MapAgent">MapAgent Test Pages</String>
-    <String Id="Shortcut_GetMaestro">Get MapGuide Maestro</String>
-    <String Id="Shortcut_MapGuide">MapGuide Project Home</String>
-    <String Id="Shortcut_Trac">MapGuide Trac</String>
-    <String Id="Shortcut_DevHttpServer">Start MapGuide Development HTTP Server</String>
+    <String Id="Shortcut_DevGuide" Value="MapGuide Developer's Guide" />
+    <String Id="Shortcut_WebAPI" Value="Web API Documentation" />
+    <String Id="Shortcut_Samples" Value="MapGuide Samples" />
+    <String Id="Shortcut_WikiHelp" Value="Autodesk WikiHelp" />
+    <String Id="Shortcut_ViewerAPI" Value="Viewer API Documentation" />
+    <String Id="Shortcut_FusionAPI" Value="Fusion API Documentation" />
+    <String Id="Shortcut_SiteAdmin" Value="MapGuide Site Administrator" />
+    <String Id="Shortcut_MapAgent" Value="MapAgent Test Pages" />
+    <String Id="Shortcut_GetMaestro" Value="Get MapGuide Maestro" />
+    <String Id="Shortcut_MapGuide" Value="MapGuide Project Home" />
+    <String Id="Shortcut_Trac" Value="MapGuide Trac" />
+    <String Id="Shortcut_DevHttpServer" Value="Start MapGuide Development HTTP Server" />
 </WixLocalization>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuide Web Extensions.wixproj
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuide Web Extensions.wixproj	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuide Web Extensions.wixproj	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,95 +1,38 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
+<Project Sdk="WixToolset.Sdk/6.0.2">
   <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
-    <ProductVersion>3.0</ProductVersion>
-    <ProjectGuid>{d41d53c4-433e-47b5-b663-e79b5569ee22}</ProjectGuid>
-    <SchemaVersion>2.0</SchemaVersion>
+    <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
+    <Platform Condition="'$(Platform)' == ''">x64</Platform>
+    <EnableDefaultItems>false</EnableDefaultItems>
     <OutputName>MapGuide Web Extensions</OutputName>
     <OutputType>Library</OutputType>
-    <WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
-    <MgRegKey Condition=" '$(MgRegKey)' == '' ">SOFTWARE\OSGeo\MapGuide</MgRegKey>
-    <MgSource Condition="('$(MgSource)'=='')">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgRegKey Condition="'$(MgRegKey)' == ''">SOFTWARE\OSGeo\MapGuide</MgRegKey>
+    <MgSource Condition="'$(MgSource)' == ''">$(MSBuildProjectDirectory)\..\..\..\MgDev\$(Configuration)</MgSource>
+    <MgSourceSanitized>$([System.String]::Copy('$(MgSource)').Replace('"', ''))</MgSourceSanitized>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
-    <OutputPath>bin\$(Configuration)\</OutputPath>
-    <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
-    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
+    <DefineConstants>Debug;MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
-    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSource);MgPlatform=$(MgPlatform)</DefineConstants>
+  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
+    <DefineConstants>MgRegKey=$(MgRegKey);MgSource=$(MgSourceSanitized);MgPlatform=$(Platform)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
   <ItemGroup>
     <Compile Include="Apache.wxs" />
-    <Compile Include="FileIncludes\incApacheFiles.wxs" />
-    <Compile Include="FileIncludes\incDotNetDevGuideFiles.wxs" />
-    <Compile Include="FileIncludes\incDotNetViewerSampleFiles.wxs" />
-    <Compile Include="FileIncludes\incFusionFiles.wxs" />
-    <Compile Include="FileIncludes\incHelpFiles.wxs" />
-    <Compile Include="FileIncludes\incJavaDevGuideFiles.wxs" />
-    <Compile Include="FileIncludes\incJavaViewerSampleFiles.wxs" />
-    <Compile Include="FileIncludes\incMapAgentFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerAspxFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerJspFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerLocalizedFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerMapAdminFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerPhpFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerSchemareportFiles.wxs" />
-    <Compile Include="FileIncludes\incMapViewerStdiconFiles.wxs" />
-    <Compile Include="FileIncludes\incOpenLayersSampleFiles.wxs" />
-    <Compile Include="FileIncludes\incPhpDevGuideFiles.wxs" />
-    <Compile Include="FileIncludes\incPhpFiles.wxs" />
-    <Compile Include="FileIncludes\incPhpViewerSampleFiles.wxs" />
-    <Compile Include="FileIncludes\incTomcatFiles.wxs" />
-    <Compile Include="FileIncludes\incDevHttpServerFiles.wxs" />
-    <Compile Include="FileIncludes\incWebInfFiles.wxs" />
-    <Compile Include="FileIncludes\incWebRootFiles.wxs" />
+    <Compile Include="HarvestFiles.wxs" />
     <Compile Include="IIS7.wxs" />
     <Compile Include="MapGuideWebExtensions.wxs" />
     <Compile Include="Shortcuts.wxs" />
   </ItemGroup>
   <ItemGroup>
-    <Folder Include="FileIncludes" />
-    <Folder Include="Lang" />
-  </ItemGroup>
-  <ItemGroup>
     <EmbeddedResource Include="Lang\MapGuideWebExtensions_en-US.wxl" />
   </ItemGroup>
   <ItemGroup>
-    <WixExtension Include="WixUtilExtension">
-      <HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
-      <Name>WixUtilExtension</Name>
-    </WixExtension>
-    <WixExtension Include="WixNetFxExtension">
-      <HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
-      <Name>WixNetFxExtension</Name>
-    </WixExtension>
-    <WixExtension Include="WixIIsExtension">
-      <HintPath>$(WixExtDir)\WixIIsExtension.dll</HintPath>
-      <Name>WixIIsExtension</Name>
-    </WixExtension>
+    <PackageReference Include="WixToolset.Util.wixext" Version="6.0.2" />
+    <PackageReference Include="WixToolset.Netfx.wixext" Version="6.0.2" />
+    <PackageReference Include="WixToolset.Iis.wixext" Version="6.0.2" />
   </ItemGroup>
-  <Import Project="$(WixTargetsPath)" />
-  <!--
-	To modify your build process, add your task inside one of the targets below and uncomment it.
-	Other similar extension points exist, see Wix.targets.
-	<Target Name="BeforeBuild">
-	</Target>
-	<Target Name="AfterBuild">
-	</Target>
-	-->
 </Project>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuideWebExtensions.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuideWebExtensions.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/MapGuideWebExtensions.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,47 +1,27 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
-     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
     <?if "$(var.MgPlatform)" = "x64" ?>
-      <?define Win64 = "yes" ?>
+      <?define Win64 = "always64" ?>
       <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-    <?else ?>
-       <?define Win64 = "no" ?>
+    <?else?>
+       <?define Win64 = "default" ?>
        <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-    <?endif ?>
+    <?endif?>
     <Fragment>
 
-        <PropertyRef Id="NETFRAMEWORK40FULL"/>
-        <PropertyRef Id="MGWEB_CONFIG"/>
-        <PropertyRef Id="IIS_API_TYPE"/>
+        <PropertyRef Id="NETFRAMEWORK40FULL" />
+        <PropertyRef Id="MGWEB_CONFIG" />
+        <PropertyRef Id="IIS_API_TYPE" />
 
         <DirectoryRef Id="WebParentFolder">
             <Directory Id="WEBEXTENSIONSLOCATION" Name="Web">
-                <Component Id="WebPortConfigComponent" Win64="$(var.Win64)" Guid="3C8FE0E1-3161-423D-9E08-0983B7075C4C" Feature="WebExtensionsFeature">
+                <Component Id="WebPortConfigComponent" Guid="3C8FE0E1-3161-423D-9E08-0983B7075C4C" Feature="WebExtensionsFeature" Bitness="$(var.Win64)">
                     <CreateFolder />
-                    <IniFile Id="INISETWEBADMINPORT"
-                             Action="addLine"
-                             Directory="WEBROOTLOCATION"
-                             Key="Port"
-                             Name="webconfig.ini"
-                             Section="AdministrativeConnectionProperties"
-                             Value="[MG_ADMIN_PORT]"/>
-                    <IniFile Id="INISETWEBCLIENTPORT"
-                             Action="addLine"
-                             Directory="WEBROOTLOCATION"
-                             Key="Port"
-                             Name="webconfig.ini"
-                             Section="ClientConnectionProperties"
-                             Value="[MG_CLIENT_PORT]"/>
-                    <IniFile Id="INISETWEBSITEPORT"
-                             Action="addLine"
-                             Directory="WEBROOTLOCATION"
-                             Key="Port"
-                             Name="webconfig.ini"
-                             Section="SiteConnectionProperties"
-                             Value="[MG_SITE_PORT]"/>
+                    <IniFile Id="INISETWEBADMINPORT" Action="addLine" Directory="WEBROOTLOCATION" Key="Port" Name="webconfig.ini" Section="AdministrativeConnectionProperties" Value="[MG_ADMIN_PORT]" />
+                    <IniFile Id="INISETWEBCLIENTPORT" Action="addLine" Directory="WEBROOTLOCATION" Key="Port" Name="webconfig.ini" Section="ClientConnectionProperties" Value="[MG_CLIENT_PORT]" />
+                    <IniFile Id="INISETWEBSITEPORT" Action="addLine" Directory="WEBROOTLOCATION" Key="Port" Name="webconfig.ini" Section="SiteConnectionProperties" Value="[MG_SITE_PORT]" />
                 </Component>
-                <Component Id="WebExtensionsComponent" Win64="$(var.Win64)" Guid="AE77C8EB-284D-4410-903F-92AD516DEA93">
-                  <RegistryKey Id="MapGuideKey" Action="create" Root="HKLM" Key="$(var.MgRegKey)">
+                <Component Id="WebExtensionsComponent" Guid="AE77C8EB-284D-4410-903F-92AD516DEA93" Bitness="$(var.Win64)">
+                  <RegistryKey Id="MapGuideKey" Root="HKLM" Key="$(var.MgRegKey)" ForceCreateOnInstall="yes">
                     <RegistryValue Id="IisApiType" Action="write" Type="string" Name="IIS_API_TYPE" Value="[IIS_API_TYPE]" />
                     <RegistryValue Id="MgWebConfig" Action="write" Type="string" Name="MGWEB_CONFIG" Value="[MGWEB_CONFIG]" />
                     <RegistryValue Id="MgApplicationPoolName" Action="write" Type="string" Name="APP_POOL_NAME" Value="[APP_POOL_NAME]" />
@@ -50,15 +30,17 @@
                   <CreateFolder />
                 </Component>
                 <Directory Id="WEBTEMPLOCATION" Name="Temp">
-                    <Component Id="WebTempComponent" Win64="$(var.Win64)" Guid="38C3E0A5-88F8-4A98-896D-CCB5DADCC566" Feature="WebTempFeature">
+                    <Component Id="WebTempComponent" Guid="38C3E0A5-88F8-4A98-896D-CCB5DADCC566" Feature="WebTempFeature" Bitness="$(var.Win64)">
                         <CreateFolder>
                             <util:PermissionEx User="Everyone" GenericAll="yes" />
                         </CreateFolder>
                     </Component>
                 </Directory>
-                <Directory Id="APACHELOCATION" Name="Apache24" />
+                <Directory Id="APACHELOCATION" Name="Apache24">
+                  <Directory Id="APACHEBINLOCATION" Name="bin" />
+                </Directory>
                 <Directory Id="PHPLOCATION" Name="Php">
-                    <Component Id="WebExtPhpComponent" Win64="$(var.Win64)" Guid="88814E96-07DC-4fb7-A993-F31FC1E000CB" Feature="WebExtPhpFeature">
+                    <Component Id="WebExtPhpComponent" Guid="88814E96-07DC-4fb7-A993-F31FC1E000CB" Feature="WebExtPhpFeature" Bitness="$(var.Win64)">
                         <CreateFolder />
                         <!--
                         <Environment Id="PhpEnvVar"
@@ -69,24 +51,20 @@
                                      System="yes"
                                      Value="[PHPLOCATION]" />
                         -->
-                        <RegistryKey Id="PhpRegistryKey"
-                                     Action="createAndRemoveOnUninstall"
-                                     Root="HKLM"
-                                     Key="Software\PHP\[PHP_VERSION]">
-                            <RegistryValue  Id="PhpRegistryKeyValue"
-                                            Action="write"
-                                            Name="IniFilePath"
-                                            Type="string"
-                                            Value="[PHPLOCATION]" />
+                        <RegistryKey Id="PhpRegistryKey" Root="HKLM" Key="Software\PHP\[PHP_VERSION]" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
+                            <RegistryValue Id="PhpRegistryKeyValue" Action="write" Name="IniFilePath" Type="string" Value="[PHPLOCATION]" />
                         </RegistryKey>
                     </Component>
                 </Directory>
                 <Directory Id="WEBROOTLOCATION" Name="www">
+                  <Directory Id="MAPAGENTLOCATION" Name="mapagent" />
+                  <Directory Id="MAPVIEWERNETLOCATION" Name="mapviewernet" />
+                  <Directory Id="MAPVIEWERPHPLOCATION" Name="mapviewerphp" />
                   <Directory Id="FUSIONLOCATION" Name="fusion">
                     <Directory Id="FUSIONLIBLOCATION" Name="lib">
                       <Directory Id="FUSIONLIBTCPDFLOCATION" Name="tcpdf">
                         <Directory Id="FUSIONLIBTCPDFCACHELOCATION" Name="cache">
-                          <Component Id="TcPdfCachePermissionsComponent" Win64="$(var.Win64)" Guid="D0F212A9-E7A1-49B1-82DB-A2965465BF78" Feature="WebExtensionsFeature">
+                          <Component Id="TcPdfCachePermissionsComponent" Guid="D0F212A9-E7A1-49B1-82DB-A2965465BF78" Feature="WebExtensionsFeature" Bitness="$(var.Win64)">
                             <CreateFolder>
                               <util:PermissionEx User="Everyone" GenericAll="yes" />
                             </CreateFolder>
@@ -97,7 +75,7 @@
                   </Directory>
                   <Directory Id="MAPADMINLOCATION" Name="mapadmin">
                     <Directory Id="PROFILINGMAPXMLLOCATION" Name="profilingmapxml">
-                      <Component Id="ProfilingPermissionsComponent" Win64="$(var.Win64)" Guid="60660D36-B135-4956-A8ED-10EAF78D76AE" Feature="WebMapAdminFeature">
+                      <Component Id="ProfilingPermissionsComponent" Guid="60660D36-B135-4956-A8ED-10EAF78D76AE" Feature="WebMapAdminFeature" Bitness="$(var.Win64)">
                         <CreateFolder>
                           <util:PermissionEx User="Everyone" GenericAll="yes" />
                         </CreateFolder>
@@ -105,54 +83,18 @@
                     </Directory>
                   </Directory>
                   <Directory Id="HELPLOCATION" Name="help" />
-                  <Component Id="WebRootComponent" Win64="$(var.Win64)" Guid="A84579E6-285D-4869-9F04-AA47FB1ACFD5" Feature="WebExtensionsFeature">
+                  <Component Id="WebRootComponent" Guid="A84579E6-285D-4869-9F04-AA47FB1ACFD5" Feature="WebExtensionsFeature" Bitness="$(var.Win64)">
                     <CreateFolder />
                     <RemoveFile Id="MapGuideWebConfig" On="uninstall" Name="web.config" Property="WEBROOTLOCATION" />
-                      <RemoveFile Id="MapAgentWebConfig" On="uninstall" Name="web.config" Property="dir_mapagent_0" />
-                      <RemoveFile Id="MapviewerNetWebConfig" On="uninstall" Name="web.config" Property="dir_mapviewernet_0" />
-                      <RemoveFile Id="MapviewerPhpWebConfig" On="uninstall" Name="web.config" Property="dir_mapviewerphp_0" />
-                      <IniFile Id="INISETMAPAGENTRESOURCESPATH"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="ResourcesPath"
-                               Name="webconfig.ini"
-                               Section="GeneralProperties"
-                               Value="[WEBROOTLOCATION]mapagent\Resources" />
-                      <IniFile Id="INISETWEBTEMPPATH"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="TempPath"
-                               Name="webconfig.ini"
-                               Section="GeneralProperties"
-                               Value="[WEBTEMPLOCATION]" />
-                      <IniFile Id="INISETSERVERIP"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="IpAddress"
-                               Name="webconfig.ini"
-                               Section="SiteConnectionProperties"
-                               Value="[MGSERVER_IP]" />
-                      <IniFile Id="INISETTEMPLATEROOTPATH"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="TemplateRootFolder"
-                               Name="webconfig.ini"
-                               Section="WebApplicationProperties"
-                               Value="[dir_fusion_0]templates\mapguide" />
-                      <IniFile Id="INISETWIDGETINFOPATH"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="WidgetInfoFolder"
-                               Name="webconfig.ini"
-                               Section="WebApplicationProperties"
-                               Value="[dir_fusion_0]widgets\widgetinfo" />
-                      <IniFile Id="INISETCONTAINERINFOPATH"
-                               Action="addLine"
-                               Directory="WEBROOTLOCATION"
-                               Key="ContainerInfoFolder"
-                               Name="webconfig.ini"
-                               Section="WebApplicationProperties"
-                               Value="[dir_fusion_0]containerinfo" />
+                      <RemoveFile Id="MapAgentWebConfig" On="uninstall" Name="web.config" Property="MAPAGENTLOCATION" />
+                      <RemoveFile Id="MapviewerNetWebConfig" On="uninstall" Name="web.config" Property="MAPVIEWERNETLOCATION" />
+                      <RemoveFile Id="MapviewerPhpWebConfig" On="uninstall" Name="web.config" Property="MAPVIEWERPHPLOCATION" />
+                      <IniFile Id="INISETMAPAGENTRESOURCESPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="ResourcesPath" Name="webconfig.ini" Section="GeneralProperties" Value="[WEBROOTLOCATION]mapagent\Resources" />
+                      <IniFile Id="INISETWEBTEMPPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="TempPath" Name="webconfig.ini" Section="GeneralProperties" Value="[WEBTEMPLOCATION]" />
+                      <IniFile Id="INISETSERVERIP" Action="addLine" Directory="WEBROOTLOCATION" Key="IpAddress" Name="webconfig.ini" Section="SiteConnectionProperties" Value="[MGSERVER_IP]" />
+                      <IniFile Id="INISETTEMPLATEROOTPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="TemplateRootFolder" Name="webconfig.ini" Section="WebApplicationProperties" Value="[FUSIONLOCATION]templates\mapguide" />
+                      <IniFile Id="INISETWIDGETINFOPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="WidgetInfoFolder" Name="webconfig.ini" Section="WebApplicationProperties" Value="[FUSIONLOCATION]widgets\widgetinfo" />
+                      <IniFile Id="INISETCONTAINERINFOPATH" Action="addLine" Directory="WEBROOTLOCATION" Key="ContainerInfoFolder" Name="webconfig.ini" Section="WebApplicationProperties" Value="[FUSIONLOCATION]containerinfo" />
                     </Component>
                 </Directory>
                 <Directory Id="TOMCATLOCATION" Name="Tomcat" />
@@ -160,56 +102,56 @@
             </Directory>
         </DirectoryRef>
         <Feature Id="WebExtensionsFeature" Title="!(loc.WebExtensionsFeature)" Level="1" Description="!(loc.WebExtensionsFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
-            <ComponentGroupRef Id="group_WEBROOTFILES"/>
-            <ComponentRef Id="WebExtensionsComponent"/>
-            <ComponentRef Id="WebShortcutsComponent"/>
-            <ComponentRef Id="WebApacheShortcutComponent"/>
-            <ComponentRef Id="WebIISShortcutComponent"/>
-            <ComponentRef Id="GenericShortcutComponent"/>
-            <ComponentRef Id="WebIISSamplesShortcutComponent"/>
-            <ComponentRef Id="WebApacheSampleShortcutComponent"/>
-            <ComponentRef Id="WebTempComponent"/>
+            <ComponentGroupRef Id="group_WEBROOTFILES" />
+            <ComponentRef Id="WebExtensionsComponent" />
+            <ComponentRef Id="WebShortcutsComponent" />
+            <ComponentRef Id="WebApacheShortcutComponent" />
+            <ComponentRef Id="WebIISShortcutComponent" />
+            <ComponentRef Id="GenericShortcutComponent" />
+            <ComponentRef Id="WebIISSamplesShortcutComponent" />
+            <ComponentRef Id="WebApacheSampleShortcutComponent" />
+            <ComponentRef Id="WebTempComponent" />
 
-            <Feature Id="WebExtApacheFeature" Title="!(loc.WebExtApacheFeature)" Level="1" Description="!(loc.WebExtApacheFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <ComponentGroupRef Id="group_APACHEFILES"/>
+            <Feature Id="WebExtApacheFeature" Title="!(loc.WebExtApacheFeature)" Level="1" Description="!(loc.WebExtApacheFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+                <ComponentGroupRef Id="group_APACHEFILES" />
             </Feature>
-            <Feature Id="WebExtPhpFeature" Title="!(loc.WebExtPhpFeature)" Display="hidden" Level="1" Description="!(loc.WebExtPhpFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <ComponentGroupRef Id="group_PHPFILES"/>
+            <Feature Id="WebExtPhpFeature" Title="!(loc.WebExtPhpFeature)" Display="hidden" Level="1" Description="!(loc.WebExtPhpFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no">
+                <ComponentGroupRef Id="group_PHPFILES" />
             </Feature>
-            <Feature Id="WebExtTomcatFeature" Title="!(loc.WebExtTomcatFeature)" Level="1" Description="!(loc.WebExtTomcatFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-              <ComponentGroupRef Id="group_TOMCATFILES"/>
+            <Feature Id="WebExtTomcatFeature" Title="!(loc.WebExtTomcatFeature)" Level="1" Description="!(loc.WebExtTomcatFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+              <ComponentGroupRef Id="group_TOMCATFILES" />
             </Feature>
-            <Feature Id="WebDevHttpServerFeature" Title="!(loc.WebDevHttpServerFeature)" Level="1" Description="!(loc.WebDevHttpServerFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-              <ComponentGroupRef Id="group_DEVHTTPSERVER"/>
-              <ComponentRef Id="DevHttpServerShortcutComponent"/>
+            <Feature Id="WebDevHttpServerFeature" Title="!(loc.WebDevHttpServerFeature)" Level="1" Description="!(loc.WebDevHttpServerFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+              <ComponentGroupRef Id="group_DEVHTTPSERVER" />
+              <ComponentRef Id="DevHttpServerShortcutComponent" />
             </Feature>
             <Feature Id="WebExtHelpFeature" Title="!(loc.WebExtHelpFeature)" Level="1" Description="!(loc.WebExtHelpFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_HELPFILES" />
-                <ComponentRef Id="ApacheWebApiShortcutComponent"/>
-                <ComponentRef Id="IISWebApiShortcutComponent"/>
-                <ComponentRef Id="ApacheViewerApiShortcutComponent"/>
-                <ComponentRef Id="IISViewerApiShortcutComponent"/>
-                <ComponentRef Id="ApacheFusionApiShortcutComponent"/>
-                <ComponentRef Id="IISFusionApiShortcutComponent"/>
-                <ComponentRef Id="ApacheDevGuideShortcutComponent"/>
-                <ComponentRef Id="IISDevGuideShortcutComponent"/>
+                <ComponentRef Id="ApacheWebApiShortcutComponent" />
+                <ComponentRef Id="IISWebApiShortcutComponent" />
+                <ComponentRef Id="ApacheViewerApiShortcutComponent" />
+                <ComponentRef Id="IISViewerApiShortcutComponent" />
+                <ComponentRef Id="ApacheFusionApiShortcutComponent" />
+                <ComponentRef Id="IISFusionApiShortcutComponent" />
+                <ComponentRef Id="ApacheDevGuideShortcutComponent" />
+                <ComponentRef Id="IISDevGuideShortcutComponent" />
             </Feature>
-            <Feature Id="WebExtMapViewerFeature" Title="!(loc.WebExtMapViewerFeature)" Display="hidden" Level="1" Description="!(loc.WebExtMapViewerFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <ComponentGroupRef Id="group_MAPVIEWERFILES"/>
+            <Feature Id="WebExtMapViewerFeature" Title="!(loc.WebExtMapViewerFeature)" Display="hidden" Level="1" Description="!(loc.WebExtMapViewerFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+                <ComponentGroupRef Id="group_MAPVIEWERFILES" />
             </Feature>
-            <Feature Id="WebExtMapViewerPHPFeature" Title="!(loc.WebExtMapViewerPHPFeature)" Level="1" Description="!(loc.WebExtMapViewerPHPFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <ComponentGroupRef Id="group_MAPVIEWERPHPFILES"/>
+            <Feature Id="WebExtMapViewerPHPFeature" Title="!(loc.WebExtMapViewerPHPFeature)" Level="1" Description="!(loc.WebExtMapViewerPHPFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+                <ComponentGroupRef Id="group_MAPVIEWERPHPFILES" />
             </Feature>
-            <Feature Id="WebExtMapViewerJSPFeature" Title="!(loc.WebExtMapViewerJSPFeature)" Level="1" Description="!(loc.WebExtMapViewerJSPFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-              <ComponentGroupRef Id="group_MAPVIEWERJSPFILES"/>
-              <ComponentGroupRef Id="group_WEBINFFILES"/>
+            <Feature Id="WebExtMapViewerJSPFeature" Title="!(loc.WebExtMapViewerJSPFeature)" Level="1" Description="!(loc.WebExtMapViewerJSPFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+              <ComponentGroupRef Id="group_MAPVIEWERJSPFILES" />
+              <ComponentGroupRef Id="group_WEBINFFILES" />
             </Feature>
-            <Feature Id="WebExtMapViewerASPXFeature" Title="!(loc.WebExtMapViewerASPXFeature)" Level="1" Description="!(loc.WebExtMapViewerASPXFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
-                <ComponentGroupRef Id="group_MAPVIEWERASPXFILES"/>
+            <Feature Id="WebExtMapViewerASPXFeature" Title="!(loc.WebExtMapViewerASPXFeature)" Level="1" Description="!(loc.WebExtMapViewerASPXFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+                <ComponentGroupRef Id="group_MAPVIEWERASPXFILES" />
             </Feature>
-            <Feature Id="WebTempFeature" Title="!(loc.WebTempFeature)" Level="1" ConfigurableDirectory="WEBTEMPLOCATION" Description="!(loc.WebTempFeature_Description)" Absent="disallow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" />
+            <Feature Id="WebTempFeature" Title="!(loc.WebTempFeature)" Level="1" ConfigurableDirectory="WEBTEMPLOCATION" Description="!(loc.WebTempFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" AllowAbsent="no" />
             <Feature Id="WebExtSamplesFeature" Title="!(loc.WebExtSamplesFeature)" Level="1" Description="!(loc.WebExtSamplesFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
-              <Component Id="WebExtSamplesComponent" Win64="$(var.Win64)" Guid="525BAE2A-F8E4-415F-A095-91DDD17FD5E6" Directory="WEBEXTENSIONSLOCATION" >
+              <Component Id="WebExtSamplesComponent" Guid="525BAE2A-F8E4-415F-A095-91DDD17FD5E6" Directory="WEBEXTENSIONSLOCATION" Bitness="$(var.Win64)">
                 <!-- This is required because a UI bug displays the feature as network-installable if there are no folders or files. -->
                 <CreateFolder />
               </Component>
@@ -235,25 +177,26 @@
                     <ComponentGroupRef Id="group_OPENLAYERSSAMPLEFILES" />
                 </Feature>
             </Feature>
-            <Feature Id="WebLocalizedFeature" Title="!(loc.WebLocalizedFeature)" Display="hidden"  Level="1" Description="!(loc.WebLocalizedFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+            <Feature Id="WebLocalizedFeature" Title="!(loc.WebLocalizedFeature)" Display="hidden" Level="1" Description="!(loc.WebLocalizedFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_MAPVIEWERLOCALIZEDFILES" />
             </Feature>
-            <Feature Id="WebFusionFeature" Title="!(loc.WebFusionFeature)" Display="hidden"  Level="1" Description="!(loc.WebFusionFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
-                <ComponentGroupRef Id="group_FUSIONFILES"/>
+            <Feature Id="WebFusionFeature" Title="!(loc.WebFusionFeature)" Display="hidden" Level="1" Description="!(loc.WebFusionFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+                <ComponentGroupRef Id="group_FUSIONFILES" />
             </Feature>
             <Feature Id="WebMapAdminFeature" Title="!(loc.WebMapAdminFeature)" Display="hidden" Level="1" Description="!(loc.WebMapAdminFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_MAPVIEWERMAPADMINFILES" />
             </Feature>
-            <Feature Id="WebMapAgentFeature" Title="!(loc.WebMapAgentFeature)" Display="hidden"  Level="1" Description="!(loc.WebMapAgentFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+            <Feature Id="WebMapAgentFeature" Title="!(loc.WebMapAgentFeature)" Display="hidden" Level="1" Description="!(loc.WebMapAgentFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_MAPAGENTFILES" />
             </Feature>
-            <Feature Id="WebSchemaReportFeature" Title="!(loc.WebSchemaReportFeature)" Display="hidden"  Level="1" Description="!(loc.WebSchemaReportFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+            <Feature Id="WebSchemaReportFeature" Title="!(loc.WebSchemaReportFeature)" Display="hidden" Level="1" Description="!(loc.WebSchemaReportFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_MAPVIEWERSCHEMAREPORTFILES" />
             </Feature>
-            <Feature Id="WebStdIconsFeature" Title="!(loc.WebStdIconsFeature)" Display="hidden"  Level="1" Description="!(loc.WebStdIconsFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+            <Feature Id="WebStdIconsFeature" Title="!(loc.WebStdIconsFeature)" Display="hidden" Level="1" Description="!(loc.WebStdIconsFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
                 <ComponentGroupRef Id="group_MAPVIEWERSTDICONFILES" />
             </Feature>
-            <Feature Id="WebExtMapAgentTestPagesFeature" Title="!(loc.WebExtMapAgentTestPagesFeature)" Level="1" Description="!(loc.WebExtMapAgentTestPagesFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" >
+            <Feature Id="WebExtMapAgentTestPagesFeature" Title="!(loc.WebExtMapAgentTestPagesFeature)" Level="1" Description="!(loc.WebExtMapAgentTestPagesFeature_Description)" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
+              <ComponentGroupRef Id="group_MAPAGENTTESTPAGEFILES" />
                 <ComponentRef Id="WebApacheMapAgentShortcutComponent" />
                 <ComponentRef Id="WebIISMapAgentShortcutComponent" />
             </Feature>

Modified: sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Shortcuts.wxs
===================================================================
--- sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Shortcuts.wxs	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/Libraries/MapGuide Web Extensions/Shortcuts.wxs	2026-03-14 17:26:43 UTC (rev 10208)
@@ -1,262 +1,147 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
- xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
   <?if "$(var.MgPlatform)" = "x64" ?>
-  <?define Win64 = "yes" ?>
+  <?define Win64 = "always64" ?>
   <?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
-  <?else ?>
-  <?define Win64 = "no" ?>
+  <?else?>
+  <?define Win64 = "default" ?>
   <?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
-  <?endif ?>
+  <?endif?>
   <Fragment>
-    <DirectoryRef Id="ProgramMenuFolder">
+    <StandardDirectory Id="ProgramMenuFolder">
       <!-- HACK: For some reason the MG_VERSION_MAJOR_MINOR property doesn't evaluate, so hardcode it for now -->
       <Directory Id="MapGuideOpenSourceMenuLocation" Name="MapGuide Open Source 4.0">
-        <Component Id="GenericShortcutComponent" Win64="$(var.Win64)" Guid="243CE0F3-D6BC-476B-910E-6F34DA54A2E2">
+        <Component Id="GenericShortcutComponent" Guid="243CE0F3-D6BC-476B-910E-6F34DA54A2E2" Bitness="$(var.Win64)">
           <CreateFolder />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\GenericShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
           <RemoveFolder Id="MapGuideOpenSourceMenuLocation" On="uninstall" />
         </Component>
-        <Component Id="ApacheWebApiShortcutComponent" Win64="$(var.Win64)" Guid="5FC3FEA9-4DCD-404A-8835-43C8C2F96E29">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
+        <Component Id="ApacheWebApiShortcutComponent" Guid="5FC3FEA9-4DCD-404A-8835-43C8C2F96E29" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="ApacheWebApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_WebAPI)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/webapi/index.htm" />
+          <util:InternetShortcut Id="ApacheWebApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_WebAPI)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/webapi/index.htm" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheWebApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="ApacheDevGuideShortcutComponent" Win64="$(var.Win64)" Guid="4DC72C73-8CF0-49B3-8558-5E7CAFA7B6CE">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
+        <Component Id="ApacheDevGuideShortcutComponent" Guid="4DC72C73-8CF0-49B3-8558-5E7CAFA7B6CE" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="ApacheDevGuide"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_DevGuide)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/devguide/index.html" />
+          <util:InternetShortcut Id="ApacheDevGuide" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_DevGuide)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/devguide/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheDevGuideShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="ApacheViewerApiShortcutComponent" Win64="$(var.Win64)" Guid="47CD50F1-5961-43F8-8FE8-BF1CDC8AE895">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
+        <Component Id="ApacheViewerApiShortcutComponent" Guid="47CD50F1-5961-43F8-8FE8-BF1CDC8AE895" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="ApacheViewerApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_ViewerAPI)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/viewerapi/index.htm" />
+          <util:InternetShortcut Id="ApacheViewerApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_ViewerAPI)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/help/viewerapi/index.htm" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheViewerApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="ApacheFusionApiShortcutComponent" Win64="$(var.Win64)" Guid="4AABF916-33FC-440D-9D6F-8CE95F2ADE7A">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
+        <Component Id="ApacheFusionApiShortcutComponent" Guid="4AABF916-33FC-440D-9D6F-8CE95F2ADE7A" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="ApacheFusionApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_FusionAPI)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/fusion/docs/NaturalDocs/index.html" />
+          <util:InternetShortcut Id="ApacheFusionApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_FusionAPI)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/fusion/docs/NaturalDocs/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheFusionApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebApacheShortcutComponent" Win64="$(var.Win64)" Guid="2EBC8176-07C5-40A9-97F9-C3E83836637E">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
-          <util:InternetShortcut Id="ApacheSiteAdmin"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_SiteAdmin)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/mapadmin/login.php" />
-          <util:InternetShortcut Id="ApacheGetMaestro"
-            Directory="MapGuideOpenSourceMenuLocation"
-            Name="!(loc.Shortcut_GetMaestro)"
-            Target="http://trac.osgeo.org/mapguide/wiki/maestro" />
+        <Component Id="WebApacheShortcutComponent" Guid="2EBC8176-07C5-40A9-97F9-C3E83836637E" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="ApacheSiteAdmin" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_SiteAdmin)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/mapadmin/login.php" />
+          <util:InternetShortcut Id="ApacheGetMaestro" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_GetMaestro)" Target="http://trac.osgeo.org/mapguide/wiki/maestro" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebApacheMapAgentShortcutComponent" Win64="$(var.Win64)" Guid="BB57DB3F-73E3-4DAD-8899-33A4DC398579">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
-          <util:InternetShortcut Id="ApacheMapAgent"
-            Directory="MapGuideOpenSourceMenuLocation"
-            Name="!(loc.Shortcut_MapAgent)"
-            Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/mapagent/index.html" />
+        <Component Id="WebApacheMapAgentShortcutComponent" Guid="BB57DB3F-73E3-4DAD-8899-33A4DC398579" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="ApacheMapAgent" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_MapAgent)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/mapagent/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheMapAgentShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebApacheSampleShortcutComponent" Win64="$(var.Win64)" Guid="E3D81381-6B4A-41AD-B83A-CE686455D3DC">
-          <Condition>MGWEB_CONFIG="APACHE"</Condition>
-          <util:InternetShortcut Id="ApacheSamplesShortcut"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_Samples)"
-           Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/samples.php" />
+        <Component Id="WebApacheSampleShortcutComponent" Guid="E3D81381-6B4A-41AD-B83A-CE686455D3DC" Condition="MGWEB_CONFIG="APACHE"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="ApacheSamplesShortcut" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_Samples)" Target="http://localhost:[APACHE_PORT]/[VIRTUALDIR]/samples.php" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ApacheSamplesShortcutComponent">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="IISWebApiShortcutComponent" Win64="$(var.Win64)" Guid="DFA7D99A-3760-4072-9510-7EC5D658FB5F">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
+        <Component Id="IISWebApiShortcutComponent" Guid="DFA7D99A-3760-4072-9510-7EC5D658FB5F" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="IISWebApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_WebAPI)"
-           Target="http://localhost/[VIRTUALDIR]/help/webapi/index.htm" />
+          <util:InternetShortcut Id="IISWebApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_WebAPI)" Target="http://localhost/[VIRTUALDIR]/help/webapi/index.htm" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISWebApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="IISDevGuideShortcutComponent" Win64="$(var.Win64)" Guid="BA2B2FE0-F11E-41D0-9939-D774C1D3171A">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
+        <Component Id="IISDevGuideShortcutComponent" Guid="BA2B2FE0-F11E-41D0-9939-D774C1D3171A" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="IISDevGuide"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_DevGuide)"
-           Target="http://localhost/[VIRTUALDIR]/help/devguide/index.html" />
+          <util:InternetShortcut Id="IISDevGuide" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_DevGuide)" Target="http://localhost/[VIRTUALDIR]/help/devguide/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISDevGuideShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="IISViewerApiShortcutComponent" Win64="$(var.Win64)" Guid="F2CCA279-4C99-48CE-9F79-7465449E2B33">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
+        <Component Id="IISViewerApiShortcutComponent" Guid="F2CCA279-4C99-48CE-9F79-7465449E2B33" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="IISViewerApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_ViewerAPI)"
-           Target="http://localhost/[VIRTUALDIR]/help/viewerapi/index.htm" />
+          <util:InternetShortcut Id="IISViewerApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_ViewerAPI)" Target="http://localhost/[VIRTUALDIR]/help/viewerapi/index.htm" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISViewerApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="IISFusionApiShortcutComponent" Win64="$(var.Win64)" Guid="8F4A6B97-DEFB-4AA1-859E-3392C5DC30D2">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
+        <Component Id="IISFusionApiShortcutComponent" Guid="8F4A6B97-DEFB-4AA1-859E-3392C5DC30D2" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
           <CreateFolder />
-          <util:InternetShortcut Id="IISFusionApi"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_FusionAPI)"
-           Target="http://localhost/[VIRTUALDIR]/fusion/docs/NaturalDocs/index.html" />
+          <util:InternetShortcut Id="IISFusionApi" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_FusionAPI)" Target="http://localhost/[VIRTUALDIR]/fusion/docs/NaturalDocs/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISFusionApiShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebIISSamplesShortcutComponent" Win64="$(var.Win64)" Guid="F1B2C345-52F8-4179-8CDC-34D2D3E22418">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
-          <util:InternetShortcut Id="IISSamplesShortcut"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_Samples)"
-           Target="http://localhost/[VIRTUALDIR]/samples.php" />
+        <Component Id="WebIISSamplesShortcutComponent" Guid="F1B2C345-52F8-4179-8CDC-34D2D3E22418" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="IISSamplesShortcut" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_Samples)" Target="http://localhost/[VIRTUALDIR]/samples.php" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISSamplesShortcutComponent">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebIISShortcutComponent" Win64="$(var.Win64)" Guid="F59A450A-84DE-4E2E-B942-BD416CDEBBF3">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
-          <util:InternetShortcut Id="IISSiteAdmin"
-           Directory="MapGuideOpenSourceMenuLocation"
-           Name="!(loc.Shortcut_SiteAdmin)"
-           Target="http://localhost/[VIRTUALDIR]/mapadmin/login.php" />
-          <util:InternetShortcut Id="IISGetMaestro"
-            Directory="MapGuideOpenSourceMenuLocation"
-            Name="!(loc.Shortcut_GetMaestro)"
-            Target="http://trac.osgeo.org/mapguide/wiki/maestro" />
+        <Component Id="WebIISShortcutComponent" Guid="F59A450A-84DE-4E2E-B942-BD416CDEBBF3" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="IISSiteAdmin" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_SiteAdmin)" Target="http://localhost/[VIRTUALDIR]/mapadmin/login.php" />
+          <util:InternetShortcut Id="IISGetMaestro" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_GetMaestro)" Target="http://trac.osgeo.org/mapguide/wiki/maestro" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="WebIISMapAgentShortcutComponent" Win64="$(var.Win64)" Guid="BEB5E02C-8D04-46FB-91E4-6EDB033414F3">
-          <Condition>MGWEB_CONFIG="IIS"</Condition>
-          <util:InternetShortcut Id="IISMapAgent"
-            Directory="MapGuideOpenSourceMenuLocation"
-            Name="!(loc.Shortcut_MapAgent)"
-            Target="http://localhost/[VIRTUALDIR]/mapagent/index.html" />
+        <Component Id="WebIISMapAgentShortcutComponent" Guid="BEB5E02C-8D04-46FB-91E4-6EDB033414F3" Condition="MGWEB_CONFIG="IIS"" Bitness="$(var.Win64)">
+          
+          <util:InternetShortcut Id="IISMapAgent" Directory="MapGuideOpenSourceMenuLocation" Name="!(loc.Shortcut_MapAgent)" Target="http://localhost/[VIRTUALDIR]/mapagent/index.html" />
           <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\IISMapAgentShortcut">
-            <RegistryValue
-              Value="Installed"
-              Type="string"
-              KeyPath="yes" />
+            <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
           </RegistryKey>
         </Component>
-        <Component Id="DevHttpServerShortcutComponent" Win64="$(var.Win64)" Guid="3517d6df-a723-4fb0-ac21-5b5de3a5cff3">
-          <!-- 
-            HACK: I'd prefer not to use relative paths below, but the variables for the paths in question
-            area "owned" by a different component, preventing their use here
-          -->
-          <Shortcut Id="DevHttpServerShortcut" 
-                  Name="!(loc.Shortcut_DevHttpServer)"
-                  Target="[#DEV_HTTP_SERVER_EXE]"
-                  Arguments="-p 8028 -r ..\www -w ..\www\webconfig.ini"
-                  WorkingDirectory="DEVHTTPSERVERLOCATION"/>
-          <RegistryValue Root="HKCU" Key="$(var.MgRegKey)\DevHttpServerShortcut" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
+        <Component Id="DevHttpServerShortcutComponent" Guid="3517d6df-a723-4fb0-ac21-5b5de3a5cff3" Bitness="$(var.Win64)">
+          <Shortcut Id="DevHttpServerShortcut" Name="!(loc.Shortcut_DevHttpServer)" Target="[DEVHTTPSERVERLOCATION]MgDevHttpServer.exe" Arguments="-p 8028 -r ..\www -w ..\www\webconfig.ini" WorkingDirectory="DEVHTTPSERVERLOCATION" />
+          <RegistryValue Root="HKCU" Key="$(var.MgRegKey)\DevHttpServerShortcut" Name="installed" Type="integer" Value="1" KeyPath="yes" />
         </Component>
         <Directory Id="WebResourcesLocation" Name="Web Resources">
-          <Component Id="WebShortcutsComponent" Win64="$(var.Win64)" Guid="7D2E24E9-533B-4119-A6D1-E48A33BF34C3">
+          <Component Id="WebShortcutsComponent" Guid="7D2E24E9-533B-4119-A6D1-E48A33BF34C3" Bitness="$(var.Win64)">
             <CreateFolder />
-            <util:InternetShortcut Id="MapGuideHome"
-             Directory="WebResourcesLocation"
-             Name="!(loc.Shortcut_MapGuide)"
-             Target="http://mapguide.osgeo.org" />
-            <util:InternetShortcut Id="MapGuideTrac"
-              Directory="WebResourcesLocation"
-              Name="!(loc.Shortcut_Trac)"
-              Target="http://trac.osgeo.org/mapguide" />
-            <util:InternetShortcut Id="AutodeskWikiHelp"
-              Directory="WebResourcesLocation"
-              Name="!(loc.Shortcut_WikiHelp)"
-              Target="http://help.autodesk.com/view/AIMS/2017/ENU/" />
+            <util:InternetShortcut Id="MapGuideHome" Directory="WebResourcesLocation" Name="!(loc.Shortcut_MapGuide)" Target="http://mapguide.osgeo.org" />
+            <util:InternetShortcut Id="MapGuideTrac" Directory="WebResourcesLocation" Name="!(loc.Shortcut_Trac)" Target="http://trac.osgeo.org/mapguide" />
+            <util:InternetShortcut Id="AutodeskWikiHelp" Directory="WebResourcesLocation" Name="!(loc.Shortcut_WikiHelp)" Target="http://help.autodesk.com/view/AIMS/2017/ENU/" />
             <RegistryKey Root="HKCU" Key="$(var.MgRegKey)\ProgramMenuShortcut">
-              <RegistryValue
-                Value="Installed"
-                Type="string"
-                KeyPath="yes" />
+              <RegistryValue Value="Installed" Type="string" KeyPath="yes" />
             </RegistryKey>
             <RemoveFolder Id="WebShortcutsComponent" On="uninstall" />
           </Component>
         </Directory>
       </Directory>
-    </DirectoryRef>
+    </StandardDirectory>
   </Fragment>
 </Wix>
\ No newline at end of file

Modified: sandbox/jng/installer_wix6/build.bat
===================================================================
--- sandbox/jng/installer_wix6/build.bat	2026-03-14 17:20:40 UTC (rev 10207)
+++ sandbox/jng/installer_wix6/build.bat	2026-03-14 17:26:43 UTC (rev 10208)
@@ -8,8 +8,8 @@
 rem value of INSTALLER_OUTPUT defined in this file
 rem
 rem Requirements:
-rem   1. Wix 3.5 (http://wix.codeplex.com)
-rem   2. Paraffin (http://www.wintellect.com/CS/blogs/jrobbins/archive/2008/12/22/paraffin-3-0-now-with-full-wix-3-0-support.aspx)
+rem   1. WiX Toolset 6.0.2 SDK (restored through SDK-style .wixproj)
+rem   2. Staged MapGuide output under ..\MgDev\<Configuration>
 rem
 rem Usage:
 rem
@@ -23,7 +23,7 @@
 rem	      	  [-name=MapGuideInstallerFilename]
 rem	      	  [-title=MapGuideInstallerTitle]
 rem
-rem Action: build(default), clean, prepare, generate (only use generate when creating new GIDs)
+rem Action: build(default), clean, prepare, generate (generate is a no-op)
 rem SourceDirectory: The directory that was used for MapGuide build output 
 rem	MapGuideVersion: The version associated with the installer in the format 2.1.0.0
 rem	MapGuideInstallerFilename: File name of output .exe in the format MapGuideOpenSource-2.1.0-Something
@@ -38,6 +38,8 @@
 rem Command Line Option Defaults
 rem ==================================================
 
+SET TYPEBUILD=Release
+SET PLATFORM_CLR=x64
 SET TYPEACTION=build
 SET CULTURE=en-US
 SET INSTALLER_VERSION_MAJOR_MINOR=4.0
@@ -74,8 +76,7 @@
 SET INSTALLER_DEV_INSTALLER=%INSTALLER_DEV%\Installers\MapGuide
 
 SET NSIS=%CD%\Support\NSIS
-SET PARAFFIN=%CD%
-SET PATH=%PATH%;%PARAFFIN%;%NSIS%;%WIX%\bin\;%CD%\..\MgDev\BuildTools\WebTools\7-Zip
+SET PATH=%PATH%;%NSIS%;%CD%\..\MgDev\BuildTools\WebTools\7-Zip
 
 rem ==================================================
 rem Web dependencies
@@ -101,6 +102,9 @@
 
 if "%1"=="-lang"	goto get_language
 
+if "%1"=="-build"		 goto get_typebuild
+if "%1"=="-platform"	 goto get_platform
+
 if "%1"=="-source"		 goto get_source
 
 if "%1"=="-version"       goto get_version
@@ -114,6 +118,20 @@
 shift
 goto study_params
 
+:get_typebuild
+SET TYPEBUILD=%2
+SET INSTALLER_NAME=MapGuideOpenSource-%INSTALLER_VERSION_MAJOR_MINOR_REV%-Trunk-%CULTURE%-%TYPEBUILD%-%PLATFORM_CLR%
+SET INSTALLER_TITLE="MapGuide Open Source %INSTALLER_VERSION_MAJOR_MINOR% Trunk (%TYPEBUILD%)"
+SET MG_SOURCE=%CD%\..\MgDev\%TYPEBUILD%
+SET MG_SOURCE_INC=%MG_SOURCE%
+goto next_param
+
+:get_platform
+SET PLATFORM_CLR=%2
+SET INSTALLER_NAME=MapGuideOpenSource-%INSTALLER_VERSION_MAJOR_MINOR_REV%-Trunk-%CULTURE%-%TYPEBUILD%-%PLATFORM_CLR%
+SET PHP_TS_PACKAGE=php-%PHP_VERSION%-nts-Win32-vs16-%PLATFORM_CLR%.zip
+goto next_param
+
 :get_language
 SET CULTURE=%2
 SET INSTALLER_OUTPUT=%INSTALLER_DEV%\Output\%CULTURE%
@@ -158,6 +176,8 @@
 echo Bundling ArcSDE Provider: %MG_WITH_ARCSDE%
 echo ===================================================
 
+if /I not "%PLATFORM_CLR%"=="x64" goto error_x64_only
+
 if "%TYPEACTION%"=="build" goto build
 if "%TYPEACTION%"=="prepare" goto prepare
 if "%TYPEACTION%"=="clean" goto clean
@@ -165,9 +185,9 @@
 
 :clean
 echo [clean]: Installer Pre-Reqs
-%MSBUILD_CLEAN% InstallerPreReq.sln
+%MSBUILD_CLEAN% InstallerPreReq.sln /p:Platform=x64
 echo [clean]: Installer
-%MSBUILD_CLEAN_CLR% InstallerWix.sln
+%MSBUILD_CLEAN_CLR% InstallerWix.sln /p:Platform=x64
 goto quit
 
 :prepare
@@ -176,7 +196,7 @@
 if not exist "%MG_SOURCE%\Web" goto error_mg_web_not_found
 if not exist "%MG_SOURCE%\CS-Map" goto error_mg_csmap_not_found
 echo [prepare] Installer Pre-Requisites
-%MSBUILD% InstallerPreReq.sln
+%MSBUILD% InstallerPreReq.sln /p:Platform=x64
 copy %INSTALLER_FDO_REG_UTIL%\%TYPEBUILD%\FdoRegUtil.exe %MG_SOURCE%\Server\FDO
 popd
 echo [prepare] Unpack Apache httpd
@@ -226,99 +246,12 @@
 
 :generate
 echo [generate]: MapGuide Installer
+echo [generate]: No-op. WiX-native harvesting is now defined in HarvestFiles.wxs.
 
-SET PARAFFIN=paraffin.exe -guids
-IF "%PLATFORM_CLR%" == "x64" SET PARAFFIN=paraffin.exe -Win64 -guids
-
-SET WIX_INC_SERVER="%INSTALLER_DEV%\Libraries\MapGuide Server\FileIncludes"
-SET WIX_INC_WEB="%INSTALLER_DEV%\Libraries\MapGuide Web Extensions\FileIncludes"
-SET WIX_INC_CSMAP="%INSTALLER_DEV%\Libraries\CS Map\FileIncludes"
-
-echo [generate]: Server - binaries
-%PARAFFIN% -dir %MG_SOURCE%\Server\bin -alias $(var.MgSource)\Server\bin -custom SRVBINFILES -dirref SERVERROOTLOCATION -norecurse %WIX_INC_SERVER%\incBinFiles.wxs
-
-echo [generate]: Server - RepositoryAdmin
-%PARAFFIN% -dir %MG_SOURCE%\Server\RepositoryAdmin -alias $(var.MgSource)\Server\RepositoryAdmin -custom SRVREPADMINFILES -dirref SERVERROOTLOCATION %WIX_INC_SERVER%\incRepositoryAdminFiles.wxs
-
-echo [generate]: Server - resources          
-%PARAFFIN% -dir %MG_SOURCE%\Server\Resources -alias $(var.MgSource)\Server\Resources -custom SRVRESOURCESFILES -dirref SERVERROOTLOCATION %WIX_INC_SERVER%\incResourcesFiles.wxs
-	  
-echo [generate]: Server - schema
-%PARAFFIN% -dir %MG_SOURCE%\Server\Schema -alias $(var.MgSource)\Server\Schema -custom SRVSCHEMAFILES -dirref SERVERROOTLOCATION %WIX_INC_SERVER%\incSchemaFiles.wxs
-
-echo [generate]: Server - WMS
-%PARAFFIN% -dir %MG_SOURCE%\Server\wms -alias $(var.MgSource)\Server\wms -custom SRVWMSFILES -dirref SERVERROOTLOCATION -norecurse %WIX_INC_SERVER%\incWmsFiles.wxs
-
-echo [generate]: Server - WFS
-%PARAFFIN% -dir %MG_SOURCE%\Server\wfs -alias $(var.MgSource)\Server\wfs -custom SRVWFSFILES -dirref SERVERROOTLOCATION -norecurse %WIX_INC_SERVER%\incWfsFiles.wxs
-
-echo [generate]: CS-Map - dictionaries
-%PARAFFIN% -dir %MG_SOURCE%\CS-Map\Dictionaries -alias $(var.MgSource)\CS-Map\Dictionaries -custom CSMAPDICTFILES -dirref CSMAPLOCATION -ext ASC -ext C -ext CNT -ext GID -ext HLP -ext MAK -ext NMK -ext VCPROJ -ext USER %WIX_INC_CSMAP%\incCSMapDictionaryFiles.wxs
-
-echo [generate]: Web - Apache
-%PARAFFIN% -dir %MG_SOURCE%\Web\Apache24 -alias $(var.MgSource)\Web\Apache24 -custom APACHEFILES -dirref WEBEXTENSIONSLOCATION -dirExclude .svn %WIX_INC_WEB%\incApacheFiles.wxs
-
-echo [generate]: Web - Php TS
-%PARAFFIN% -dir %MG_SOURCE%\Web\Php -alias $(var.MgSource)\Web\Php -custom PHPFILES -dirref WEBEXTENSIONSLOCATION %WIX_INC_WEB%\incPhpFiles.wxs
-
-echo [generate]: Web - Tomcat
-%PARAFFIN% -dir %MG_SOURCE%\Web\Tomcat -alias $(var.MgSource)\Web\Tomcat -custom TOMCATFILES -dirref WEBEXTENSIONSLOCATION %WIX_INC_WEB%\incTomcatFiles.wxs
-
-echo [generate]: Web - DevHttpServer
-%PARAFFIN% -dir %MG_SOURCE%\Web\DevHttpServer -alias $(var.MgSource)\Web\DevHttpServer -custom DEVHTTPSERVER -dirref WEBEXTENSIONSLOCATION %WIX_INC_WEB%\incDevHttpServerFiles.wxs
-
-echo [generate]: Web - Help
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\help -alias $(var.MgSource)\Web\www\help -custom HELPFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incHelpFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (PHP)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\phpsamples -alias $(var.MgSource)\Web\www\phpsamples -custom PHPDEVGUIDEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incPhpDevGuideFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (Java)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\javasamples -alias $(var.MgSource)\Web\www\javasamples -custom JAVADEVGUIDEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incJavaDevGuideFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (DotNet)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\dotnetsamples -alias $(var.MgSource)\Web\www\dotnetsamples -custom DOTNETDEVGUIDEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incDotNetDevGuideFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (PHP)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\phpviewersample -alias $(var.MgSource)\Web\www\phpviewersample -custom PHPVIEWERSAMPLEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incPhpViewerSampleFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (Java)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\javaviewersample -alias $(var.MgSource)\Web\www\javaviewersample -custom JAVAVIEWERSAMPLEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incJavaViewerSampleFiles.wxs
-
-echo [generate]: Web - Developer's Guide Samples (DotNet)
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\dotnetviewersample -alias $(var.MgSource)\Web\www\dotnetviewersample -custom DOTNETVIEWERSAMPLEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incDotNetViewerSampleFiles.wxs
-
-echo [generate]: Web - OpenLayers Samples
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\clientsamples -alias $(var.MgSource)\Web\www\clientsamples -custom OPENLAYERSSAMPLEFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incOpenLayersSampleFiles.wxs
-
-echo [generate]: Web - mapagent
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\mapagent -alias $(var.MgSource)\Web\www\mapagent -custom MAPAGENTFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapAgentFiles.wxs
-
-echo [generate]: Web - mapviewernet
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\mapviewernet -alias $(var.MgSource)\Web\www\mapviewernet -custom MAPVIEWERASPXFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerAspxFiles.wxs
-
-echo [generate]: Web - mapviewerphp
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\mapviewerphp -alias $(var.MgSource)\Web\www\mapviewerphp -custom MAPVIEWERPHPFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerPhpFiles.wxs
-
-echo [generate]: Web - mapviewerjava
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\mapviewerjava -alias $(var.MgSource)\Web\www\mapviewerjava -custom MAPVIEWERJSPFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerJspFiles.wxs
-         
-echo [generate]: Web - fusion
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\fusion -alias $(var.MgSource)\Web\www\fusion -custom FUSIONFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incFusionFiles.wxs
-
-echo [generate]: Web - misc web root
-%PARAFFIN% -dir %MG_SOURCE%\Web\www -alias $(var.MgSource)\Web\www -custom WEBROOTFILES -dirref WEBEXTENSIONSLOCATION -norecurse %WIX_INC_WEB%\incWebRootFiles.wxs
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\viewerfiles -alias $(var.MgSource)\Web\www\viewerfiles -custom MAPVIEWERFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerFiles.wxs 
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\stdicons -alias $(var.MgSource)\Web\www\stdicons -custom MAPVIEWERSTDICONFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerStdiconFiles.wxs 
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\schemareport -alias $(var.MgSource)\Web\www\schemareport -custom MAPVIEWERSCHEMAREPORTFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerSchemareportFiles.wxs 
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\mapadmin -alias $(var.MgSource)\Web\www\mapadmin -custom MAPVIEWERMAPADMINFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerMapAdminFiles.wxs 
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\localized -alias $(var.MgSource)\Web\www\localized -custom MAPVIEWERLOCALIZEDFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incMapViewerLocalizedFiles.wxs 
-%PARAFFIN% -dir %MG_SOURCE%\Web\www\WEB-INF -alias $(var.MgSource)\Web\www\WEB-INF -custom WEBINFFILES -dirref WEBROOTLOCATION %WIX_INC_WEB%\incWebInfFiles.wxs
-
 goto quit
 
 :build
-SET RUN_BUILD=%MSBUILD% /p:OutputName=%INSTALLER_NAME%;MgCulture=%CULTURE%;MgTitle=%INSTALLER_TITLE%;MgVersion=%INSTALLER_VERSION%;MgRegKey=%MG_REG_KEY%;MgPlatform=%PLATFORM_CLR%;Have_ArcSde=%MG_WITH_ARCSDE%
+SET RUN_BUILD=%MSBUILD% /restore /p:Platform=x64;OutputName=%INSTALLER_NAME%;MgCulture=%CULTURE%;MgTitle=%INSTALLER_TITLE%;MgVersion=%INSTALLER_VERSION%;MgRegKey=%MG_REG_KEY%;MgPlatform=%PLATFORM_CLR%;Have_ArcSde=%MG_WITH_ARCSDE%
 if not ""=="%MG_SOURCE_INC%" set RUN_BUILD=%RUN_BUILD%;MgSource=%MG_SOURCE_INC%
 
 echo [build]: Installer 
@@ -363,6 +296,10 @@
 echo [ERROR]: Could not find CS-Map directory at %MG_SOURCE%\CS-Map
 exit /B 1
 
+:error_x64_only
+echo [ERROR]: x86/Win32 installer builds are no longer supported. Please use x64 build environment.
+exit /B 1
+
 :error
 echo [ERROR]: There was an error building the component
 exit /B 1
@@ -380,6 +317,8 @@
 echo ************************************************************************
 echo build.bat [-h]
 echo           [-a=Action]
+echo           [-build=TypeBuild]
+echo           [-platform=PlatformCLR]
 echo           [-lang=Culture]
 echo           [-source=SourceDirectory]
 echo	         [-version=MapGuideVersion]
@@ -387,7 +326,9 @@
 echo	         [-title=MapGuideInstallerTitle]
 echo
 echo Help:	-h
-echo Action: build(default), clean, prepare, generate (only use generate for creating new GIDs, or if not installing from ..\MgDev\Release)
+echo Action: build(default), clean, prepare, generate (generate is now a no-op)
+echo TypeBuild: Release(default) or Debug
+echo PlatformCLR: x64(default)
 echo SourceDirectory: The directory that the MapGuide build process installed the source files into
 echo MapGuideVersion: The version associated with the installer in the format 2.1.0.0
 echo MapGuideInstallerFilename: File name of output .exe in the format MapGuideOpenSource-2.1.0-Something (such as Beta, RC1, Final, etc)



More information about the mapguide-commits mailing list