Author: wrowe
Date: Fri Jul 16 09:27:17 2004
New Revision: 22970

Modified:
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp   
(contents, props changed)
   
incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Helpers/_gcA_gcA_gcString.cs 
  (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Host.h   (contents, props 
changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/HostFactory.h   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.cpp   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.h   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/http_header_arrays.h   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/LICENSE   (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/NOTICE   (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/README   (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/aspnet.conf   (contents, props 
changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer.isv   (contents, props 
changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/.cvsignore   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ActionText.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminExecuteSequence.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminUISequence.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtExecuteSequence.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtUISequence.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppId.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppSearch.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/BBControl.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Billboard.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Binary.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/BindImage.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/CCPSearch.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/CheckBox.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Class.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ComboBox.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/CompLocator.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Complus.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Component.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Condition.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Control.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlCondition.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlEvent.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/CreateFolder.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/CustomAction.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Dialog.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Directory.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/DrLocator.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/DuplicateFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Environment.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Error.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/EventMapping.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Extension.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Feature.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/FeatureComponents.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/File.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/FileSFPCatalog.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Font.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISComponentExtended.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDLLWrapper.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDependency.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDisk1File.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDynamicFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISFeatureMergeModules.idt  
 (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISInstallScriptAction.idt  
 (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLanguage.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLinkerLibrary.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalControl.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalDialog.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDisk.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDiskFeatures.idt  
 (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISMergeModule.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObject.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObjectProperty.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISPathVariable.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfiguration.idt 
  (contents, props changed)
   
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfigurationProperty.idt
   (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISRelease.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISReleaseExtended.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISScriptFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSelfReg.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSetupFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISStorages.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISString.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRoot.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRootAppMaps.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Icon.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniFile.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniLocator.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallExecuteSequence.idt 
  (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallShield.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallUISequence.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/IsolatedComponent.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/LaunchCondition.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListBox.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListView.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/LockPermissions.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MIME.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Media.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MoveFile.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssembly.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssemblyName.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalCertificate.idt  
 (contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalSignature.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiFileHash.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCAttribute.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDataSource.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDriver.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCSourceAttribute.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCTranslator.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Patch.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/PatchPackage.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ProgId.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Property.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/PublishComponent.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/RadioButton.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/RegLocator.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Registry.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveIniFile.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveRegistry.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ReserveCost.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/SFPCatalog.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/SelfReg.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceControl.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceInstall.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Shortcut.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Signature.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/TextStyle.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/TypeLib.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/UIText.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Upgrade.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/Verb.idt   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/_SummaryInformation.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/installer/_Validation.idt   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/mod_aspdotnet.sln   (contents, props 
changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/.cvsignore   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.c   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.h   (contents, 
props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.c   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.vcproj   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/release.bat   (contents, props 
changed)
Log:
Attempt to undo the crlf damage by recommiting with svn:eol-style=native

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h     Fri Jul 
16 09:27:17 2004
@@ -1,95 +1,95 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Apache.Web.h base COM interop interfaces for Apache 2.0
-
-
-#ifndef APACHE_WEB_VERSION
-#define APACHE_WEB_VERSION "2.0.0.2000"
-#endif
-
-#ifndef APACHE_WEB_H
-#define APACHE_WEB_H
-
-// We don't care about unused arguments, 
-// or conditional expression constant evaluation
-#pragma warning(disable: 4100 4127)
-
-// Apache namespace 
-//    Native namespace : pure ap/apr API and structures
-//    Web namespace    : interface to Server.Web.Hosting engine
-//       HostFactory [Implements IApacheWebHostFactory] 
-//          CreateHost singleton
-//       Host [Implements IApacheWebHost]       
-//          HandleRequest instance creation
-//       WorkerRequest [Implements IApacheWebWorkerRequest] 
-//          A single .Web request object
-
-namespace Apache {
-#pragma unmanaged
-    namespace Native {
-#include "httpd.h"
-#include "http_core.h"
-#include "http_config.h"
-#include "http_log.h"
-#include "http_protocol.h"
-#include "apr_strings.h"
-#include "apr_tables.h"
-    }
-#pragma managed
-}
-
-using namespace Apache::Native;
-
-using namespace System;
-using namespace System::IO;
-using namespace System::Text;
-using namespace System::Web;
-using namespace System::Web::Hosting;
-using namespace System::Runtime::InteropServices;
-using namespace System::Runtime::Remoting::Lifetime;
-//using namespace System::Diagnostics;
-
-#using "Apache.Web.Helpers.netmodule"
-
-namespace Apache
-{
-  namespace Web
-  {
-    // Forward declare a Host
-    public __gc class Host;
-    
-    // Define using dispinterfaces for COM transition to ASP.Net
-    [InterfaceType(ComInterfaceType::InterfaceIsIDispatch)]
-    public __gc __interface IApacheWebHostFactory
-    {
-    public:
-         HRESULT Configure(String *path);
-         void Destroy(void);
-         // Returns HostKey to pass on to HandleHostRequest()
-         int CreateHost(String *virtualPath, String *physicalPath, int Server);
-         // Returns HTTP Status from ApacheWebHost::HandleRequest
-         int HandleHostRequest(int HostKey, int Req);
-    };
-  }
-}
-
-#include "WorkerRequest.h"
-#include "Host.h"
-#include "HostFactory.h"
-
-// End of Apache::Web Namespace declarations
-
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache.Web.h base COM interop interfaces for Apache 2.0
+
+
+#ifndef APACHE_WEB_VERSION
+#define APACHE_WEB_VERSION "2.0.0.2000"
+#endif
+
+#ifndef APACHE_WEB_H
+#define APACHE_WEB_H
+
+// We don't care about unused arguments, 
+// or conditional expression constant evaluation
+#pragma warning(disable: 4100 4127)
+
+// Apache namespace 
+//    Native namespace : pure ap/apr API and structures
+//    Web namespace    : interface to Server.Web.Hosting engine
+//       HostFactory [Implements IApacheWebHostFactory] 
+//          CreateHost singleton
+//       Host [Implements IApacheWebHost]       
+//          HandleRequest instance creation
+//       WorkerRequest [Implements IApacheWebWorkerRequest] 
+//          A single .Web request object
+
+namespace Apache {
+#pragma unmanaged
+    namespace Native {
+#include "httpd.h"
+#include "http_core.h"
+#include "http_config.h"
+#include "http_log.h"
+#include "http_protocol.h"
+#include "apr_strings.h"
+#include "apr_tables.h"
+    }
+#pragma managed
+}
+
+using namespace Apache::Native;
+
+using namespace System;
+using namespace System::IO;
+using namespace System::Text;
+using namespace System::Web;
+using namespace System::Web::Hosting;
+using namespace System::Runtime::InteropServices;
+using namespace System::Runtime::Remoting::Lifetime;
+//using namespace System::Diagnostics;
+
+#using "Apache.Web.Helpers.netmodule"
+
+namespace Apache
+{
+  namespace Web
+  {
+    // Forward declare a Host
+    public __gc class Host;
+    
+    // Define using dispinterfaces for COM transition to ASP.Net
+    [InterfaceType(ComInterfaceType::InterfaceIsIDispatch)]
+    public __gc __interface IApacheWebHostFactory
+    {
+    public:
+         HRESULT Configure(String *path);
+         void Destroy(void);
+         // Returns HostKey to pass on to HandleHostRequest()
+         int CreateHost(String *virtualPath, String *physicalPath, int Server);
+         // Returns HTTP Status from ApacheWebHost::HandleRequest
+         int HandleHostRequest(int HostKey, int Req);
+    };
+  }
+}
+
+#include "WorkerRequest.h"
+#include "Host.h"
+#include "HostFactory.h"
+
+// End of Apache::Web Namespace declarations
+
 #endif // APACHE_WEB_H

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj        
Fri Jul 16 09:27:17 2004
@@ -1,180 +1,180 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.00"
-       Name="Apache.Web"
-       ProjectGUID="{4B4F627E-C6DE-4614-9135-306D94F8755B}"
-       Keyword="ManagedCProj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="..\Debug"
-                       IntermediateDirectory="..\Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2"
-                       ManagedExtensions="TRUE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               
AdditionalIncludeDirectories="&quot;$(APACHE_PATH)\include&quot;"
-                               AdditionalUsingDirectories="$(OutDir)"
-                               PreprocessorDefinitions="WIN32;_DEBUG"
-                               MinimalRebuild="FALSE"
-                               ExceptionHandling="FALSE"
-                               RuntimeLibrary="1"
-                               UsePrecompiledHeader="0"
-                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
-                               WarningLevel="4"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               RegisterOutput="FALSE"
-                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib"
-                               OutputFile="$(OutDir)/$(ProjectName).dll"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
-                               IgnoreDefaultLibraryNames=""
-                               AddModuleNamesToAssembly=""
-                               
DelayLoadDLLs="libapr.dll;libaprutil.dll;libhttpd.dll"
-                               TypeLibraryFile=""
-                               GenerateDebugInformation="TRUE"
-                               SupportUnloadOfDelayLoadedDLL="FALSE"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               Description="Exporting .tlb and Installing 
debug components to the GAC"
-                               CommandLine="regasm /nologo 
/tlb:&quot;$(IntDir)/Apache.Web.tlb&quot; &quot;$(OutDir)\Apache.Web.dll&quot; 
&amp;&amp; gacutil /ir &quot;$(OutDir)\Apache.Web.dll&quot; FILEPATH 
&quot;$(OutDir)\Apache.Web.dll&quot; Apache.Web"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="..\Release"
-                       IntermediateDirectory="..\Release"
-                       ConfigurationType="2"
-                       CharacterSet="2"
-                       ManagedExtensions="TRUE"
-                       WholeProgramOptimization="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               InlineFunctionExpansion="1"
-                               
AdditionalIncludeDirectories="&quot;$(APACHE_PATH)\include&quot;"
-                               AdditionalUsingDirectories="$(OutDir)"
-                               PreprocessorDefinitions="WIN32;NDEBUG"
-                               ExceptionHandling="FALSE"
-                               RuntimeLibrary="0"
-                               BufferSecurityCheck="TRUE"
-                               UsePrecompiledHeader="0"
-                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
-                               WarningLevel="4"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib"
-                               OutputFile="$(OutDir)/$(ProjectName).dll"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
-                               IgnoreDefaultLibraryNames=""
-                               AddModuleNamesToAssembly=""
-                               
DelayLoadDLLs="libapr.dll;libaprutil.dll;libhttpd.dll"
-                               GenerateDebugInformation="FALSE"
-                               GenerateMapFile="TRUE"
-                               OptimizeReferences="2"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               Description="Exporting .tlb"
-                               CommandLine="regasm /nologo 
/tlb:&quot;$(IntDir)/Apache.Web.tlb&quot; &quot;$(OutDir)\Apache.Web.dll&quot; 
&amp;&amp; regasm /nologo /unregister &quot;$(OutDir)\Apache.Web.dll&quot;"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-       </Configurations>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
-                       <File
-                               RelativePath="AssemblyInfo.cpp">
-                       </File>
-                       <File
-                               RelativePath="WorkerRequest.cpp">
-                       </File>
-                       <File
-                               RelativePath="Helpers\_gcA_gcA_gcString.cs">
-                               <FileConfiguration
-                                       Name="Debug|Win32">
-                                       <Tool
-                                               Name="VCCustomBuildTool"
-                                               Description="Compiling 
Apache.Web.Helpers"
-                                               CommandLine="csc.exe /nologo 
/w:4 /debug+ /debug:full /o- /incr- /t:module 
/out:&quot;$(OutDir)\Apache.Web.Helpers.netmodule&quot; $(InputPath)
-"
-                                               
Outputs="$(OutDir)/Apache.Web.Helpers.netmodule"/>
-                               </FileConfiguration>
-                               <FileConfiguration
-                                       Name="Release|Win32">
-                                       <Tool
-                                               Name="VCCustomBuildTool"
-                                               Description="Compiling 
Apache.Web.Helpers"
-                                               CommandLine="csc.exe /nologo 
/w:4 /debug- /o+ /t:module 
/out:&quot;$(OutDir)\Apache.Web.Helpers.netmodule&quot; $(InputPath)
-"
-                                               
Outputs="$(OutDir)/Apache.Web.Helpers.netmodule"/>
-                               </FileConfiguration>
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc">
-                       <File
-                               RelativePath="Apache.Web.h">
-                       </File>
-                       <File
-                               RelativePath="Host.h">
-                       </File>
-                       <File
-                               RelativePath="HostFactory.h">
-                       </File>
-                       <File
-                               RelativePath="WorkerRequest.h">
-                       </File>
-                       <File
-                               RelativePath="http_header_arrays.h">
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Resource Files"
-                       
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
-               </Filter>
-               <File
-                       RelativePath="ReadMe.txt">
-               </File>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="7.00"
+       Name="Apache.Web"
+       ProjectGUID="{4B4F627E-C6DE-4614-9135-306D94F8755B}"
+       Keyword="ManagedCProj">
+       <Platforms>
+               <Platform
+                       Name="Win32"/>
+       </Platforms>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="..\Debug"
+                       IntermediateDirectory="..\Debug"
+                       ConfigurationType="2"
+                       CharacterSet="2"
+                       ManagedExtensions="TRUE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               
AdditionalIncludeDirectories="&quot;$(APACHE_PATH)\include&quot;"
+                               AdditionalUsingDirectories="$(OutDir)"
+                               PreprocessorDefinitions="WIN32;_DEBUG"
+                               MinimalRebuild="FALSE"
+                               ExceptionHandling="FALSE"
+                               RuntimeLibrary="1"
+                               UsePrecompiledHeader="0"
+                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
+                               WarningLevel="4"
+                               DebugInformationFormat="3"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               RegisterOutput="FALSE"
+                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib"
+                               OutputFile="$(OutDir)/$(ProjectName).dll"
+                               LinkIncremental="1"
+                               SuppressStartupBanner="TRUE"
+                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
+                               IgnoreDefaultLibraryNames=""
+                               AddModuleNamesToAssembly=""
+                               
DelayLoadDLLs="libapr.dll;libaprutil.dll;libhttpd.dll"
+                               TypeLibraryFile=""
+                               GenerateDebugInformation="TRUE"
+                               SupportUnloadOfDelayLoadedDLL="FALSE"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="Exporting .tlb and Installing 
debug components to the GAC"
+                               CommandLine="regasm /nologo 
/tlb:&quot;$(IntDir)/Apache.Web.tlb&quot; &quot;$(OutDir)\Apache.Web.dll&quot; 
&amp;&amp; gacutil /ir &quot;$(OutDir)\Apache.Web.dll&quot; FILEPATH 
&quot;$(OutDir)\Apache.Web.dll&quot; Apache.Web"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="..\Release"
+                       IntermediateDirectory="..\Release"
+                       ConfigurationType="2"
+                       CharacterSet="2"
+                       ManagedExtensions="TRUE"
+                       WholeProgramOptimization="FALSE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               InlineFunctionExpansion="1"
+                               
AdditionalIncludeDirectories="&quot;$(APACHE_PATH)\include&quot;"
+                               AdditionalUsingDirectories="$(OutDir)"
+                               PreprocessorDefinitions="WIN32;NDEBUG"
+                               ExceptionHandling="FALSE"
+                               RuntimeLibrary="0"
+                               BufferSecurityCheck="TRUE"
+                               UsePrecompiledHeader="0"
+                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
+                               WarningLevel="4"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib"
+                               OutputFile="$(OutDir)/$(ProjectName).dll"
+                               LinkIncremental="1"
+                               SuppressStartupBanner="TRUE"
+                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
+                               IgnoreDefaultLibraryNames=""
+                               AddModuleNamesToAssembly=""
+                               
DelayLoadDLLs="libapr.dll;libaprutil.dll;libhttpd.dll"
+                               GenerateDebugInformation="FALSE"
+                               GenerateMapFile="TRUE"
+                               OptimizeReferences="2"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="Exporting .tlb"
+                               CommandLine="regasm /nologo 
/tlb:&quot;$(IntDir)/Apache.Web.tlb&quot; &quot;$(OutDir)\Apache.Web.dll&quot; 
&amp;&amp; regasm /nologo /unregister &quot;$(OutDir)\Apache.Web.dll&quot;"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+       </Configurations>
+       <Files>
+               <Filter
+                       Name="Source Files"
+                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
+                       <File
+                               RelativePath="AssemblyInfo.cpp">
+                       </File>
+                       <File
+                               RelativePath="WorkerRequest.cpp">
+                       </File>
+                       <File
+                               RelativePath="Helpers\_gcA_gcA_gcString.cs">
+                               <FileConfiguration
+                                       Name="Debug|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Compiling 
Apache.Web.Helpers"
+                                               CommandLine="csc.exe /nologo 
/w:4 /debug+ /debug:full /o- /incr- /t:module 
/out:&quot;$(OutDir)\Apache.Web.Helpers.netmodule&quot; $(InputPath)
+"
+                                               
Outputs="$(OutDir)/Apache.Web.Helpers.netmodule"/>
+                               </FileConfiguration>
+                               <FileConfiguration
+                                       Name="Release|Win32">
+                                       <Tool
+                                               Name="VCCustomBuildTool"
+                                               Description="Compiling 
Apache.Web.Helpers"
+                                               CommandLine="csc.exe /nologo 
/w:4 /debug- /o+ /t:module 
/out:&quot;$(OutDir)\Apache.Web.Helpers.netmodule&quot; $(InputPath)
+"
+                                               
Outputs="$(OutDir)/Apache.Web.Helpers.netmodule"/>
+                               </FileConfiguration>
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Header Files"
+                       Filter="h;hpp;hxx;hm;inl;inc">
+                       <File
+                               RelativePath="Apache.Web.h">
+                       </File>
+                       <File
+                               RelativePath="Host.h">
+                       </File>
+                       <File
+                               RelativePath="HostFactory.h">
+                       </File>
+                       <File
+                               RelativePath="WorkerRequest.h">
+                       </File>
+                       <File
+                               RelativePath="http_header_arrays.h">
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Resource Files"
+                       
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
+               </Filter>
+               <File
+                       RelativePath="ReadMe.txt">
+               </File>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp Fri Jul 
16 09:27:17 2004
@@ -1,81 +1,81 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// AssemblyInfo.cpp support for Apache.Web Assembly
-
-
-// We aren't looking for much beyond the version, 
-// so lie that this header was previously loaded
-#define APACHE_WEB_H
-#include "Apache.Web.h"
-
-#using <mscorlib.dll>
-
-using namespace System::Reflection;
-using namespace System::Runtime::CompilerServices;
-
-//
-// General Information about an assembly is controlled through the following 
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-//
-[assembly:AssemblyTitleAttribute("Apache.Web")];
-[assembly:AssemblyDescriptionAttribute("Apache Web Hosting Architecture for 
Microsoft ASP.NET")];
-[assembly:AssemblyCompanyAttribute("Apache Software Foundation")];
-[assembly:AssemblyProductAttribute("mod_aspdotnet")];
-[assembly:AssemblyCopyrightAttribute("Copyright © 2002-2004 Apache Software 
Foundation")];
-[assembly:AssemblyTrademarkAttribute("")];
-[assembly:AssemblyCultureAttribute("")];
-[assembly:AssemblyConfigurationAttribute("")];
-
-//
-// Version information for an assembly consists of the following four values:
-//
-//      Major Version
-//      Minor Version 
-//      Build Number
-//      Revision
-//
-// You can specify all the value or you can default the Revision and Build 
Numbers 
-// by using the '*' as shown below:
-
-[assembly:AssemblyVersionAttribute(APACHE_WEB_VERSION)];
-
-//
-// In order to sign your assembly you must specify a key to use. Refer to the 
-// Microsoft .NET Framework documentation for more information on assembly 
signing.
-//
-// Use the attributes below to control which key is used for signing. 
-//
-// Notes: 
-//   (*) If no key is specified, the assembly is not signed.
-//   (*) KeyName refers to a key that has been installed in the Crypto Service
-//       Provider (CSP) on your machine. KeyFile refers to a file which 
contains
-//       a key.
-//   (*) If the KeyFile and the KeyName values are both specified, the 
-//       following processing occurs:
-//       (1) If the KeyName can be found in the CSP, that key is used.
-//       (2) If the KeyName does not exist and the KeyFile does exist, the key 
-//           in the KeyFile is installed into the CSP and used.
-//   (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) 
utility.
-//        When specifying the KeyFile, the location of the KeyFile should be
-//        relative to the project directory.
-//   (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
-//       documentation for more information on this.
-//
-[assembly:AssemblyDelaySignAttribute(false)];
-[assembly:AssemblyKeyFileAttribute("Apache.Web.snk")];
-[assembly:AssemblyKeyNameAttribute("")];
-
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// AssemblyInfo.cpp support for Apache.Web Assembly
+
+
+// We aren't looking for much beyond the version, 
+// so lie that this header was previously loaded
+#define APACHE_WEB_H
+#include "Apache.Web.h"
+
+#using <mscorlib.dll>
+
+using namespace System::Reflection;
+using namespace System::Runtime::CompilerServices;
+
+//
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+//
+[assembly:AssemblyTitleAttribute("Apache.Web")];
+[assembly:AssemblyDescriptionAttribute("Apache Web Hosting Architecture for 
Microsoft ASP.NET")];
+[assembly:AssemblyCompanyAttribute("Apache Software Foundation")];
+[assembly:AssemblyProductAttribute("mod_aspdotnet")];
+[assembly:AssemblyCopyrightAttribute("Copyright © 2002-2004 Apache Software 
Foundation")];
+[assembly:AssemblyTrademarkAttribute("")];
+[assembly:AssemblyCultureAttribute("")];
+[assembly:AssemblyConfigurationAttribute("")];
+
+//
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the value or you can default the Revision and Build 
Numbers 
+// by using the '*' as shown below:
+
+[assembly:AssemblyVersionAttribute(APACHE_WEB_VERSION)];
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the 
+// Microsoft .NET Framework documentation for more information on assembly 
signing.
+//
+// Use the attributes below to control which key is used for signing. 
+//
+// Notes: 
+//   (*) If no key is specified, the assembly is not signed.
+//   (*) KeyName refers to a key that has been installed in the Crypto Service
+//       Provider (CSP) on your machine. KeyFile refers to a file which 
contains
+//       a key.
+//   (*) If the KeyFile and the KeyName values are both specified, the 
+//       following processing occurs:
+//       (1) If the KeyName can be found in the CSP, that key is used.
+//       (2) If the KeyName does not exist and the KeyFile does exist, the key 
+//           in the KeyFile is installed into the CSP and used.
+//   (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) 
utility.
+//        When specifying the KeyFile, the location of the KeyFile should be
+//        relative to the project directory.
+//   (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+//       documentation for more information on this.
+//
+[assembly:AssemblyDelaySignAttribute(false)];
+[assembly:AssemblyKeyFileAttribute("Apache.Web.snk")];
+[assembly:AssemblyKeyNameAttribute("")];
+

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Helpers/_gcA_gcA_gcString.cs
==============================================================================
--- 
incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Helpers/_gcA_gcA_gcString.cs 
    (original)
+++ 
incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Helpers/_gcA_gcA_gcString.cs 
    Fri Jul 16 09:27:17 2004
@@ -1,42 +1,42 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Helper._gcA_gcA_gcStringHelper.cs to work around C++ compiler bug
-
-
-using System;
-
-namespace Apache.Web.Helpers 
-{
-       internal class _gcA_gcA_gcString
-       {
-               private String [][] value;
-
-               public _gcA_gcA_gcString(int nelts)
-               {
-                       value = new String[nelts][];
-               }
-
-               public void Set(int elt, String [] val)
-               {
-                       value[elt] = val;
-               }
-
-               public String[][] Value()
-               {
-                       return value;
-               }
-       }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Helper._gcA_gcA_gcStringHelper.cs to work around C++ compiler bug
+
+
+using System;
+
+namespace Apache.Web.Helpers 
+{
+       internal class _gcA_gcA_gcString
+       {
+               private String [][] value;
+
+               public _gcA_gcA_gcString(int nelts)
+               {
+                       value = new String[nelts][];
+               }
+
+               public void Set(int elt, String [] val)
+               {
+                       value[elt] = val;
+               }
+
+               public String[][] Value()
+               {
+                       return value;
+               }
+       }
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Host.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Host.h   (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Host.h   Fri Jul 16 
09:27:17 2004
@@ -1,180 +1,180 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Apache::Web::Host.h managed interface for mod_aspdotnet connector namespaces
-
-
-#pragma once
-
-#ifndef APACHE_WEB_H
-#error "#include \"Apache.Web.h\" ... not Host.h!"
-#endif
-#include <stdarg.h>
-
-namespace Apache
-{
-  namespace Web
-  {
-    public __gc class HostFactory;
-
-    public __gc class Host : public MarshalByRefObject
-    {
-    private:
-        // Create our utf8-encoding to handle utf8->unicode names
-        static Encoding *utf8_encoding = new UTF8Encoding(false);
-
-        // our default cultureNeutral object for proper strcmp's
-        static System::Globalization::CultureInfo *neutralCulture
-            = new System::Globalization::CultureInfo("");
-
-        // No trailing slash for this URI-path
-        String *virtualPath;
-        // No trailing backslash for this filesystem path
-        String *physicalPath;
-
-        HostFactory *thisFactory;
-        int thisHostKey;
-
-    protected:
-        void ~Host();
-
-    public:
-        Host()
-        {
-            thisFactory = NULL;
-            thisHostKey = 0;
-        }
-
-        virtual Object* InitializeLifetimeService()
-        {
-            ILease *lease 
-                = 
__try_cast<ILease*>(MarshalByRefObject::InitializeLifetimeService());
-            if (lease->CurrentState == 
System::Runtime::Remoting::Lifetime::LeaseState::Initial)  {
-                lease->InitialLeaseTime = TimeSpan::FromDays(366);
-                lease->SponsorshipTimeout = TimeSpan::FromMinutes(2);
-                lease->RenewOnCallTime = TimeSpan::FromMinutes(1);
-            }
-            return lease;
-        }
-
-        // Internal accessor for new Host construction
-        void Configure(String *VirtualPath, String *PhysicalPath,
-                       HostFactory *Factory, int HostKey) 
-        {
-            //
-            // The ApplicationHost::CreateApplicationHost() constructor
-            // doesn't provide us an opportunity to deal with additional
-            // arguments to our Host object constructor; Configure() makes
-            // up for that shortcoming after the Host is instantiated.
-            //
-            thisFactory = Factory;
-            thisHostKey = HostKey;
-            physicalPath = PhysicalPath->Replace(L'/', L'\\');
-            virtualPath = VirtualPath->Replace(L'\\', L'/');
-            if (physicalPath->EndsWith(L"\\")) {
-                physicalPath
-                    = physicalPath->Substring(0, VirtualPath->get_Length() - 
1);
-            }
-            if (virtualPath->EndsWith(L"/")) {
-                virtualPath
-                    = virtualPath->Substring(0, VirtualPath->get_Length() - 1);
-            }
-        }
-
-        // Reports an error message in the error log
-        void LogRequestError(String *msg, int loglevel, int rv, request_rec 
__nogc *rr)
-        {
-            unsigned char avalue __gc[] 
-                = utf8_encoding->GetBytes(msg);
-            unsigned char __pin *msg_text = &avalue[0];
-            ap_log_rerror("Apache.Web", 0, loglevel | (rv ? 0 : 
APLOG_NOERRNO), rv, rr,
-                          "mod_aspdotnet: %s", (char*) msg_text, NULL);
-        }
-
-        // Instantiates a new Apache.Web.WorkerRequest object from the given 
request_rec*
-        int HandleRequest(int Req) {
-            try {
-                WorkerRequest *request = new WorkerRequest(Req, this);
-                int status = request->Handler();
-                return status;
-            }
-            catch (Exception *e) {
-                LogRequestError(L"Failed to create ASP.NET Request, "
-                                L"Exception follows", APLOG_ERR, 0,
-                                (request_rec __nogc *)Req);
-                LogRequestError(e->ToString(), APLOG_ERR, 0, 
-                                (request_rec __nogc *)Req);
-                return 500;
-            }
-        }
-
-        // Returns the Virtual URI-path of this host, with no trailing slash
-        String *GetVirtualPath(void) {
-            return virtualPath;
-        }
-
-        // Returns the Physical filesystem path of this host, with no trailing 
slash
-        String *GetPhysicalPath(void) {
-            return physicalPath;
-        }
-
-        // Translate the given URI-path in this host's Virtual path to a 
filesystem path
-        String *MapPath(String *path, request_rec __nogc *rr) {
-            //
-            // ...relative to this host's Physical path.  The function returns 
NULL 
-            // if the given URI-path is outside of the Virtual path of this 
host. 
-            //
-            String *buildpath;
-
-            if (!path || (path->get_Length() <= 0)) {
-                return physicalPath;
-            }
-            else {
-                buildpath = path->Replace(L'/', L'\\');
-            }
-
-            String *testpath = path->Replace(L'\\', L'/');
-
-            if (testpath->get_Chars(0) == L'/') {
-                if (String::Compare(testpath, 0, virtualPath, 0, 
-                                    virtualPath->get_Length(), 
-                                    true, neutralCulture)) {
-                    String *res = String::Concat(L"MapPath: could not map ", 
path, 
-                                                 L" within ", virtualPath);
-                    LogRequestError(res, APLOG_DEBUG, 0, rr);
-                    return NULL;
-                }
-                else {
-                    if (testpath->get_Length() > virtualPath->get_Length()) {
-                        buildpath = 
-                            String::Concat(physicalPath,
-                                           buildpath->Substring(
-                                               virtualPath->get_Length()));
-                    }
-                    else {
-                        buildpath = physicalPath;
-                    }
-                }
-            }
-            else {
-                buildpath = String::Concat(physicalPath, L"\\",
-                                           buildpath->Substring(
-                                               virtualPath->get_Length()));
-            }
-            return buildpath;
-        }
-    };
-  }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache::Web::Host.h managed interface for mod_aspdotnet connector namespaces
+
+
+#pragma once
+
+#ifndef APACHE_WEB_H
+#error "#include \"Apache.Web.h\" ... not Host.h!"
+#endif
+#include <stdarg.h>
+
+namespace Apache
+{
+  namespace Web
+  {
+    public __gc class HostFactory;
+
+    public __gc class Host : public MarshalByRefObject
+    {
+    private:
+        // Create our utf8-encoding to handle utf8->unicode names
+        static Encoding *utf8_encoding = new UTF8Encoding(false);
+
+        // our default cultureNeutral object for proper strcmp's
+        static System::Globalization::CultureInfo *neutralCulture
+            = new System::Globalization::CultureInfo("");
+
+        // No trailing slash for this URI-path
+        String *virtualPath;
+        // No trailing backslash for this filesystem path
+        String *physicalPath;
+
+        HostFactory *thisFactory;
+        int thisHostKey;
+
+    protected:
+        void ~Host();
+
+    public:
+        Host()
+        {
+            thisFactory = NULL;
+            thisHostKey = 0;
+        }
+
+        virtual Object* InitializeLifetimeService()
+        {
+            ILease *lease 
+                = 
__try_cast<ILease*>(MarshalByRefObject::InitializeLifetimeService());
+            if (lease->CurrentState == 
System::Runtime::Remoting::Lifetime::LeaseState::Initial)  {
+                lease->InitialLeaseTime = TimeSpan::FromDays(366);
+                lease->SponsorshipTimeout = TimeSpan::FromMinutes(2);
+                lease->RenewOnCallTime = TimeSpan::FromMinutes(1);
+            }
+            return lease;
+        }
+
+        // Internal accessor for new Host construction
+        void Configure(String *VirtualPath, String *PhysicalPath,
+                       HostFactory *Factory, int HostKey) 
+        {
+            //
+            // The ApplicationHost::CreateApplicationHost() constructor
+            // doesn't provide us an opportunity to deal with additional
+            // arguments to our Host object constructor; Configure() makes
+            // up for that shortcoming after the Host is instantiated.
+            //
+            thisFactory = Factory;
+            thisHostKey = HostKey;
+            physicalPath = PhysicalPath->Replace(L'/', L'\\');
+            virtualPath = VirtualPath->Replace(L'\\', L'/');
+            if (physicalPath->EndsWith(L"\\")) {
+                physicalPath
+                    = physicalPath->Substring(0, VirtualPath->get_Length() - 
1);
+            }
+            if (virtualPath->EndsWith(L"/")) {
+                virtualPath
+                    = virtualPath->Substring(0, VirtualPath->get_Length() - 1);
+            }
+        }
+
+        // Reports an error message in the error log
+        void LogRequestError(String *msg, int loglevel, int rv, request_rec 
__nogc *rr)
+        {
+            unsigned char avalue __gc[] 
+                = utf8_encoding->GetBytes(msg);
+            unsigned char __pin *msg_text = &avalue[0];
+            ap_log_rerror("Apache.Web", 0, loglevel | (rv ? 0 : 
APLOG_NOERRNO), rv, rr,
+                          "mod_aspdotnet: %s", (char*) msg_text, NULL);
+        }
+
+        // Instantiates a new Apache.Web.WorkerRequest object from the given 
request_rec*
+        int HandleRequest(int Req) {
+            try {
+                WorkerRequest *request = new WorkerRequest(Req, this);
+                int status = request->Handler();
+                return status;
+            }
+            catch (Exception *e) {
+                LogRequestError(L"Failed to create ASP.NET Request, "
+                                L"Exception follows", APLOG_ERR, 0,
+                                (request_rec __nogc *)Req);
+                LogRequestError(e->ToString(), APLOG_ERR, 0, 
+                                (request_rec __nogc *)Req);
+                return 500;
+            }
+        }
+
+        // Returns the Virtual URI-path of this host, with no trailing slash
+        String *GetVirtualPath(void) {
+            return virtualPath;
+        }
+
+        // Returns the Physical filesystem path of this host, with no trailing 
slash
+        String *GetPhysicalPath(void) {
+            return physicalPath;
+        }
+
+        // Translate the given URI-path in this host's Virtual path to a 
filesystem path
+        String *MapPath(String *path, request_rec __nogc *rr) {
+            //
+            // ...relative to this host's Physical path.  The function returns 
NULL 
+            // if the given URI-path is outside of the Virtual path of this 
host. 
+            //
+            String *buildpath;
+
+            if (!path || (path->get_Length() <= 0)) {
+                return physicalPath;
+            }
+            else {
+                buildpath = path->Replace(L'/', L'\\');
+            }
+
+            String *testpath = path->Replace(L'\\', L'/');
+
+            if (testpath->get_Chars(0) == L'/') {
+                if (String::Compare(testpath, 0, virtualPath, 0, 
+                                    virtualPath->get_Length(), 
+                                    true, neutralCulture)) {
+                    String *res = String::Concat(L"MapPath: could not map ", 
path, 
+                                                 L" within ", virtualPath);
+                    LogRequestError(res, APLOG_DEBUG, 0, rr);
+                    return NULL;
+                }
+                else {
+                    if (testpath->get_Length() > virtualPath->get_Length()) {
+                        buildpath = 
+                            String::Concat(physicalPath,
+                                           buildpath->Substring(
+                                               virtualPath->get_Length()));
+                    }
+                    else {
+                        buildpath = physicalPath;
+                    }
+                }
+            }
+            else {
+                buildpath = String::Concat(physicalPath, L"\\",
+                                           buildpath->Substring(
+                                               virtualPath->get_Length()));
+            }
+            return buildpath;
+        }
+    };
+  }
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/HostFactory.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/HostFactory.h    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/HostFactory.h    Fri Jul 
16 09:27:17 2004
@@ -1,288 +1,288 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Apache::Web::HostFactory.h managed host engine for mod_aspdotnet 
initialization
-
-
-#pragma once
-
-#ifndef APACHE_WEB_H
-#error "#include \"Apache.Web.h\" ... not HostFactory.h!"
-#endif
-
-namespace Apache
-{
-  namespace Web
-  {
-    // Forward declare a Host
-    public __gc class Host;
-
-    // The HostFactory engine to instantiate new Host objects
-    public __gc class HostFactory 
-        : public IApacheWebHostFactory, public MarshalByRefObject
-    {
-    private:
-        // Create our utf8-encoding to handle utf8->unicode names
-        Encoding* utf8_encoding;
-        ArrayList* hostURI;
-        ArrayList* hostDir;
-        ArrayList* hostObj;
-        ArrayList* hostSvr;
-
-    private:
-        // Reports an error message in the error log
-        void LogServerError(String *msg, int loglevel, int rv, server_rec 
__nogc *s)
-        {
-            unsigned char avalue __gc[] = utf8_encoding->GetBytes(msg);
-            unsigned char __pin *msg_text = &avalue[0];
-            ap_log_error("Apache.Web", 0, loglevel|(rv ? 0 : APLOG_NOERRNO),
-                         rv, s, "mod_aspdotnet: %s", (char*) msg_text, NULL);
-        }
-
-
-    public:
-        HostFactory() {
-            utf8_encoding = new UTF8Encoding(false);
-            hostURI = new ArrayList();
-            hostDir = new ArrayList();
-            hostObj = new ArrayList();
-            hostSvr = new ArrayList();
-        }
-
-        virtual Object* InitializeLifetimeService()
-        {
-            // Indestructable, for good reason
-            return NULL;
-        }
-
-        // Returns E_FAIL if HostFactory cannot be configured; path is a noop 
argument
-        HRESULT Configure(String *path) 
-        {
-#ifdef _DEBUG
-            if (!WorkerRequest::CodeValidate())
-                return E_FAIL;
-            else
-#endif
-                return S_OK;
-        }
-
-        void Destroy(void)
-        {
-            if (utf8_encoding) {
-                utf8_encoding = NULL;
-                int hosts = hostObj->get_Count();
-                for (int i = 0; i < hosts; ++i)
-                {
-                    // Don't fault if the hostObj is already destroyed
-                    try {
-                        hostObj->set_Item(i, NULL);
-                    }
-                    catch (Exception * /*e*/) {
-                    }
-                }
-                hostURI = NULL;
-                hostDir = NULL;
-                hostObj = NULL;
-                hostSvr = NULL;
-            }
-        }
-
-        // Instantiate a new Host object; trailing slashes are acceptable
-        bool ConnectHost(int HostKey) 
-        {
-            Type* hostType = __typeof(Host);
-            Object* newHost;
-
-            try {
-                newHost = ApplicationHost::CreateApplicationHost(hostType,
-                             __try_cast<String*>(hostURI->get_Item(HostKey)),
-                             __try_cast<String*>(hostDir->get_Item(HostKey)));
-                hostObj->set_Item(HostKey, newHost);
-                                  
-                if (newHost) {
-                    Host *host = __try_cast<Host*>(newHost);
-                    host->Configure(
-                             __try_cast<String*>(hostURI->get_Item(HostKey)),
-                             __try_cast<String*>(hostDir->get_Item(HostKey)),
-                             this, HostKey);
-                    return true;
-                }
-                else {
-                    server_rec __nogc *s = (server_rec __nogc *)
-                        (*__try_cast<__box int*>(hostSvr->get_Item(HostKey)));
-                    LogServerError(L"mod_aspdotnet: CreateApplicationHost "
-                                   L"returned NULL, perhaps the AspNetMount "
-                                   L"paths were invalid", APLOG_ERR, 0, s);
-                }
-            }
-            catch (Exception *e) {
-                    server_rec __nogc *s = (server_rec __nogc *)
-                        (*__try_cast<__box int*>(hostSvr->get_Item(HostKey)));
-                LogServerError(L"mod_aspdotnet: CreateApplicationHost failed, "
-                               L"Exception follows", APLOG_ERR, 0, s);
-                LogServerError(e->ToString(), APLOG_ERR, 0, s);
-                hostObj->set_Item(HostKey, NULL);
-            }
-            return false;
-        }
-
-        void HostFinalized(int HostKey, Host *thisHost)
-        {
-            // Destroy only the correct host
-            Threading::Monitor::Enter(this);
-            if (thisHost->Equals(hostObj->get_Item(HostKey)))
-            {
-                try {
-                    hostObj->set_Item(HostKey, NULL);
-                }
-                catch (Exception * /*e*/) {
-                }
-            }
-            Threading::Monitor::Exit(this);
-        }
-
-        // Instantiate a new Host object; trailing slashes are acceptable
-        int CreateHost(String* virtualPath, String* physicalPath, int Server) 
-        {
-            int newHostKey;
-
-            physicalPath = physicalPath->Replace(L'/', L'\\');
-
-            newHostKey = hostObj->get_Count();
-            hostSvr->Add(__box(Server));
-            hostURI->Add(virtualPath);
-            hostDir->Add(physicalPath);
-            hostObj->Add(NULL);
-
-            if (!ConnectHost(newHostKey)) {
-                server_rec __nogc *s = (server_rec __nogc *)Server;
-                String *msg = String::Concat(L"Mount failure creating host ",
-                          __try_cast<String*>(hostURI->get_Item(newHostKey)),
-                                             L" mapped to ",
-                          __try_cast<String*>(hostDir->get_Item(newHostKey))); 
                                               
-                LogServerError(msg, APLOG_ERR, 0, s);
-                newHostKey = -1;
-            }
-
-            return newHostKey;
-        }
-
-        int HandleHostRequest(int HostKey, int Req) {
-            request_rec __nogc *rr = (request_rec __nogc *)Req;
-            String* msg;
-
-            Object* obj = hostObj->get_Item(HostKey);
-            if (obj != NULL) {
-                try {
-                    Host* host = __try_cast<Host*>(obj);
-                    int status = host->HandleRequest(Req);
-                    return status;
-                }
-                // Presume all Remoting/AppDomainUnloadedExceptions 
-                // require us to recreate the Host.  Fall through...
-                catch (System::Runtime::Remoting::RemotingException *e) {
-                    msg = String::Concat(L"RemotingException; ",
-                                         e->ToString());
-                    LogServerError(msg, APLOG_DEBUG, 0, rr->server);
-                }
-                catch (System::AppDomainUnloadedException *e) {
-                    msg = String::Concat(L"AppDomainUnloadedException; ",
-                                         e->ToString());
-                    LogServerError(msg, APLOG_DEBUG, 0, rr->server);
-                }
-                catch (Exception *e) {
-                    msg = String::Concat(L"HandleRequest: Failed with "
-                                         L"unexpected Exception; ",
-                                         e->ToString());                       
                         
-                    LogServerError(msg, APLOG_ERR, 0, rr->server);
-                    return 500;
-                }
-            }
-
-            msg = String::Concat(L"Restarting host of ",
-                       __try_cast<String*>(hostURI->get_Item(HostKey)),
-                                 L" mapped to ",
-                       __try_cast<String*>(hostDir->get_Item(HostKey)));
-            LogServerError(msg, APLOG_INFO, 0, rr->server);
-
-            int welocked = 0;
-            try {
-                Threading::Monitor::Enter(this);
-                welocked = 1;
-                Object* tryobj = hostObj->get_Item(HostKey);
-                if (tryobj == obj)
-                {
-                    // Release all stale obj references and catch any
-                    // sort of dispatch exceptions (and ignore them).
-                    try {
-                        hostObj->set_Item(HostKey, NULL);
-                    }
-                    catch (Exception * /*e*/) {
-                    }
-                    try {
-                        obj = tryobj;
-                    }
-                    catch (Exception * /*e*/) {
-                    }
-                }
-                if (obj == NULL) {
-                    if (!ConnectHost(HostKey) || !(obj = 
hostObj->get_Item(HostKey))) {
-                        Threading::Monitor::Exit(this);
-                        msg = String::Concat(L"Mount failure restarting host ",
-                                   
__try_cast<String*>(hostURI->get_Item(HostKey)),
-                                             L" mapped to ",
-                                   
__try_cast<String*>(hostDir->get_Item(HostKey)));                               
                 
-                        LogServerError(msg, APLOG_ERR, 0, rr->server);
-                        return 500;
-                    }
-                }
-                Threading::Monitor::Exit(this);
-            }
-            catch (Exception *e) {
-                if (welocked) {
-                    Threading::Monitor::Exit(this);
-                }
-                msg = String::Concat(L"Mount failure restarting host ",
-                           __try_cast<String*>(hostURI->get_Item(HostKey)),
-                                     L" mapped to ",
-                           __try_cast<String*>(hostDir->get_Item(HostKey)));
-                LogServerError(msg, APLOG_ERR, 0, rr->server);
-                msg = String::Concat(L"Mount failure exception restarting "
-                                     L"host; ", e->ToString());
-                LogServerError(msg, APLOG_ERR, 0, rr->server);
-                return 500;
-            }
-
-            try {
-                Host* host = __try_cast<Host*>(obj);
-                int status = host->HandleRequest(Req);
-                return status;
-            }
-            catch (Exception *e) {
-                msg = String::Concat(L"RequestHandler; failure following "
-                                     L"host restart; ", e->ToString());        
                                        
-                LogServerError(msg, APLOG_ERR, 0, rr->server);
-            }
-            return 500;
-        }
-
-    protected:
-        void ~HostFactory()
-        {
-            Destroy();
-        }
-    };
-  }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache::Web::HostFactory.h managed host engine for mod_aspdotnet 
initialization
+
+
+#pragma once
+
+#ifndef APACHE_WEB_H
+#error "#include \"Apache.Web.h\" ... not HostFactory.h!"
+#endif
+
+namespace Apache
+{
+  namespace Web
+  {
+    // Forward declare a Host
+    public __gc class Host;
+
+    // The HostFactory engine to instantiate new Host objects
+    public __gc class HostFactory 
+        : public IApacheWebHostFactory, public MarshalByRefObject
+    {
+    private:
+        // Create our utf8-encoding to handle utf8->unicode names
+        Encoding* utf8_encoding;
+        ArrayList* hostURI;
+        ArrayList* hostDir;
+        ArrayList* hostObj;
+        ArrayList* hostSvr;
+
+    private:
+        // Reports an error message in the error log
+        void LogServerError(String *msg, int loglevel, int rv, server_rec 
__nogc *s)
+        {
+            unsigned char avalue __gc[] = utf8_encoding->GetBytes(msg);
+            unsigned char __pin *msg_text = &avalue[0];
+            ap_log_error("Apache.Web", 0, loglevel|(rv ? 0 : APLOG_NOERRNO),
+                         rv, s, "mod_aspdotnet: %s", (char*) msg_text, NULL);
+        }
+
+
+    public:
+        HostFactory() {
+            utf8_encoding = new UTF8Encoding(false);
+            hostURI = new ArrayList();
+            hostDir = new ArrayList();
+            hostObj = new ArrayList();
+            hostSvr = new ArrayList();
+        }
+
+        virtual Object* InitializeLifetimeService()
+        {
+            // Indestructable, for good reason
+            return NULL;
+        }
+
+        // Returns E_FAIL if HostFactory cannot be configured; path is a noop 
argument
+        HRESULT Configure(String *path) 
+        {
+#ifdef _DEBUG
+            if (!WorkerRequest::CodeValidate())
+                return E_FAIL;
+            else
+#endif
+                return S_OK;
+        }
+
+        void Destroy(void)
+        {
+            if (utf8_encoding) {
+                utf8_encoding = NULL;
+                int hosts = hostObj->get_Count();
+                for (int i = 0; i < hosts; ++i)
+                {
+                    // Don't fault if the hostObj is already destroyed
+                    try {
+                        hostObj->set_Item(i, NULL);
+                    }
+                    catch (Exception * /*e*/) {
+                    }
+                }
+                hostURI = NULL;
+                hostDir = NULL;
+                hostObj = NULL;
+                hostSvr = NULL;
+            }
+        }
+
+        // Instantiate a new Host object; trailing slashes are acceptable
+        bool ConnectHost(int HostKey) 
+        {
+            Type* hostType = __typeof(Host);
+            Object* newHost;
+
+            try {
+                newHost = ApplicationHost::CreateApplicationHost(hostType,
+                             __try_cast<String*>(hostURI->get_Item(HostKey)),
+                             __try_cast<String*>(hostDir->get_Item(HostKey)));
+                hostObj->set_Item(HostKey, newHost);
+                                  
+                if (newHost) {
+                    Host *host = __try_cast<Host*>(newHost);
+                    host->Configure(
+                             __try_cast<String*>(hostURI->get_Item(HostKey)),
+                             __try_cast<String*>(hostDir->get_Item(HostKey)),
+                             this, HostKey);
+                    return true;
+                }
+                else {
+                    server_rec __nogc *s = (server_rec __nogc *)
+                        (*__try_cast<__box int*>(hostSvr->get_Item(HostKey)));
+                    LogServerError(L"mod_aspdotnet: CreateApplicationHost "
+                                   L"returned NULL, perhaps the AspNetMount "
+                                   L"paths were invalid", APLOG_ERR, 0, s);
+                }
+            }
+            catch (Exception *e) {
+                    server_rec __nogc *s = (server_rec __nogc *)
+                        (*__try_cast<__box int*>(hostSvr->get_Item(HostKey)));
+                LogServerError(L"mod_aspdotnet: CreateApplicationHost failed, "
+                               L"Exception follows", APLOG_ERR, 0, s);
+                LogServerError(e->ToString(), APLOG_ERR, 0, s);
+                hostObj->set_Item(HostKey, NULL);
+            }
+            return false;
+        }
+
+        void HostFinalized(int HostKey, Host *thisHost)
+        {
+            // Destroy only the correct host
+            Threading::Monitor::Enter(this);
+            if (thisHost->Equals(hostObj->get_Item(HostKey)))
+            {
+                try {
+                    hostObj->set_Item(HostKey, NULL);
+                }
+                catch (Exception * /*e*/) {
+                }
+            }
+            Threading::Monitor::Exit(this);
+        }
+
+        // Instantiate a new Host object; trailing slashes are acceptable
+        int CreateHost(String* virtualPath, String* physicalPath, int Server) 
+        {
+            int newHostKey;
+
+            physicalPath = physicalPath->Replace(L'/', L'\\');
+
+            newHostKey = hostObj->get_Count();
+            hostSvr->Add(__box(Server));
+            hostURI->Add(virtualPath);
+            hostDir->Add(physicalPath);
+            hostObj->Add(NULL);
+
+            if (!ConnectHost(newHostKey)) {
+                server_rec __nogc *s = (server_rec __nogc *)Server;
+                String *msg = String::Concat(L"Mount failure creating host ",
+                          __try_cast<String*>(hostURI->get_Item(newHostKey)),
+                                             L" mapped to ",
+                          __try_cast<String*>(hostDir->get_Item(newHostKey))); 
                                               
+                LogServerError(msg, APLOG_ERR, 0, s);
+                newHostKey = -1;
+            }
+
+            return newHostKey;
+        }
+
+        int HandleHostRequest(int HostKey, int Req) {
+            request_rec __nogc *rr = (request_rec __nogc *)Req;
+            String* msg;
+
+            Object* obj = hostObj->get_Item(HostKey);
+            if (obj != NULL) {
+                try {
+                    Host* host = __try_cast<Host*>(obj);
+                    int status = host->HandleRequest(Req);
+                    return status;
+                }
+                // Presume all Remoting/AppDomainUnloadedExceptions 
+                // require us to recreate the Host.  Fall through...
+                catch (System::Runtime::Remoting::RemotingException *e) {
+                    msg = String::Concat(L"RemotingException; ",
+                                         e->ToString());
+                    LogServerError(msg, APLOG_DEBUG, 0, rr->server);
+                }
+                catch (System::AppDomainUnloadedException *e) {
+                    msg = String::Concat(L"AppDomainUnloadedException; ",
+                                         e->ToString());
+                    LogServerError(msg, APLOG_DEBUG, 0, rr->server);
+                }
+                catch (Exception *e) {
+                    msg = String::Concat(L"HandleRequest: Failed with "
+                                         L"unexpected Exception; ",
+                                         e->ToString());                       
                         
+                    LogServerError(msg, APLOG_ERR, 0, rr->server);
+                    return 500;
+                }
+            }
+
+            msg = String::Concat(L"Restarting host of ",
+                       __try_cast<String*>(hostURI->get_Item(HostKey)),
+                                 L" mapped to ",
+                       __try_cast<String*>(hostDir->get_Item(HostKey)));
+            LogServerError(msg, APLOG_INFO, 0, rr->server);
+
+            int welocked = 0;
+            try {
+                Threading::Monitor::Enter(this);
+                welocked = 1;
+                Object* tryobj = hostObj->get_Item(HostKey);
+                if (tryobj == obj)
+                {
+                    // Release all stale obj references and catch any
+                    // sort of dispatch exceptions (and ignore them).
+                    try {
+                        hostObj->set_Item(HostKey, NULL);
+                    }
+                    catch (Exception * /*e*/) {
+                    }
+                    try {
+                        obj = tryobj;
+                    }
+                    catch (Exception * /*e*/) {
+                    }
+                }
+                if (obj == NULL) {
+                    if (!ConnectHost(HostKey) || !(obj = 
hostObj->get_Item(HostKey))) {
+                        Threading::Monitor::Exit(this);
+                        msg = String::Concat(L"Mount failure restarting host ",
+                                   
__try_cast<String*>(hostURI->get_Item(HostKey)),
+                                             L" mapped to ",
+                                   
__try_cast<String*>(hostDir->get_Item(HostKey)));                               
                 
+                        LogServerError(msg, APLOG_ERR, 0, rr->server);
+                        return 500;
+                    }
+                }
+                Threading::Monitor::Exit(this);
+            }
+            catch (Exception *e) {
+                if (welocked) {
+                    Threading::Monitor::Exit(this);
+                }
+                msg = String::Concat(L"Mount failure restarting host ",
+                           __try_cast<String*>(hostURI->get_Item(HostKey)),
+                                     L" mapped to ",
+                           __try_cast<String*>(hostDir->get_Item(HostKey)));
+                LogServerError(msg, APLOG_ERR, 0, rr->server);
+                msg = String::Concat(L"Mount failure exception restarting "
+                                     L"host; ", e->ToString());
+                LogServerError(msg, APLOG_ERR, 0, rr->server);
+                return 500;
+            }
+
+            try {
+                Host* host = __try_cast<Host*>(obj);
+                int status = host->HandleRequest(Req);
+                return status;
+            }
+            catch (Exception *e) {
+                msg = String::Concat(L"RequestHandler; failure following "
+                                     L"host restart; ", e->ToString());        
                                        
+                LogServerError(msg, APLOG_ERR, 0, rr->server);
+            }
+            return 500;
+        }
+
+    protected:
+        void ~HostFactory()
+        {
+            Destroy();
+        }
+    };
+  }
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.cpp
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.cpp        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.cpp        
Fri Jul 16 09:27:17 2004
@@ -1,551 +1,551 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Apache::Web::WorkerRequest.cpp support code for mod_aspdotnet
-
-
-#using <mscorlib.dll>
-#using <System.Web.dll>
-#include "Apache.Web.h"
-
-#define size_t apr_size_t
-
-Apache::Web::Host::~Host()
-{
-    // thisFactory may have already evaporated, ignore the fault
-    try {
-        thisFactory->HostFinalized(thisHostKey, this);
-    }
-    catch (Exception * /*e*/) {
-    }
-}
-
-Apache::Web::WorkerRequest::WorkerRequest(int Req, Host *ThisHost) 
-        : SimpleWorkerRequest(String::Empty, String::Empty, 0)
-{
-    // Initialize empty placeholders
-    known_req_header_value = new String* [RequestHeaderMaximum];
-    unk_req_header_name = new ArrayList();
-    unk_req_header_value = new ArrayList();
-    env_var = new ArrayList();
-    env_value = new ArrayList();
-    serverName = NULL;
-    remoteName = NULL;
-    seen_eos = 0;
-    body_sent = 0;
-    bytes_read = 0;
-
-    // Initialize state pointers to our encoding, request and host
-    rr = (request_rec __nogc *)Req;
-    host = ThisHost;
-
-    // Deal with the usual request variables
-    uri = rr->uri;
-    unparsed_uri = rr->unparsed_uri;
-
-    queryargs = rr->args;
-    if (!rr->args || !*rr->args) {
-        query_raw = new unsigned char __gc[0];
-    }
-    else {
-        apr_size_t len = strlen(rr->args);
-        query_raw = new unsigned char __gc[len];
-        unsigned char __pin *foo = &query_raw[0];
-        memcpy(foo, rr->args, len);
-    }
-
-    // rr->filename is utf-8 encoded for Apache 2.0/WinNT
-    filename = new String(rr->filename ? rr->filename : "", 0, 
-                            rr->filename ? strlen(rr->filename) : 0, 
-                            utf8_encoding);
-    filename = filename->Replace(L'/', L'\\');
-
-    // Now deal with the client's request headers
-    const apr_array_header_t __nogc* arr = apr_table_elts(rr->headers_in);
-    const char __nogc* elt = arr->elts;
-    for (int i = 0; i < arr->nelts; ++i, elt += arr->elt_size) {
-        apr_table_entry_t __nogc* pair = (apr_table_entry_t *)(void*)(elt);
-        String* key(pair->key);
-        String* val(pair->val);
-        int ent = Array::IndexOf(request_headers_s, key);
-        if (ent >= 0) {
-            known_req_header_value[ent] = val;
-        }
-        else {
-            unk_req_header_name->Add(key);
-            unk_req_header_value->Add(val);
-        }
-    }
-
-    int elts = unk_req_header_value->get_Count();
-    unk_req_hdr_arr = new _gcA_gcA_gcString(elts);
-
-    for (int i = 0; i < elts; ++i) {
-        String __gc* ent __gc[] = new String __gc* __gc[2];
-        ent[0] = static_cast<String *>(unk_req_header_name->get_Item(i));
-        ent[1] = static_cast<String *>(unk_req_header_value->get_Item(i));
-        unk_req_hdr_arr->Set(i, ent);
-    }
-
-    arr = apr_table_elts(rr->subprocess_env);
-    elt = arr->elts;
-    for (int i = 0; i < arr->nelts; ++i, elt += arr->elt_size) {
-        apr_table_entry_t __nogc* pair = (apr_table_entry_t *)(void*)(elt);
-        String* var(pair->key);
-        String* val(pair->val);
-        env_var->Add(var);
-        env_value->Add(val);
-    }
-}
-
-// Functions that require the full declaration 
-// of Apache::Web::::Host which must be declared 
-// after Apache::Web::WorkerRequest
-//
-
-void Apache::Web::WorkerRequest::LogRequestError(String *msg, int loglevel, 
int rv) {
-    host->LogRequestError(msg, loglevel, rv, rr);
-}
-
-String* Apache::Web::WorkerRequest::MapPath(String* path)
-{
-    String *mapped = host->MapPath(path, rr);
-#ifdef _DEBUG
-    String *res = String::Concat(L"MapPath: ", path, 
-                                 L" mapped to ", mapped);
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    return mapped;
-}
-
-String* Apache::Web::WorkerRequest::GetAppPath(void)
-{
-#ifdef _DEBUG
-    String *res = String::Concat(L"GetAppPath: returns ", 
host->GetVirtualPath());
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    return host->GetVirtualPath();
-}
-
-String* Apache::Web::WorkerRequest::GetAppPathTranslated(void) 
-{
-    String *bslashed = host->GetPhysicalPath();
-    bslashed = bslashed->Insert(bslashed->get_Length(), L"\\");
-#ifdef _DEBUG
-    String *res = String::Concat(L"GetAppPathTranslated: returns ", bslashed);
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    return bslashed;
-}
-
-String* Apache::Web::WorkerRequest::GetFilePath(void)
-{
-    // Break URI matching filename, ignoring path_info
-    String* strip = host->GetPhysicalPath();
-    String* path = filename;
-    if (path->StartsWith(strip)) {
-        path = path->Substring(strip->get_Length());
-        path = path->Insert(0, host->GetVirtualPath());
-        path = path->Replace(L'\\', L'/');
-    }
-#ifdef _DEBUG
-    String *res = String::Concat(L"GetFilePath: returns ", path);
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    return path;
-}
-
-
-#pragma unmanaged
-static apr_status_t InternalFlushResponse(request_rec __nogc *rr)
-{   
-    conn_rec __nogc *c = rr->connection;
-    apr_bucket_brigade __nogc *bb;
-    apr_bucket __nogc *b;
-
-    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
-    b = apr_bucket_eos_create(c->bucket_alloc);
-    APR_BRIGADE_INSERT_TAIL(bb, b);
-    return ap_pass_brigade(rr->output_filters, bb);
-}
-#pragma managed
-
-void Apache::Web::WorkerRequest::FlushResponse(bool finalFlush)
-{
-    if (finalFlush) {
-        InternalFlushResponse(rr);
-
-        // Even a a no-body request, the body was flushed
-        body_sent = 1;
-
-        // Report completion
-        if (eosnCallback) {
-            eosnCallback->Invoke(this, eosnExtra);
-            eosnCallback = NULL;
-        }
-#ifdef _DEBUG
-        LogRequestError(L"FlushResponse: final", APLOG_DEBUG, 0);
-#endif
-    }
-#ifdef _DEBUG
-    else {
-        LogRequestError(L"FlushResponse: incomplete", APLOG_DEBUG, 0);
-    }
-#endif
-}
-
-
-#pragma unmanaged
-static apr_status_t InternalResponseFromMemory(request_rec __nogc *rr,
-                                               const char __nogc *buf_data,
-                                               int length)
-{   
-    conn_rec __nogc *c = rr->connection;
-    apr_bucket_brigade __nogc *bb;
-    apr_bucket __nogc *b;
-
-    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
-    b = apr_bucket_transient_create(buf_data, length, c->bucket_alloc);
-    APR_BRIGADE_INSERT_TAIL(bb, b);
-    b = apr_bucket_flush_create(c->bucket_alloc);
-    APR_BRIGADE_INSERT_TAIL(bb, b);
-    return ap_pass_brigade(rr->output_filters, bb);
-}
-#pragma managed
-
-void Apache::Web::WorkerRequest::SendResponseFromMemory(IntPtr data, 
-                                                        int length)
-{   
-    if (!length) {
-#ifdef _DEBUG
-        LogRequestError("SendResponseFromMemory: passed zero byte buffer!", 
APLOG_DEBUG, 0);
-#endif
-        return;
-    }
-    const char __nogc *buf_data 
-        = static_cast<const char __nogc *>(data.ToPointer());
-
-#ifdef _DEBUG
-    String *res = String::Concat(L"SendResponseFromMemory: passed ", 
-                                 (new Int32(length))->ToString(), 
-                                 L" byte buffer"); 
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    apr_status_t rv = InternalResponseFromMemory(rr, buf_data, length);
-    body_sent = 1;
-
-    // Failure, terminate request processing 
-    if (rv != APR_SUCCESS)  {
-        LogRequestError(L"SendResponseFromMemory: failure", APLOG_WARNING, rv);
-        //   && eosnCallback) {
-        // eosnCallback->Invoke(this, eosnExtra);
-    }
-}
-
-#pragma unmanaged
-static apr_status_t InternalResponseFromFile(request_rec __nogc *rr, HANDLE hv,
-                                             __int64 offset, __int64 length) 
-{
-    conn_rec __nogc *c = rr->connection;
-    apr_bucket_brigade __nogc *bb;
-    apr_bucket __nogc *b;
-    apr_file_t __nogc *fd;
-    apr_off_t fsize;
-    apr_status_t rv;
-
-    rv = apr_os_file_put(&fd, &hv, APR_READ | APR_XTHREAD, rr->pool);
-    if (rv != APR_SUCCESS) {
-        return rv;
-    }
-    if (length) {
-        fsize = length;
-    }
-    else {
-        apr_finfo_t fi;
-        rv = apr_file_info_get(&fi, APR_FINFO_SIZE, fd);
-        if (rv != APR_SUCCESS) {
-            return rv;
-        }
-        fsize = fi.size - offset;
-    }
-
-    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
-#if APR_HAS_LARGE_FILES
-    if (rr->finfo.size > AP_MAX_SENDFILE) {
-        // APR_HAS_LARGE_FILES issue; must split into mutiple buckets,
-        // no greater than MAX(apr_size_t) .. we trust AP_MAX_SENDFILE
-        //
-        b = apr_bucket_file_create(fd, offset, AP_MAX_SENDFILE, 
-                                   rr->pool, c->bucket_alloc);
-        while (fsize > AP_MAX_SENDFILE) {
-            apr_bucket *bc;
-            apr_bucket_copy(b, &bc);
-            APR_BRIGADE_INSERT_TAIL(bb, bc);
-            b->start += AP_MAX_SENDFILE;
-            fsize -= AP_MAX_SENDFILE;
-        }
-        b->length = (apr_size_t)fsize;  // Resize just the last bucket
-    }
-    else
-#endif
-        b = apr_bucket_file_create(fd, offset, (apr_size_t)fsize, 
-                                    rr->pool, c->bucket_alloc);
-    APR_BRIGADE_INSERT_TAIL(bb, b);
-    b = apr_bucket_flush_create(c->bucket_alloc);
-    APR_BRIGADE_INSERT_TAIL(bb, b);
-    return ap_pass_brigade(rr->output_filters, bb);
-}
-#pragma managed
-
-void Apache::Web::WorkerRequest::SendResponseFromFile(IntPtr handle, 
-                                                      __int64 offset, 
-                                                      __int64 length)
-{
-    if (!length) {
-#ifdef _DEBUG
-        LogRequestError("SendResponseFromFile: passed zero byte length!", 
APLOG_DEBUG, 0);
-#endif
-        return;
-    }
-
-#ifdef _DEBUG
-    String *res = String::Concat(L"SendResponseFromFile: passed ", 
-                                 (new Int64(length))->ToString(), 
-                                 L" byte request starting at offset ",
-                                 (new Int64(offset))->ToString()); 
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-
-    HANDLE hv = static_cast<HANDLE>(handle.ToPointer());
-
-    apr_status_t rv = InternalResponseFromFile(rr, hv, offset, length);
-    body_sent = 1;
-
-    // Failure, terminate request processing 
-    if (rv != APR_SUCCESS) {
-        LogRequestError(L"SendResponseFromFile: failure", APLOG_WARNING, rv);
-        //   && eosnCallback) {
-        // eosnCallback->Invoke(this, eosnExtra);
-    }
-}
-
-
-#pragma unmanaged
-static apr_status_t InternalReadEntityBody(request_rec __nogc* rr, char 
__nogc* curptr,
-                                           apr_size_t size, int __nogc* 
bytes_read,
-                                           int __nogc* overflow, int __nogc* 
seen_eos)
-{
-    apr_bucket_brigade *bb;
-    apr_status_t rv;
-    *overflow = 0;
-    *bytes_read = 0;
-
-    // Reader-Writer helpers
-    apr_bucket __nogc *dummy_flush_bucket;
-    apr_bucket __nogc *dummy_eos_bucket;
-    dummy_flush_bucket = apr_bucket_flush_create(rr->connection->bucket_alloc);
-    dummy_eos_bucket = apr_bucket_eos_create(rr->connection->bucket_alloc);
-
-    bb = apr_brigade_create(rr->pool, rr->connection->bucket_alloc);
-    do {
-        apr_bucket *bucket;
-        apr_size_t size_one = (HUGE_STRING_LEN <= size ? HUGE_STRING_LEN : 
size);
-
-        if ((rv = ap_get_brigade(rr->input_filters, bb, 
-                                 AP_MODE_READBYTES,
-                                 APR_BLOCK_READ, size_one))
-                != APR_SUCCESS) {
-            return rv;
-        }
-
-        APR_BRIGADE_FOREACH(bucket, bb) {
-            if (bucket->type == dummy_eos_bucket->type) {
-                *seen_eos = 1;
-                break;
-            }
-            if (bucket->type == dummy_flush_bucket->type) {
-                continue;
-            }
-            const char *data;
-            apr_size_t len;
-            rv = apr_bucket_read(bucket, &data, &len, APR_BLOCK_READ);
-            if (rv != APR_SUCCESS) {
-                return rv;
-            }
-            if (len > size) {
-                *overflow += len - size;
-                len = size;
-            }
-            if (size) {
-                memcpy(curptr, data, len);
-                *bytes_read += len;
-                curptr += len;
-                size -= len;
-            }
-        }
-        apr_brigade_cleanup(bb);
-    }
-    while (!*seen_eos && (size > 0));
-
-    return APR_SUCCESS;
-}
-#pragma managed
-
-
-int Apache::Web::WorkerRequest::ReadEntityBody(unsigned char buffer __gc[],
-                                                 int size) 
-{
-    if (buffer->get_Length() < 1) {
-#ifdef _DEBUG
-        LogRequestError(L"ReadEntityBody: noread (passed 0 byte buffer)", 
APLOG_DEBUG, 0);
-#endif
-        return 0;
-    }
-    int __pin *eos = &seen_eos;
-    int read;
-    int overflow;
-    unsigned char __pin *lockbuff = &buffer[0];
-    void *startptr = static_cast<void __nogc*>(lockbuff);
-    apr_status_t rv = InternalReadEntityBody(rr, static_cast<char 
__nogc*>(startptr), 
-                                             (apr_size_t)size, &read, 
&overflow, eos);
-    bytes_read += read;
-    if (rv != APR_SUCCESS) {
-        LogRequestError(L"ReadEntityBody: brigade read failure "
-                        L"reading the request body", APLOG_ERR, rv);
-    }
-    if (overflow) {
-        LogRequestError(L"ReadEntityBody: brigade read overflow "
-                        L"reading the request body", APLOG_ERR, rv);
-    }
-#ifdef _DEBUG
-    String *res = String::Concat(L"ReadEntityBody: read ", 
-                                 (new Int32(read))->ToString(), 
-                                 L" bytes");
-    LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    return read;
-}
-
-
-int Apache::Web::WorkerRequest::Handler(void)
-{
-    wait_complete = new System::Threading::ManualResetEvent(false);
-    apr_bucket_brigade __nogc* bb;
-    apr_status_t rv;
-    apr_size_t size = 0;
-
-    // Reader-Writer helpers
-    //
-    // Yes, this code is remarkably similar to InternalReadEntityBody,
-    // however, for speed that code is entirely managed and incapable
-    // of allocating a char __gc[] that we need below.  In the code
-    // below, we allocate exactly the correct __gc[] required to
-    // store the initial bytes, up to the MS semi-standard 49152.
-    //
-    apr_bucket __nogc *dummy_flush_bucket;
-    apr_bucket __nogc *dummy_eos_bucket;
-    dummy_flush_bucket = apr_bucket_flush_create(rr->connection->bucket_alloc);
-    dummy_eos_bucket = apr_bucket_eos_create(rr->connection->bucket_alloc);
-
-    bb = apr_brigade_create(rr->pool, rr->connection->bucket_alloc);
-
-    apr_bucket __nogc* bucket;
-
-    if ((rv = ap_get_brigade(rr->input_filters, bb, 
-                             AP_MODE_READBYTES,
-                             APR_BLOCK_READ, 49152))
-            == APR_SUCCESS) {
-        apr_off_t sz;
-        rv = apr_brigade_length(bb, 1, &sz);
-        size = (apr_size_t)sz;
-        preread_body = new unsigned char __gc[size];
-        unsigned char __pin *lockbuff;
-        char __nogc *curptr = NULL;
-        if (size > 0) {
-            lockbuff = &preread_body[0];
-            void *startptr = static_cast<void __nogc*>(lockbuff);
-            curptr = static_cast<char __nogc*>(startptr);
-        }
-        APR_BRIGADE_FOREACH(bucket, bb) {
-            if (bucket->type == dummy_eos_bucket->type) {
-                seen_eos = 1;
-                break;
-            }
-            if (bucket->type == dummy_flush_bucket->type) {
-                continue;
-            }
-            const char *data;
-            apr_size_t len;
-            rv = apr_bucket_read(bucket, &data, &len, APR_BLOCK_READ);
-            if (rv != APR_SUCCESS) {
-                LogRequestError(L"Handler: brigade read failure prereading "
-                                L"the request body", APLOG_ERR, rv);
-            }
-            if (len > size) {
-                len = size;
-                LogRequestError(L"Handler: brigade read overflow prereading "
-                                L"the request body", APLOG_ERR, 0);
-            }
-            if (size) {
-                memcpy(curptr, data, len);
-                bytes_read += len;
-                curptr += len;
-                size -= len;
-            }
-        }
-        apr_brigade_cleanup(bb);
-#ifdef _DEBUG
-        String *res = String::Concat(L"Handler: preread ", 
-                                    (new Int64(bytes_read))->ToString(), 
-                                    L" request body bytes");
-        LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-    }
-    else {
-        LogRequestError(L"Handler: failed to preread the request body",
-                        APLOG_ERR, rv);
-        return 500;
-    }
-
-    try {
-        HttpRuntime::ProcessRequest(this);
-    }
-    catch (Exception *e) {
-        if (!body_sent) {
-            rr->status = 500;
-            rr->status_line = ap_get_status_line(rr->status);
-        }
-        String *msg = String::Concat(L"ProcessRequest: fatal exception "
-                                     L"processing request ", uri, 
-                                     L" exception follows;");
-        LogRequestError(msg, APLOG_ERR, 0);
-        LogRequestError(e->ToString(), APLOG_ERR, 0);
-    }
-
-    // Stall... if we didn't complete the request, we must wait
-    // for EndOfRequest before being destroyed.
-    wait_complete->WaitOne();
-
-#ifdef _DEBUG
-    LogRequestError(L"Handler: request processing complete", APLOG_DEBUG, 0);
-#endif
-
-    if (!body_sent) {
-        return rr->status;
-    }
-    else {
-        return OK;
-    }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache::Web::WorkerRequest.cpp support code for mod_aspdotnet
+
+
+#using <mscorlib.dll>
+#using <System.Web.dll>
+#include "Apache.Web.h"
+
+#define size_t apr_size_t
+
+Apache::Web::Host::~Host()
+{
+    // thisFactory may have already evaporated, ignore the fault
+    try {
+        thisFactory->HostFinalized(thisHostKey, this);
+    }
+    catch (Exception * /*e*/) {
+    }
+}
+
+Apache::Web::WorkerRequest::WorkerRequest(int Req, Host *ThisHost) 
+        : SimpleWorkerRequest(String::Empty, String::Empty, 0)
+{
+    // Initialize empty placeholders
+    known_req_header_value = new String* [RequestHeaderMaximum];
+    unk_req_header_name = new ArrayList();
+    unk_req_header_value = new ArrayList();
+    env_var = new ArrayList();
+    env_value = new ArrayList();
+    serverName = NULL;
+    remoteName = NULL;
+    seen_eos = 0;
+    body_sent = 0;
+    bytes_read = 0;
+
+    // Initialize state pointers to our encoding, request and host
+    rr = (request_rec __nogc *)Req;
+    host = ThisHost;
+
+    // Deal with the usual request variables
+    uri = rr->uri;
+    unparsed_uri = rr->unparsed_uri;
+
+    queryargs = rr->args;
+    if (!rr->args || !*rr->args) {
+        query_raw = new unsigned char __gc[0];
+    }
+    else {
+        apr_size_t len = strlen(rr->args);
+        query_raw = new unsigned char __gc[len];
+        unsigned char __pin *foo = &query_raw[0];
+        memcpy(foo, rr->args, len);
+    }
+
+    // rr->filename is utf-8 encoded for Apache 2.0/WinNT
+    filename = new String(rr->filename ? rr->filename : "", 0, 
+                            rr->filename ? strlen(rr->filename) : 0, 
+                            utf8_encoding);
+    filename = filename->Replace(L'/', L'\\');
+
+    // Now deal with the client's request headers
+    const apr_array_header_t __nogc* arr = apr_table_elts(rr->headers_in);
+    const char __nogc* elt = arr->elts;
+    for (int i = 0; i < arr->nelts; ++i, elt += arr->elt_size) {
+        apr_table_entry_t __nogc* pair = (apr_table_entry_t *)(void*)(elt);
+        String* key(pair->key);
+        String* val(pair->val);
+        int ent = Array::IndexOf(request_headers_s, key);
+        if (ent >= 0) {
+            known_req_header_value[ent] = val;
+        }
+        else {
+            unk_req_header_name->Add(key);
+            unk_req_header_value->Add(val);
+        }
+    }
+
+    int elts = unk_req_header_value->get_Count();
+    unk_req_hdr_arr = new _gcA_gcA_gcString(elts);
+
+    for (int i = 0; i < elts; ++i) {
+        String __gc* ent __gc[] = new String __gc* __gc[2];
+        ent[0] = static_cast<String *>(unk_req_header_name->get_Item(i));
+        ent[1] = static_cast<String *>(unk_req_header_value->get_Item(i));
+        unk_req_hdr_arr->Set(i, ent);
+    }
+
+    arr = apr_table_elts(rr->subprocess_env);
+    elt = arr->elts;
+    for (int i = 0; i < arr->nelts; ++i, elt += arr->elt_size) {
+        apr_table_entry_t __nogc* pair = (apr_table_entry_t *)(void*)(elt);
+        String* var(pair->key);
+        String* val(pair->val);
+        env_var->Add(var);
+        env_value->Add(val);
+    }
+}
+
+// Functions that require the full declaration 
+// of Apache::Web::::Host which must be declared 
+// after Apache::Web::WorkerRequest
+//
+
+void Apache::Web::WorkerRequest::LogRequestError(String *msg, int loglevel, 
int rv) {
+    host->LogRequestError(msg, loglevel, rv, rr);
+}
+
+String* Apache::Web::WorkerRequest::MapPath(String* path)
+{
+    String *mapped = host->MapPath(path, rr);
+#ifdef _DEBUG
+    String *res = String::Concat(L"MapPath: ", path, 
+                                 L" mapped to ", mapped);
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    return mapped;
+}
+
+String* Apache::Web::WorkerRequest::GetAppPath(void)
+{
+#ifdef _DEBUG
+    String *res = String::Concat(L"GetAppPath: returns ", 
host->GetVirtualPath());
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    return host->GetVirtualPath();
+}
+
+String* Apache::Web::WorkerRequest::GetAppPathTranslated(void) 
+{
+    String *bslashed = host->GetPhysicalPath();
+    bslashed = bslashed->Insert(bslashed->get_Length(), L"\\");
+#ifdef _DEBUG
+    String *res = String::Concat(L"GetAppPathTranslated: returns ", bslashed);
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    return bslashed;
+}
+
+String* Apache::Web::WorkerRequest::GetFilePath(void)
+{
+    // Break URI matching filename, ignoring path_info
+    String* strip = host->GetPhysicalPath();
+    String* path = filename;
+    if (path->StartsWith(strip)) {
+        path = path->Substring(strip->get_Length());
+        path = path->Insert(0, host->GetVirtualPath());
+        path = path->Replace(L'\\', L'/');
+    }
+#ifdef _DEBUG
+    String *res = String::Concat(L"GetFilePath: returns ", path);
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    return path;
+}
+
+
+#pragma unmanaged
+static apr_status_t InternalFlushResponse(request_rec __nogc *rr)
+{   
+    conn_rec __nogc *c = rr->connection;
+    apr_bucket_brigade __nogc *bb;
+    apr_bucket __nogc *b;
+
+    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
+    b = apr_bucket_eos_create(c->bucket_alloc);
+    APR_BRIGADE_INSERT_TAIL(bb, b);
+    return ap_pass_brigade(rr->output_filters, bb);
+}
+#pragma managed
+
+void Apache::Web::WorkerRequest::FlushResponse(bool finalFlush)
+{
+    if (finalFlush) {
+        InternalFlushResponse(rr);
+
+        // Even a a no-body request, the body was flushed
+        body_sent = 1;
+
+        // Report completion
+        if (eosnCallback) {
+            eosnCallback->Invoke(this, eosnExtra);
+            eosnCallback = NULL;
+        }
+#ifdef _DEBUG
+        LogRequestError(L"FlushResponse: final", APLOG_DEBUG, 0);
+#endif
+    }
+#ifdef _DEBUG
+    else {
+        LogRequestError(L"FlushResponse: incomplete", APLOG_DEBUG, 0);
+    }
+#endif
+}
+
+
+#pragma unmanaged
+static apr_status_t InternalResponseFromMemory(request_rec __nogc *rr,
+                                               const char __nogc *buf_data,
+                                               int length)
+{   
+    conn_rec __nogc *c = rr->connection;
+    apr_bucket_brigade __nogc *bb;
+    apr_bucket __nogc *b;
+
+    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
+    b = apr_bucket_transient_create(buf_data, length, c->bucket_alloc);
+    APR_BRIGADE_INSERT_TAIL(bb, b);
+    b = apr_bucket_flush_create(c->bucket_alloc);
+    APR_BRIGADE_INSERT_TAIL(bb, b);
+    return ap_pass_brigade(rr->output_filters, bb);
+}
+#pragma managed
+
+void Apache::Web::WorkerRequest::SendResponseFromMemory(IntPtr data, 
+                                                        int length)
+{   
+    if (!length) {
+#ifdef _DEBUG
+        LogRequestError("SendResponseFromMemory: passed zero byte buffer!", 
APLOG_DEBUG, 0);
+#endif
+        return;
+    }
+    const char __nogc *buf_data 
+        = static_cast<const char __nogc *>(data.ToPointer());
+
+#ifdef _DEBUG
+    String *res = String::Concat(L"SendResponseFromMemory: passed ", 
+                                 (new Int32(length))->ToString(), 
+                                 L" byte buffer"); 
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    apr_status_t rv = InternalResponseFromMemory(rr, buf_data, length);
+    body_sent = 1;
+
+    // Failure, terminate request processing 
+    if (rv != APR_SUCCESS)  {
+        LogRequestError(L"SendResponseFromMemory: failure", APLOG_WARNING, rv);
+        //   && eosnCallback) {
+        // eosnCallback->Invoke(this, eosnExtra);
+    }
+}
+
+#pragma unmanaged
+static apr_status_t InternalResponseFromFile(request_rec __nogc *rr, HANDLE hv,
+                                             __int64 offset, __int64 length) 
+{
+    conn_rec __nogc *c = rr->connection;
+    apr_bucket_brigade __nogc *bb;
+    apr_bucket __nogc *b;
+    apr_file_t __nogc *fd;
+    apr_off_t fsize;
+    apr_status_t rv;
+
+    rv = apr_os_file_put(&fd, &hv, APR_READ | APR_XTHREAD, rr->pool);
+    if (rv != APR_SUCCESS) {
+        return rv;
+    }
+    if (length) {
+        fsize = length;
+    }
+    else {
+        apr_finfo_t fi;
+        rv = apr_file_info_get(&fi, APR_FINFO_SIZE, fd);
+        if (rv != APR_SUCCESS) {
+            return rv;
+        }
+        fsize = fi.size - offset;
+    }
+
+    bb = apr_brigade_create(rr->pool, c->bucket_alloc);
+#if APR_HAS_LARGE_FILES
+    if (rr->finfo.size > AP_MAX_SENDFILE) {
+        // APR_HAS_LARGE_FILES issue; must split into mutiple buckets,
+        // no greater than MAX(apr_size_t) .. we trust AP_MAX_SENDFILE
+        //
+        b = apr_bucket_file_create(fd, offset, AP_MAX_SENDFILE, 
+                                   rr->pool, c->bucket_alloc);
+        while (fsize > AP_MAX_SENDFILE) {
+            apr_bucket *bc;
+            apr_bucket_copy(b, &bc);
+            APR_BRIGADE_INSERT_TAIL(bb, bc);
+            b->start += AP_MAX_SENDFILE;
+            fsize -= AP_MAX_SENDFILE;
+        }
+        b->length = (apr_size_t)fsize;  // Resize just the last bucket
+    }
+    else
+#endif
+        b = apr_bucket_file_create(fd, offset, (apr_size_t)fsize, 
+                                    rr->pool, c->bucket_alloc);
+    APR_BRIGADE_INSERT_TAIL(bb, b);
+    b = apr_bucket_flush_create(c->bucket_alloc);
+    APR_BRIGADE_INSERT_TAIL(bb, b);
+    return ap_pass_brigade(rr->output_filters, bb);
+}
+#pragma managed
+
+void Apache::Web::WorkerRequest::SendResponseFromFile(IntPtr handle, 
+                                                      __int64 offset, 
+                                                      __int64 length)
+{
+    if (!length) {
+#ifdef _DEBUG
+        LogRequestError("SendResponseFromFile: passed zero byte length!", 
APLOG_DEBUG, 0);
+#endif
+        return;
+    }
+
+#ifdef _DEBUG
+    String *res = String::Concat(L"SendResponseFromFile: passed ", 
+                                 (new Int64(length))->ToString(), 
+                                 L" byte request starting at offset ",
+                                 (new Int64(offset))->ToString()); 
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+
+    HANDLE hv = static_cast<HANDLE>(handle.ToPointer());
+
+    apr_status_t rv = InternalResponseFromFile(rr, hv, offset, length);
+    body_sent = 1;
+
+    // Failure, terminate request processing 
+    if (rv != APR_SUCCESS) {
+        LogRequestError(L"SendResponseFromFile: failure", APLOG_WARNING, rv);
+        //   && eosnCallback) {
+        // eosnCallback->Invoke(this, eosnExtra);
+    }
+}
+
+
+#pragma unmanaged
+static apr_status_t InternalReadEntityBody(request_rec __nogc* rr, char 
__nogc* curptr,
+                                           apr_size_t size, int __nogc* 
bytes_read,
+                                           int __nogc* overflow, int __nogc* 
seen_eos)
+{
+    apr_bucket_brigade *bb;
+    apr_status_t rv;
+    *overflow = 0;
+    *bytes_read = 0;
+
+    // Reader-Writer helpers
+    apr_bucket __nogc *dummy_flush_bucket;
+    apr_bucket __nogc *dummy_eos_bucket;
+    dummy_flush_bucket = apr_bucket_flush_create(rr->connection->bucket_alloc);
+    dummy_eos_bucket = apr_bucket_eos_create(rr->connection->bucket_alloc);
+
+    bb = apr_brigade_create(rr->pool, rr->connection->bucket_alloc);
+    do {
+        apr_bucket *bucket;
+        apr_size_t size_one = (HUGE_STRING_LEN <= size ? HUGE_STRING_LEN : 
size);
+
+        if ((rv = ap_get_brigade(rr->input_filters, bb, 
+                                 AP_MODE_READBYTES,
+                                 APR_BLOCK_READ, size_one))
+                != APR_SUCCESS) {
+            return rv;
+        }
+
+        APR_BRIGADE_FOREACH(bucket, bb) {
+            if (bucket->type == dummy_eos_bucket->type) {
+                *seen_eos = 1;
+                break;
+            }
+            if (bucket->type == dummy_flush_bucket->type) {
+                continue;
+            }
+            const char *data;
+            apr_size_t len;
+            rv = apr_bucket_read(bucket, &data, &len, APR_BLOCK_READ);
+            if (rv != APR_SUCCESS) {
+                return rv;
+            }
+            if (len > size) {
+                *overflow += len - size;
+                len = size;
+            }
+            if (size) {
+                memcpy(curptr, data, len);
+                *bytes_read += len;
+                curptr += len;
+                size -= len;
+            }
+        }
+        apr_brigade_cleanup(bb);
+    }
+    while (!*seen_eos && (size > 0));
+
+    return APR_SUCCESS;
+}
+#pragma managed
+
+
+int Apache::Web::WorkerRequest::ReadEntityBody(unsigned char buffer __gc[],
+                                                 int size) 
+{
+    if (buffer->get_Length() < 1) {
+#ifdef _DEBUG
+        LogRequestError(L"ReadEntityBody: noread (passed 0 byte buffer)", 
APLOG_DEBUG, 0);
+#endif
+        return 0;
+    }
+    int __pin *eos = &seen_eos;
+    int read;
+    int overflow;
+    unsigned char __pin *lockbuff = &buffer[0];
+    void *startptr = static_cast<void __nogc*>(lockbuff);
+    apr_status_t rv = InternalReadEntityBody(rr, static_cast<char 
__nogc*>(startptr), 
+                                             (apr_size_t)size, &read, 
&overflow, eos);
+    bytes_read += read;
+    if (rv != APR_SUCCESS) {
+        LogRequestError(L"ReadEntityBody: brigade read failure "
+                        L"reading the request body", APLOG_ERR, rv);
+    }
+    if (overflow) {
+        LogRequestError(L"ReadEntityBody: brigade read overflow "
+                        L"reading the request body", APLOG_ERR, rv);
+    }
+#ifdef _DEBUG
+    String *res = String::Concat(L"ReadEntityBody: read ", 
+                                 (new Int32(read))->ToString(), 
+                                 L" bytes");
+    LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    return read;
+}
+
+
+int Apache::Web::WorkerRequest::Handler(void)
+{
+    wait_complete = new System::Threading::ManualResetEvent(false);
+    apr_bucket_brigade __nogc* bb;
+    apr_status_t rv;
+    apr_size_t size = 0;
+
+    // Reader-Writer helpers
+    //
+    // Yes, this code is remarkably similar to InternalReadEntityBody,
+    // however, for speed that code is entirely managed and incapable
+    // of allocating a char __gc[] that we need below.  In the code
+    // below, we allocate exactly the correct __gc[] required to
+    // store the initial bytes, up to the MS semi-standard 49152.
+    //
+    apr_bucket __nogc *dummy_flush_bucket;
+    apr_bucket __nogc *dummy_eos_bucket;
+    dummy_flush_bucket = apr_bucket_flush_create(rr->connection->bucket_alloc);
+    dummy_eos_bucket = apr_bucket_eos_create(rr->connection->bucket_alloc);
+
+    bb = apr_brigade_create(rr->pool, rr->connection->bucket_alloc);
+
+    apr_bucket __nogc* bucket;
+
+    if ((rv = ap_get_brigade(rr->input_filters, bb, 
+                             AP_MODE_READBYTES,
+                             APR_BLOCK_READ, 49152))
+            == APR_SUCCESS) {
+        apr_off_t sz;
+        rv = apr_brigade_length(bb, 1, &sz);
+        size = (apr_size_t)sz;
+        preread_body = new unsigned char __gc[size];
+        unsigned char __pin *lockbuff;
+        char __nogc *curptr = NULL;
+        if (size > 0) {
+            lockbuff = &preread_body[0];
+            void *startptr = static_cast<void __nogc*>(lockbuff);
+            curptr = static_cast<char __nogc*>(startptr);
+        }
+        APR_BRIGADE_FOREACH(bucket, bb) {
+            if (bucket->type == dummy_eos_bucket->type) {
+                seen_eos = 1;
+                break;
+            }
+            if (bucket->type == dummy_flush_bucket->type) {
+                continue;
+            }
+            const char *data;
+            apr_size_t len;
+            rv = apr_bucket_read(bucket, &data, &len, APR_BLOCK_READ);
+            if (rv != APR_SUCCESS) {
+                LogRequestError(L"Handler: brigade read failure prereading "
+                                L"the request body", APLOG_ERR, rv);
+            }
+            if (len > size) {
+                len = size;
+                LogRequestError(L"Handler: brigade read overflow prereading "
+                                L"the request body", APLOG_ERR, 0);
+            }
+            if (size) {
+                memcpy(curptr, data, len);
+                bytes_read += len;
+                curptr += len;
+                size -= len;
+            }
+        }
+        apr_brigade_cleanup(bb);
+#ifdef _DEBUG
+        String *res = String::Concat(L"Handler: preread ", 
+                                    (new Int64(bytes_read))->ToString(), 
+                                    L" request body bytes");
+        LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+    }
+    else {
+        LogRequestError(L"Handler: failed to preread the request body",
+                        APLOG_ERR, rv);
+        return 500;
+    }
+
+    try {
+        HttpRuntime::ProcessRequest(this);
+    }
+    catch (Exception *e) {
+        if (!body_sent) {
+            rr->status = 500;
+            rr->status_line = ap_get_status_line(rr->status);
+        }
+        String *msg = String::Concat(L"ProcessRequest: fatal exception "
+                                     L"processing request ", uri, 
+                                     L" exception follows;");
+        LogRequestError(msg, APLOG_ERR, 0);
+        LogRequestError(e->ToString(), APLOG_ERR, 0);
+    }
+
+    // Stall... if we didn't complete the request, we must wait
+    // for EndOfRequest before being destroyed.
+    wait_complete->WaitOne();
+
+#ifdef _DEBUG
+    LogRequestError(L"Handler: request processing complete", APLOG_DEBUG, 0);
+#endif
+
+    if (!body_sent) {
+        return rr->status;
+    }
+    else {
+        return OK;
+    }
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.h  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/WorkerRequest.h  Fri Jul 
16 09:27:17 2004
@@ -1,631 +1,631 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Apache::Web::WorkerRequest.h managed interface for Apache 2.0 request_rec
-
-
-#pragma once
-
-#ifndef APACHE_WEB_H
-#error "#include \"Apache.Web.h\" ... not WorkerRequest.h!"
-#endif
-
-#include "http_header_arrays.h"
-
-using namespace Apache::Web::Helpers;
-using namespace System::Collections;
-
-namespace Apache
-{
-  namespace Web
-  {
-    // Forward declare a Host
-    public __gc class Host;
-
-  public __gc class WorkerRequest : public SimpleWorkerRequest
-    {
-    private:
-        static const char __nogc *response_headers_c __nogc[] = {
-            response_headers_m("")
-        };
-        static const char __nogc *request_headers_c __nogc[] = {
-            request_headers_m("")
-        };
-        static String* response_headers_s[] = {
-            response_headers_m(L)
-        };
-        static String* request_headers_s[] = {
-            request_headers_m(L)
-        };
-
-        // Create our utf8-encoding to handle utf8->unicode names
-        static Encoding *utf8_encoding = new UTF8Encoding(false);
-    
-        String* uri;
-        String* unparsed_uri;
-        String* queryargs;
-        String* filename;
-        String* remoteName;
-        String* serverName;
-
-        unsigned char query_raw __gc[];
-
-        String* known_req_header_value[];
-        ArrayList* unk_req_header_name;
-        ArrayList* unk_req_header_value;
-        ArrayList* env_var;
-        ArrayList* env_value;
-
-        _gcA_gcA_gcString *unk_req_hdr_arr;
-
-        request_rec __nogc *rr;
-
-        Host* host;
-        System::Threading::ManualResetEvent* wait_complete;
-        EndOfSendNotification *eosnCallback;
-        Object* eosnExtra;
-
-        unsigned char preread_body __gc[];
-        int seen_eos;
-        int body_sent;
-        __int64 bytes_read;
-
-        // Reports an error message in the error log
-        void LogRequestError(String *msg, int loglevel, int rv);
-
-    public:
-        static bool CodeValidate() {
-            if (response_headers_s->get_Length() != ResponseHeaderMaximum)
-                return false;
-            for (int i = 0; i < ResponseHeaderMaximum; ++i) {
-                String *s = HttpWorkerRequest::GetKnownResponseHeaderName(i);
-                if (response_headers_s[i]->CompareTo(s) != 0)
-                    return false;
-            }
-            if (request_headers_s->get_Length() != RequestHeaderMaximum)
-                return false;
-            for (int i = 0; i < RequestHeaderMaximum; ++i) {
-                String *s = HttpWorkerRequest::GetKnownRequestHeaderName(i);
-                if (request_headers_s[i]->CompareTo(s) != 0)
-                    return false;
-            }
-            return true;
-        }
-
-        // Cannot be declared inline, we don't have Host defined
-        virtual String* GetAppPath(void); 
-        virtual String* GetAppPathTranslated(void); 
-
-        WorkerRequest(int Req, Host *ThisHost);
-
-        int Handler(void);
-        [ComVisible(false)]
-        virtual void SetEndOfSendNotification(
-                         HttpWorkerRequest::EndOfSendNotification *callback,
-                         Object* extraData) 
-        {
-#ifdef _DEBUG
-            LogRequestError(L"SetEndOfSendNotification: initialized", 
APLOG_DEBUG, 0);
-#endif
-        }
-
-        virtual void EndOfRequest(void) 
-        {
-            // If ProcessRequest() in Handler completed before the request
-            // request processing completes, it blocks on wait_complete, 
-            // we need to toggle the event that Handler() is blocked on
-            // or would block on upon return from ProcessRequest().
-            if (eosnCallback) {
-#ifdef _DEBUG
-                LogRequestError(L"EndOfRequest: invoked 
EndOfSendNotification", APLOG_DEBUG, 0);
-#endif
-                eosnCallback->Invoke(this, eosnExtra);
-                eosnCallback = NULL;
-            }
-#ifdef _DEBUG
-            else
-                LogRequestError(L"EndOfRequest: processed", APLOG_DEBUG, 0);
-#endif
-            wait_complete->Set();
-        }
-
-        virtual String* GetUriPath(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetUriPath: returns ", uri);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return uri;
-        }
-
-        virtual String* GetQueryString(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetQueryString: returns ", 
queryargs);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return queryargs;
-        }
-
-        virtual unsigned char GetQueryStringRawBytes(void) __gc[]
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetQueryStringRawBytes: returns ",
-                                         (new 
Int32(query_raw->get_Length()))->ToString(),
-                                         L" raw characters");
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return query_raw;
-        }
-
-        virtual String* GetRawUrl(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetRawUrl: returns ", unparsed_uri);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return unparsed_uri;
-        }
-
-        virtual String* GetHttpVerbName(void) 
-        {
-            String* verb = new String(rr->method);
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetHttpVerbName: returns ", verb);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return verb;
-        }
-
-        virtual String* GetHttpVersion(void) 
-        {
-            String* version = new String(rr->protocol);
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetHttpVersion: returns ", version);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return version;
-        }
-
-        virtual String* GetProtocol(void)
-        {
-            // TODO: HTTPS when appropriate
-#ifdef _DEBUG
-            LogRequestError(L"GetProtocol: returns HTTP", APLOG_DEBUG, 0);
-#endif
-            return new String(L"HTTP");
-        }
-
-        virtual String* GetRemoteAddress(void) 
-        {
-            String* addr = new String(rr->connection->remote_ip);
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetRemoteAddress: returns ", addr);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return addr;
-        }
-
-        virtual int GetRemotePort(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetRemotePort: returns ", 
-                (new Int32(rr->connection->remote_addr->port))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-           return rr->connection->remote_addr->port;
-        }
-
-        virtual String* GetRemoteName(void)
-        {
-            if (!remoteName) {
-                const char __nogc *name = ap_get_remote_host(rr->connection, 
-                                                            
rr->per_dir_config, 
-                                                            REMOTE_HOST, NULL);
-                if (!name)
-                    remoteName = String::Empty;
-                else
-                    remoteName = new String(name);
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetRemoteName: returns ", 
remoteName);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return remoteName;
-        }
-
-        virtual String* GetServerName(void)
-        {
-            if (!serverName) {
-                const char __nogc *name = ap_get_server_name(rr);
-                if (!name)
-                    serverName = String::Empty;
-                else
-                    serverName = new String(name);
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetServerName: returns ", 
serverName);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return serverName;
-        }
-
-        virtual String* GetServerVariable(String *name)
-        {
-            if (name->Equals(L"ALL_RAW")) {
-                int size = 1;
-                for (int i = 0; i < env_var->get_Count(); ++i) {
-                    size += 
static_cast<String*>(env_var->get_Item(i))->get_Length() + 1;
-                    size += 
static_cast<String*>(env_value->get_Item(i))->get_Length() + 1;
-                }
-                StringBuilder *res = new StringBuilder(size);
-                for (int i = 0; i < env_var->get_Count(); ++i) {
-                    res = 
res->Append(static_cast<String*>(env_var->get_Item(i)));
-                    res = res->Append(L"=");
-                    res = 
res->Append(static_cast<String*>(env_value->get_Item(i)));
-                    res = res->Append(L"\0", 0, 1);
-                }
-                res = res->Append(L"\0", 0, 1);
-#ifdef _DEBUG
-                LogRequestError(L"GetServerVariable: for ALL_RAW returns all", 
APLOG_DEBUG, 0);
-#endif
-                return res->ToString();
-            }
-            int ent = env_var->IndexOf(name);
-            if (ent >= 0) {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetServerVariable: for ", name, L" 
returns ", 
-                                         
static_cast<String*>(env_value->get_Item(ent)));
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-                return static_cast<String*>(env_value->get_Item(ent));
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetServerVariable: for ", name,
-                                         L" returns NULL (not found)");
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return NULL;
-        }
-
-        virtual String* GetLocalAddress(void) 
-        {
-            String* addr = new String(rr->connection->local_ip);
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetLocalAddress: returns ", addr);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return addr;
-        }
-
-        virtual int GetLocalPort(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetLocalPort: returns ", 
-                (new Int32(rr->connection->local_addr->port))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return rr->connection->local_addr->port;
-        }
-
-        virtual String* GetFilePath(void); 
-
-        virtual String* GetFilePathTranslated(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetFilePathTranslated: returns ", 
filename);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return filename;
-        }
-
-        virtual String* GetPathInfo(void) 
-        {
-            String* path_info = new String(rr->path_info);
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetPathInfo: returns ", path_info);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return path_info;
-        }
-
-        virtual String* GetKnownRequestHeader(int index)
-        {
-            if (index >= 0 && index < RequestHeaderMaximum) {
-#ifdef _DEBUG
-                String *res = String::Concat(L"GetKnownRequestHeader: for ", 
-                                             request_headers_s[index],
-                                             L" returns ", 
-                                             known_req_header_value[index]);
-                LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-                return known_req_header_value[index];
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetKnownRequestHeader: for ", 
-                                         (new Int32(index))->ToString(),
-                                         L" returns NULL (not found)");
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return NULL;
-        }
-    
-        virtual String* GetUnknownRequestHeader(String* name) 
-        {
-            int ent = unk_req_header_name->IndexOf(name);
-            if (ent >= 0) {
-                String *val = 
static_cast<String*>(unk_req_header_value->get_Item(ent));
-#ifdef _DEBUG
-                String *res = String::Concat(L"GetUnknownRequestHeader: for ", 
name,
-                                             L" returns ", val);
-                LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-                return val;
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetUnknownRequestHeader: for ", 
name,
-                                         L" returns NULL (not found)");
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return NULL;
-        }
-
-        [System::CLSCompliantAttribute(false)]
-        virtual String __gc* GetUnknownRequestHeaders(void) __gc[] __gc[]
-        {
-#ifdef _DEBUG
-            LogRequestError(L"GetUnknownRequestHeaders: returns all", 
APLOG_DEBUG, 0);
-#endif
-            return unk_req_hdr_arr->Value();
-        }
-
-        static int GetKnownRequestHeaderIndex(String *header)
-        {
-            for (int i = 0; i < RequestHeaderMaximum; ++i) {
-                if (String::Compare(header, request_headers_s[i]) == 0) {
-                    return i;
-                }
-            }
-            return -1;
-        }
-
-        static String *GetKnownRequestHeaderName(int header)
-        {
-            if (header >= 0 && header < RequestHeaderMaximum) {
-                return request_headers_s[header];
-            }
-            return NULL;
-        }
-
-        static int GetKnownResponseHeaderIndex(String *header)
-        {
-            for (int i = 0; i < ResponseHeaderMaximum; ++i) {
-                if (String::Compare(header, response_headers_s[i]) == 0)
-                    return i;
-            }
-            return -1;
-        }
-
-        static String *GetKnownResponseHeaderName(int header)
-        {
-            if (header >= 0 && header < ResponseHeaderMaximum) {
-                return response_headers_s[header];
-            }
-            return NULL;
-        }
-
-        virtual bool HasEntityBody(void)
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"HasEntityBody: returns ", 
-                (new Boolean(!seen_eos || bytes_read))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return !seen_eos || bytes_read;
-        }
-
-        virtual int ReadEntityBody(unsigned char buffer __gc[], int size);
-
-        virtual __int64 GetBytesRead(void)
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetBytesRead: returns ", 
-                                         (new Int64(bytes_read))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif            
-            return bytes_read;
-        }
-
-        virtual unsigned char GetPreloadedEntityBody(void) __gc[]
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"GetPreloadedEntityBody: returns ", 
-                (new Int32(preread_body->get_Length()))->ToString(), 
-                L" bytes");
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return preread_body;
-        }
-
-        virtual bool IsEntireEntityBodyIsPreloaded(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"IsEntireEntityBodyIsPreloaded: 
returns ", 
-                (new Boolean(seen_eos != 0))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return seen_eos != 0;
-        }
-
-        virtual bool IsClientConnected(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"IsClientConnected: returns ", 
-                (new Boolean(!rr->connection->aborted))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return !rr->connection->aborted;
-        }
-
-        virtual bool HeadersSent(void) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"HeadersSent: returns ", 
-                (new Boolean(body_sent != 0))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            return (body_sent != 0);
-        }
-
-        virtual void SendStatus(int statusCode, String* statusDescription) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"SendStatus: sending ", 
-                                         (new Int32(statusCode))->ToString(), 
-                                         L" with desc ", statusDescription);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            rr->status = statusCode;
-            if (!statusDescription 
-                    || statusDescription->Equals(String::Empty)) {
-                rr->status_line = ap_get_status_line(rr->status);
-            }
-            else {
-                unsigned char avalue __gc[] 
-                    = utf8_encoding->GetBytes(statusDescription);
-                unsigned char __pin *status_desc = &avalue[0];
-                char code __nogc[12];
-                itoa(rr->status, code, 10);
-                rr->status_line = apr_pstrcat(rr->pool, code, " ", 
-                                              (char __nogc*)status_desc, NULL);
-            }
-        }
-        
-        virtual void SendKnownResponseHeader(int index, String* value)
-        {
-            if (index >= 0 && index < ResponseHeaderMaximum) {
-#ifdef _DEBUG
-                String *res = String::Concat(L"SendKnownResponseHeader: ", 
-                                             response_headers_c[index], 
-                                             L" as ", value);
-                LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-                unsigned char avalue __gc[] = utf8_encoding->GetBytes(value);
-                int len = avalue->Count;
-                unsigned char __pin *cvalue = &avalue[0];
-                char __nogc *poolval = static_cast<char __nogc *>
-                                          (apr_pmemdup(rr->pool, cvalue, len + 
1));
-                poolval[len] = '\0';
-                if (index == HeaderContentType)
-                    ap_set_content_type(rr, poolval);
-                else
-                    apr_table_setn(rr->headers_out, response_headers_c[index], 
poolval);
-            }
-#ifdef _DEBUG
-            else {
-                String *res = String::Concat(L"SendKnownResponseHeader: failed 
to send ", 
-                                            (new Int32(index))->ToString(), 
-                                            L" as ", value);
-                LogRequestError(res, APLOG_DEBUG, 0);
-            }
-#endif
-        }
-
-        virtual void SendUnknownResponseHeader(String* name, String* value) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"SendUnknownResponseHeader: ", name, 
-                                         L" as ", value);
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            unsigned char aname __gc[] = utf8_encoding->GetBytes(name);
-            int len = aname->Count;
-            unsigned char __pin *cname = &aname[0];
-            char __nogc *poolkey = static_cast<char __nogc *>
-                                        (apr_pmemdup(rr->pool, cname, len + 
1));
-            poolkey[len] = '\0';
-            unsigned char avalue __gc[] = utf8_encoding->GetBytes(value);
-            len = avalue->Count;
-            unsigned char __pin *cvalue = &avalue[0];
-            char __nogc *poolval = static_cast<char __nogc *>
-                                        (apr_pmemdup(rr->pool, cvalue, len + 
1));
-            poolval[len] = '\0';
-            apr_table_setn(rr->headers_out, poolkey, poolval);
-        }
-
-        virtual void SendCalculatedContentLength(int contentLength) 
-        {
-#ifdef _DEBUG
-            String *res = String::Concat(L"SendCalculatedContentLength: ", 
-                                        (new 
Int32(contentLength))->ToString());
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            ap_set_content_length(rr, contentLength);
-        }
-
-        virtual void SendResponseFromMemory(IntPtr data, int length);
-
-        virtual void SendResponseFromMemory(unsigned char data __gc[], __int32 
length) 
-        {
-            if (!length) {
-#ifdef _DEBUG
-                LogRequestError("SendResponseFromMemory: passed zero byte 
buffer!", APLOG_DEBUG, 0);
-#endif
-                return;
-            }
-#ifdef _DEBUG
-            LogRequestError(L"SendResponseFromFile: pinning GC buffer", 
APLOG_DEBUG, 0);
-#endif
-            unsigned char __pin *data_buf = &data[0];
-            IntPtr data_ptr = static_cast<void*>(data_buf);
-            SendResponseFromMemory(data_ptr, length);
-        }
-
-        virtual void SendResponseFromFile(IntPtr handle, __int64 offset, 
__int64 length);
-
-        virtual void SendResponseFromFile(String* filename, __int64 offset, 
__int64 length) 
-        {
-            if (!length) {
-#ifdef _DEBUG
-                LogRequestError("SendResponseFromFile: passed zero byte 
length!", APLOG_DEBUG, 0);
-#endif
-                return;
-            }
-#ifdef _DEBUG
-            String *res = String::Concat(L"SendResponseFromFile: opening ", 
-                                         filename); 
-            LogRequestError(res, APLOG_DEBUG, 0);
-#endif
-            FileStream *stream = new FileStream(filename, FileMode::Open, 
-                                                FileAccess::Read, 
-                                                FileShare::Read, 0, true);
-            SendResponseFromFile(stream->Handle, offset, length);
-            stream->Close();
-        }
-
-        virtual void FlushResponse(bool finalFlush);
-
-        virtual void CloseConnection(void)
-        {
-#ifdef _DEBUG
-            LogRequestError(L"CloseConnection: requested (noop)", APLOG_DEBUG, 
0);
-#endif
-            ; // Noop, we trust Apache's determination here of the protocol
-        }
-
-        virtual String* MapPath(String* path);
-    };
-  }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache::Web::WorkerRequest.h managed interface for Apache 2.0 request_rec
+
+
+#pragma once
+
+#ifndef APACHE_WEB_H
+#error "#include \"Apache.Web.h\" ... not WorkerRequest.h!"
+#endif
+
+#include "http_header_arrays.h"
+
+using namespace Apache::Web::Helpers;
+using namespace System::Collections;
+
+namespace Apache
+{
+  namespace Web
+  {
+    // Forward declare a Host
+    public __gc class Host;
+
+  public __gc class WorkerRequest : public SimpleWorkerRequest
+    {
+    private:
+        static const char __nogc *response_headers_c __nogc[] = {
+            response_headers_m("")
+        };
+        static const char __nogc *request_headers_c __nogc[] = {
+            request_headers_m("")
+        };
+        static String* response_headers_s[] = {
+            response_headers_m(L)
+        };
+        static String* request_headers_s[] = {
+            request_headers_m(L)
+        };
+
+        // Create our utf8-encoding to handle utf8->unicode names
+        static Encoding *utf8_encoding = new UTF8Encoding(false);
+    
+        String* uri;
+        String* unparsed_uri;
+        String* queryargs;
+        String* filename;
+        String* remoteName;
+        String* serverName;
+
+        unsigned char query_raw __gc[];
+
+        String* known_req_header_value[];
+        ArrayList* unk_req_header_name;
+        ArrayList* unk_req_header_value;
+        ArrayList* env_var;
+        ArrayList* env_value;
+
+        _gcA_gcA_gcString *unk_req_hdr_arr;
+
+        request_rec __nogc *rr;
+
+        Host* host;
+        System::Threading::ManualResetEvent* wait_complete;
+        EndOfSendNotification *eosnCallback;
+        Object* eosnExtra;
+
+        unsigned char preread_body __gc[];
+        int seen_eos;
+        int body_sent;
+        __int64 bytes_read;
+
+        // Reports an error message in the error log
+        void LogRequestError(String *msg, int loglevel, int rv);
+
+    public:
+        static bool CodeValidate() {
+            if (response_headers_s->get_Length() != ResponseHeaderMaximum)
+                return false;
+            for (int i = 0; i < ResponseHeaderMaximum; ++i) {
+                String *s = HttpWorkerRequest::GetKnownResponseHeaderName(i);
+                if (response_headers_s[i]->CompareTo(s) != 0)
+                    return false;
+            }
+            if (request_headers_s->get_Length() != RequestHeaderMaximum)
+                return false;
+            for (int i = 0; i < RequestHeaderMaximum; ++i) {
+                String *s = HttpWorkerRequest::GetKnownRequestHeaderName(i);
+                if (request_headers_s[i]->CompareTo(s) != 0)
+                    return false;
+            }
+            return true;
+        }
+
+        // Cannot be declared inline, we don't have Host defined
+        virtual String* GetAppPath(void); 
+        virtual String* GetAppPathTranslated(void); 
+
+        WorkerRequest(int Req, Host *ThisHost);
+
+        int Handler(void);
+        [ComVisible(false)]
+        virtual void SetEndOfSendNotification(
+                         HttpWorkerRequest::EndOfSendNotification *callback,
+                         Object* extraData) 
+        {
+#ifdef _DEBUG
+            LogRequestError(L"SetEndOfSendNotification: initialized", 
APLOG_DEBUG, 0);
+#endif
+        }
+
+        virtual void EndOfRequest(void) 
+        {
+            // If ProcessRequest() in Handler completed before the request
+            // request processing completes, it blocks on wait_complete, 
+            // we need to toggle the event that Handler() is blocked on
+            // or would block on upon return from ProcessRequest().
+            if (eosnCallback) {
+#ifdef _DEBUG
+                LogRequestError(L"EndOfRequest: invoked 
EndOfSendNotification", APLOG_DEBUG, 0);
+#endif
+                eosnCallback->Invoke(this, eosnExtra);
+                eosnCallback = NULL;
+            }
+#ifdef _DEBUG
+            else
+                LogRequestError(L"EndOfRequest: processed", APLOG_DEBUG, 0);
+#endif
+            wait_complete->Set();
+        }
+
+        virtual String* GetUriPath(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetUriPath: returns ", uri);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return uri;
+        }
+
+        virtual String* GetQueryString(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetQueryString: returns ", 
queryargs);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return queryargs;
+        }
+
+        virtual unsigned char GetQueryStringRawBytes(void) __gc[]
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetQueryStringRawBytes: returns ",
+                                         (new 
Int32(query_raw->get_Length()))->ToString(),
+                                         L" raw characters");
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return query_raw;
+        }
+
+        virtual String* GetRawUrl(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetRawUrl: returns ", unparsed_uri);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return unparsed_uri;
+        }
+
+        virtual String* GetHttpVerbName(void) 
+        {
+            String* verb = new String(rr->method);
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetHttpVerbName: returns ", verb);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return verb;
+        }
+
+        virtual String* GetHttpVersion(void) 
+        {
+            String* version = new String(rr->protocol);
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetHttpVersion: returns ", version);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return version;
+        }
+
+        virtual String* GetProtocol(void)
+        {
+            // TODO: HTTPS when appropriate
+#ifdef _DEBUG
+            LogRequestError(L"GetProtocol: returns HTTP", APLOG_DEBUG, 0);
+#endif
+            return new String(L"HTTP");
+        }
+
+        virtual String* GetRemoteAddress(void) 
+        {
+            String* addr = new String(rr->connection->remote_ip);
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetRemoteAddress: returns ", addr);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return addr;
+        }
+
+        virtual int GetRemotePort(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetRemotePort: returns ", 
+                (new Int32(rr->connection->remote_addr->port))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+           return rr->connection->remote_addr->port;
+        }
+
+        virtual String* GetRemoteName(void)
+        {
+            if (!remoteName) {
+                const char __nogc *name = ap_get_remote_host(rr->connection, 
+                                                            
rr->per_dir_config, 
+                                                            REMOTE_HOST, NULL);
+                if (!name)
+                    remoteName = String::Empty;
+                else
+                    remoteName = new String(name);
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetRemoteName: returns ", 
remoteName);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return remoteName;
+        }
+
+        virtual String* GetServerName(void)
+        {
+            if (!serverName) {
+                const char __nogc *name = ap_get_server_name(rr);
+                if (!name)
+                    serverName = String::Empty;
+                else
+                    serverName = new String(name);
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetServerName: returns ", 
serverName);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return serverName;
+        }
+
+        virtual String* GetServerVariable(String *name)
+        {
+            if (name->Equals(L"ALL_RAW")) {
+                int size = 1;
+                for (int i = 0; i < env_var->get_Count(); ++i) {
+                    size += 
static_cast<String*>(env_var->get_Item(i))->get_Length() + 1;
+                    size += 
static_cast<String*>(env_value->get_Item(i))->get_Length() + 1;
+                }
+                StringBuilder *res = new StringBuilder(size);
+                for (int i = 0; i < env_var->get_Count(); ++i) {
+                    res = 
res->Append(static_cast<String*>(env_var->get_Item(i)));
+                    res = res->Append(L"=");
+                    res = 
res->Append(static_cast<String*>(env_value->get_Item(i)));
+                    res = res->Append(L"\0", 0, 1);
+                }
+                res = res->Append(L"\0", 0, 1);
+#ifdef _DEBUG
+                LogRequestError(L"GetServerVariable: for ALL_RAW returns all", 
APLOG_DEBUG, 0);
+#endif
+                return res->ToString();
+            }
+            int ent = env_var->IndexOf(name);
+            if (ent >= 0) {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetServerVariable: for ", name, L" 
returns ", 
+                                         
static_cast<String*>(env_value->get_Item(ent)));
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+                return static_cast<String*>(env_value->get_Item(ent));
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetServerVariable: for ", name,
+                                         L" returns NULL (not found)");
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return NULL;
+        }
+
+        virtual String* GetLocalAddress(void) 
+        {
+            String* addr = new String(rr->connection->local_ip);
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetLocalAddress: returns ", addr);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return addr;
+        }
+
+        virtual int GetLocalPort(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetLocalPort: returns ", 
+                (new Int32(rr->connection->local_addr->port))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return rr->connection->local_addr->port;
+        }
+
+        virtual String* GetFilePath(void); 
+
+        virtual String* GetFilePathTranslated(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetFilePathTranslated: returns ", 
filename);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return filename;
+        }
+
+        virtual String* GetPathInfo(void) 
+        {
+            String* path_info = new String(rr->path_info);
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetPathInfo: returns ", path_info);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return path_info;
+        }
+
+        virtual String* GetKnownRequestHeader(int index)
+        {
+            if (index >= 0 && index < RequestHeaderMaximum) {
+#ifdef _DEBUG
+                String *res = String::Concat(L"GetKnownRequestHeader: for ", 
+                                             request_headers_s[index],
+                                             L" returns ", 
+                                             known_req_header_value[index]);
+                LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+                return known_req_header_value[index];
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetKnownRequestHeader: for ", 
+                                         (new Int32(index))->ToString(),
+                                         L" returns NULL (not found)");
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return NULL;
+        }
+    
+        virtual String* GetUnknownRequestHeader(String* name) 
+        {
+            int ent = unk_req_header_name->IndexOf(name);
+            if (ent >= 0) {
+                String *val = 
static_cast<String*>(unk_req_header_value->get_Item(ent));
+#ifdef _DEBUG
+                String *res = String::Concat(L"GetUnknownRequestHeader: for ", 
name,
+                                             L" returns ", val);
+                LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+                return val;
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetUnknownRequestHeader: for ", 
name,
+                                         L" returns NULL (not found)");
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return NULL;
+        }
+
+        [System::CLSCompliantAttribute(false)]
+        virtual String __gc* GetUnknownRequestHeaders(void) __gc[] __gc[]
+        {
+#ifdef _DEBUG
+            LogRequestError(L"GetUnknownRequestHeaders: returns all", 
APLOG_DEBUG, 0);
+#endif
+            return unk_req_hdr_arr->Value();
+        }
+
+        static int GetKnownRequestHeaderIndex(String *header)
+        {
+            for (int i = 0; i < RequestHeaderMaximum; ++i) {
+                if (String::Compare(header, request_headers_s[i]) == 0) {
+                    return i;
+                }
+            }
+            return -1;
+        }
+
+        static String *GetKnownRequestHeaderName(int header)
+        {
+            if (header >= 0 && header < RequestHeaderMaximum) {
+                return request_headers_s[header];
+            }
+            return NULL;
+        }
+
+        static int GetKnownResponseHeaderIndex(String *header)
+        {
+            for (int i = 0; i < ResponseHeaderMaximum; ++i) {
+                if (String::Compare(header, response_headers_s[i]) == 0)
+                    return i;
+            }
+            return -1;
+        }
+
+        static String *GetKnownResponseHeaderName(int header)
+        {
+            if (header >= 0 && header < ResponseHeaderMaximum) {
+                return response_headers_s[header];
+            }
+            return NULL;
+        }
+
+        virtual bool HasEntityBody(void)
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"HasEntityBody: returns ", 
+                (new Boolean(!seen_eos || bytes_read))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return !seen_eos || bytes_read;
+        }
+
+        virtual int ReadEntityBody(unsigned char buffer __gc[], int size);
+
+        virtual __int64 GetBytesRead(void)
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetBytesRead: returns ", 
+                                         (new Int64(bytes_read))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif            
+            return bytes_read;
+        }
+
+        virtual unsigned char GetPreloadedEntityBody(void) __gc[]
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"GetPreloadedEntityBody: returns ", 
+                (new Int32(preread_body->get_Length()))->ToString(), 
+                L" bytes");
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return preread_body;
+        }
+
+        virtual bool IsEntireEntityBodyIsPreloaded(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"IsEntireEntityBodyIsPreloaded: 
returns ", 
+                (new Boolean(seen_eos != 0))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return seen_eos != 0;
+        }
+
+        virtual bool IsClientConnected(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"IsClientConnected: returns ", 
+                (new Boolean(!rr->connection->aborted))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return !rr->connection->aborted;
+        }
+
+        virtual bool HeadersSent(void) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"HeadersSent: returns ", 
+                (new Boolean(body_sent != 0))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            return (body_sent != 0);
+        }
+
+        virtual void SendStatus(int statusCode, String* statusDescription) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"SendStatus: sending ", 
+                                         (new Int32(statusCode))->ToString(), 
+                                         L" with desc ", statusDescription);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            rr->status = statusCode;
+            if (!statusDescription 
+                    || statusDescription->Equals(String::Empty)) {
+                rr->status_line = ap_get_status_line(rr->status);
+            }
+            else {
+                unsigned char avalue __gc[] 
+                    = utf8_encoding->GetBytes(statusDescription);
+                unsigned char __pin *status_desc = &avalue[0];
+                char code __nogc[12];
+                itoa(rr->status, code, 10);
+                rr->status_line = apr_pstrcat(rr->pool, code, " ", 
+                                              (char __nogc*)status_desc, NULL);
+            }
+        }
+        
+        virtual void SendKnownResponseHeader(int index, String* value)
+        {
+            if (index >= 0 && index < ResponseHeaderMaximum) {
+#ifdef _DEBUG
+                String *res = String::Concat(L"SendKnownResponseHeader: ", 
+                                             response_headers_c[index], 
+                                             L" as ", value);
+                LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+                unsigned char avalue __gc[] = utf8_encoding->GetBytes(value);
+                int len = avalue->Count;
+                unsigned char __pin *cvalue = &avalue[0];
+                char __nogc *poolval = static_cast<char __nogc *>
+                                          (apr_pmemdup(rr->pool, cvalue, len + 
1));
+                poolval[len] = '\0';
+                if (index == HeaderContentType)
+                    ap_set_content_type(rr, poolval);
+                else
+                    apr_table_setn(rr->headers_out, response_headers_c[index], 
poolval);
+            }
+#ifdef _DEBUG
+            else {
+                String *res = String::Concat(L"SendKnownResponseHeader: failed 
to send ", 
+                                            (new Int32(index))->ToString(), 
+                                            L" as ", value);
+                LogRequestError(res, APLOG_DEBUG, 0);
+            }
+#endif
+        }
+
+        virtual void SendUnknownResponseHeader(String* name, String* value) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"SendUnknownResponseHeader: ", name, 
+                                         L" as ", value);
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            unsigned char aname __gc[] = utf8_encoding->GetBytes(name);
+            int len = aname->Count;
+            unsigned char __pin *cname = &aname[0];
+            char __nogc *poolkey = static_cast<char __nogc *>
+                                        (apr_pmemdup(rr->pool, cname, len + 
1));
+            poolkey[len] = '\0';
+            unsigned char avalue __gc[] = utf8_encoding->GetBytes(value);
+            len = avalue->Count;
+            unsigned char __pin *cvalue = &avalue[0];
+            char __nogc *poolval = static_cast<char __nogc *>
+                                        (apr_pmemdup(rr->pool, cvalue, len + 
1));
+            poolval[len] = '\0';
+            apr_table_setn(rr->headers_out, poolkey, poolval);
+        }
+
+        virtual void SendCalculatedContentLength(int contentLength) 
+        {
+#ifdef _DEBUG
+            String *res = String::Concat(L"SendCalculatedContentLength: ", 
+                                        (new 
Int32(contentLength))->ToString());
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            ap_set_content_length(rr, contentLength);
+        }
+
+        virtual void SendResponseFromMemory(IntPtr data, int length);
+
+        virtual void SendResponseFromMemory(unsigned char data __gc[], __int32 
length) 
+        {
+            if (!length) {
+#ifdef _DEBUG
+                LogRequestError("SendResponseFromMemory: passed zero byte 
buffer!", APLOG_DEBUG, 0);
+#endif
+                return;
+            }
+#ifdef _DEBUG
+            LogRequestError(L"SendResponseFromFile: pinning GC buffer", 
APLOG_DEBUG, 0);
+#endif
+            unsigned char __pin *data_buf = &data[0];
+            IntPtr data_ptr = static_cast<void*>(data_buf);
+            SendResponseFromMemory(data_ptr, length);
+        }
+
+        virtual void SendResponseFromFile(IntPtr handle, __int64 offset, 
__int64 length);
+
+        virtual void SendResponseFromFile(String* filename, __int64 offset, 
__int64 length) 
+        {
+            if (!length) {
+#ifdef _DEBUG
+                LogRequestError("SendResponseFromFile: passed zero byte 
length!", APLOG_DEBUG, 0);
+#endif
+                return;
+            }
+#ifdef _DEBUG
+            String *res = String::Concat(L"SendResponseFromFile: opening ", 
+                                         filename); 
+            LogRequestError(res, APLOG_DEBUG, 0);
+#endif
+            FileStream *stream = new FileStream(filename, FileMode::Open, 
+                                                FileAccess::Read, 
+                                                FileShare::Read, 0, true);
+            SendResponseFromFile(stream->Handle, offset, length);
+            stream->Close();
+        }
+
+        virtual void FlushResponse(bool finalFlush);
+
+        virtual void CloseConnection(void)
+        {
+#ifdef _DEBUG
+            LogRequestError(L"CloseConnection: requested (noop)", APLOG_DEBUG, 
0);
+#endif
+            ; // Noop, we trust Apache's determination here of the protocol
+        }
+
+        virtual String* MapPath(String* path);
+    };
+  }
+}

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/http_header_arrays.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/http_header_arrays.h     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/http_header_arrays.h     
Fri Jul 16 09:27:17 2004
@@ -1,79 +1,79 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// String constants for Apache::Web::Request.h that correspond to 
-// the System.Web.HttpWorkerRequest KnownRequest/ResponseHeader values.
-// These are macroized so that we are assured of building both bstr and
-// char* flavors without any discrepancies between the two flavors.
-// 
-#pragma once
-
-#define common_headers_m(t)    \
-    t##"Cache-Control",        \
-    t##"Connection",           \
-    t##"Date",                 \
-    t##"Keep-Alive",           \
-    t##"Pragma",               \
-    t##"Trailer",              \
-    t##"Transfer-Encoding",    \
-    t##"Upgrade",              \
-    t##"Via",                  \
-    t##"Warning",              \
-    t##"Allow",                \
-    t##"Content-Length",       \
-    t##"Content-Type",         \
-    t##"Content-Encoding",     \
-    t##"Content-Language",     \
-    t##"Content-Location",     \
-    t##"Content-MD5",          \
-    t##"Content-Range",        \
-    t##"Expires",              \
-    t##"Last-Modified"
-
-#define response_headers_m(t)  \
-    common_headers_m(t),       \
-    t##"Accept-Ranges",        \
-    t##"Age",                  \
-    t##"ETag",                 \
-    t##"Location",             \
-    t##"Proxy-Authenticate",   \
-    t##"Retry-After",          \
-    t##"Server",               \
-    t##"Set-Cookie",           \
-    t##"Vary",                 \
-    t##"WWW-Authenticate"
-
-#define request_headers_m(t)   \
-    common_headers_m(t),       \
-    t##"Accept",               \
-    t##"Accept-Charset",       \
-    t##"Accept-Encoding",      \
-    t##"Accept-Language",      \
-    t##"Authorization",        \
-    t##"Cookie",               \
-    t##"Expect",               \
-    t##"From",                 \
-    t##"Host",                 \
-    t##"If-Match",             \
-    t##"If-Modified-Since",    \
-    t##"If-None-Match",        \
-    t##"If-Range",             \
-    t##"If-Unmodified-Since",  \
-    t##"Max-Forwards",         \
-    t##"Proxy-Authorization",  \
-    t##"Referer",              \
-    t##"Range",                \
-    t##"TE",                   \
-    t##"User-Agent"
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// String constants for Apache::Web::Request.h that correspond to 
+// the System.Web.HttpWorkerRequest KnownRequest/ResponseHeader values.
+// These are macroized so that we are assured of building both bstr and
+// char* flavors without any discrepancies between the two flavors.
+// 
+#pragma once
+
+#define common_headers_m(t)    \
+    t##"Cache-Control",        \
+    t##"Connection",           \
+    t##"Date",                 \
+    t##"Keep-Alive",           \
+    t##"Pragma",               \
+    t##"Trailer",              \
+    t##"Transfer-Encoding",    \
+    t##"Upgrade",              \
+    t##"Via",                  \
+    t##"Warning",              \
+    t##"Allow",                \
+    t##"Content-Length",       \
+    t##"Content-Type",         \
+    t##"Content-Encoding",     \
+    t##"Content-Language",     \
+    t##"Content-Location",     \
+    t##"Content-MD5",          \
+    t##"Content-Range",        \
+    t##"Expires",              \
+    t##"Last-Modified"
+
+#define response_headers_m(t)  \
+    common_headers_m(t),       \
+    t##"Accept-Ranges",        \
+    t##"Age",                  \
+    t##"ETag",                 \
+    t##"Location",             \
+    t##"Proxy-Authenticate",   \
+    t##"Retry-After",          \
+    t##"Server",               \
+    t##"Set-Cookie",           \
+    t##"Vary",                 \
+    t##"WWW-Authenticate"
+
+#define request_headers_m(t)   \
+    common_headers_m(t),       \
+    t##"Accept",               \
+    t##"Accept-Charset",       \
+    t##"Accept-Encoding",      \
+    t##"Accept-Language",      \
+    t##"Authorization",        \
+    t##"Cookie",               \
+    t##"Expect",               \
+    t##"From",                 \
+    t##"Host",                 \
+    t##"If-Match",             \
+    t##"If-Modified-Since",    \
+    t##"If-None-Match",        \
+    t##"If-Range",             \
+    t##"If-Unmodified-Since",  \
+    t##"Max-Forwards",         \
+    t##"Proxy-Authorization",  \
+    t##"Referer",              \
+    t##"Range",                \
+    t##"TE",                   \
+    t##"User-Agent"

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/LICENSE
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/LICENSE     (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/LICENSE     Fri Jul 16 09:27:17 2004
@@ -1,201 +1,201 @@
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/NOTICE
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/NOTICE      (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/NOTICE      Fri Jul 16 09:27:17 2004
@@ -1,12 +1,12 @@
-THIS PROPOSED PROJECT HAS NOT YET BEEN ADOPTED BY THE APACHE SOFTWARE 
-FOUNDATION.
-
-The incubation team (general .at. incubator.apache.org) and the pre-project
-committee (cli-dev .at. httpd.apache.org) are considering this code for
-acceptance and incubation.  The code is being considered as a subproject
-of the Apache HTTP Server project.  
-
-All enclosed code remains Copyright 1992-1994 by Covalent, Inc., until such 
-time as the software grant, on file with the ASF secretary and recorded on
-19 Feb 2004, is accepted by vote of the PPMC, and approved by the
+THIS PROPOSED PROJECT HAS NOT YET BEEN ADOPTED BY THE APACHE SOFTWARE 
+FOUNDATION.
+
+The incubation team (general .at. incubator.apache.org) and the pre-project
+committee (cli-dev .at. httpd.apache.org) are considering this code for
+acceptance and incubation.  The code is being considered as a subproject
+of the Apache HTTP Server project.  
+
+All enclosed code remains Copyright 1992-1994 by Covalent, Inc., until such 
+time as the software grant, on file with the ASF secretary and recorded on
+19 Feb 2004, is accepted by vote of the PPMC, and approved by the
 Incubator PMC.

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/README
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/README      (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/README      Fri Jul 16 09:27:17 2004
@@ -1,104 +1,104 @@
-README for mod_aspdotnet + Apache.Web 
------------------------------------
-
-
-Build Notes
------------
-
-The top level workspace mod_aspdotnet.sln is invoked for a release build
-with the syntax;
-
-  set APACHE_PATH=d:path\to\apache\serverroot
-  devenv mod_aspdotnet.sln /useenv /build Release /project installer
-
-The necessary files, mod_aspdotnet.so [+.pdb for debug symbols] and the
-Apache.Web.dll [+.pdb] are built into the installer.msi package at 
-the top-level Release/ directory of this module.
-
-It is absolutely critical that this build occurs using the Visual Studio
-.NET (7.0) version.  Older VS 6.0 compilers won't support the module.
-
-Note that the Apache.Web.dll is temporarily registered, it's type library
-(.tlb file) is extracted, and it is unregistered as a post-build step for
-both the Debug and Release builds of the Apache.web.  This assures us that
-the usual build machines remain clean of excess COM registration gunk.
-
-We build Apache.Web.dll with delay-load of libhttpd, libapr and libaprutil 
-dll's.  This is important since Apache.Web.dll can't be touched unless
-it is literally adjacent (in the same directory) to those Apache 2.0 .dll's.
-With this method, Apache.Web.dll can be loaded (provided we don't instantiate
-an Apache.Web.WorkerRequest object) even without resolving the path to those
-dll's in the Serverroot/bin directory.
-
-
-Deployment Notes
-----------------
-
-YOU MUST test both the .NET Framework SDK, as well as the .NET Framework
-Runtime environments.  A number of internal behaviors vary between these
-two releases, and Exceptions, destruction, construction and failure cases
-will manifest differently between the two variants.
-
-Asp.Net requires the Apache::Web::Request object to be registered in 
-the Global Assembly Cache in order to instantiate it's host container.
-
-The Debug build will do so automatically, copying mod_aspdotnet.so + .pdb
-into the $(APACHE_TMPINSTALL_WINNT)\modules directory, for testing.
-Apache.Web.dll + .pdb files are copied into $(APACHE_TMPINSTALL_WINNT)\bin
-so that it can discover libapr.dll, libaprutil.dll and libhttpd.dll when
-running in the System.Web.Hosting's AppDomain.  Apache.Web.dll is then 
-registered and installed into the Global Assembly Cache by the Debug build's
-post-build custom command.
-
-In order to install a reference into the Global Assembly Cache (for testing
-the release build instead of the debug build) use;
-
-  regasm d:\path-to-apache\bin\Apache.Web.dll 
-  gacutil /ir Apache.Web.dll FILEPATH d:\path-to-apache\bin\Apache.Web.dll 
Apache.Web 
-
-This will *NOT* work on a customer's machine without the .Net SDK.  Those
-tools [regasm/gacutil] aren't installed with the retail .Net install.
-
-
-TODO
-----
-
-Consider pre-compiling the package into native code prior to distribution.
-
-Consider building a roll-up assembly integrating the libhttpd et. al. with
-the Apache.Web.dll package.  Perhaps we can force them to live in different
-locations with this method.  Note roll up assemblies -reference- the other
-.dll's [that assembly is a .dll itself] but it does not actually merge the
-other .dll's into a single package.
-
-Consider registering aspnet_isapi.dll keys in the registry.  This could
-occur as part of the installer or module startup.  The installer would be
-a much more efficient method.
-
-Note that the .msi package searches for apache/bin/apache.exe up to 3 levels 
-deep from the local hard drives, in sequence.  It aught to further test for
-version 2.0.43.0 or later.
-
-The installer cannot be configured correctly from the MS Visual Studio
-environment; the follow changes should be programmed to automatically
-occur after building installer.msi;
-
-Modify the following records;
-
-  Table     Property             Value
-  Property  FolderForm_AllUsers  s/ME/ALL/
-  
-Insert the follow records;
-
-  Table         Action           Type   Source     Target
-  CustomAction  DIRCH_TARGETDIR  307    TARGETDIR  [HTTPSDPATH]\..
-
-  Table                    Action           Condition       Seq
-  InstallUISequence        DIRCH_TARGETDIR  HTTPSDPATH<>""  725
-  InstallExecuteSequence   DIRCH_TARGETDIR  HTTPSDPATH<>""  725
-
-This sequence uses the HTTPSDPATH search already built into the
-installer.msi project, and sets that default as the targetdir for
-the installation.
-
-
+README for mod_aspdotnet + Apache.Web 
+-----------------------------------
+
+
+Build Notes
+-----------
+
+The top level workspace mod_aspdotnet.sln is invoked for a release build
+with the syntax;
+
+  set APACHE_PATH=d:path\to\apache\serverroot
+  devenv mod_aspdotnet.sln /useenv /build Release /project installer
+
+The necessary files, mod_aspdotnet.so [+.pdb for debug symbols] and the
+Apache.Web.dll [+.pdb] are built into the installer.msi package at 
+the top-level Release/ directory of this module.
+
+It is absolutely critical that this build occurs using the Visual Studio
+.NET (7.0) version.  Older VS 6.0 compilers won't support the module.
+
+Note that the Apache.Web.dll is temporarily registered, it's type library
+(.tlb file) is extracted, and it is unregistered as a post-build step for
+both the Debug and Release builds of the Apache.web.  This assures us that
+the usual build machines remain clean of excess COM registration gunk.
+
+We build Apache.Web.dll with delay-load of libhttpd, libapr and libaprutil 
+dll's.  This is important since Apache.Web.dll can't be touched unless
+it is literally adjacent (in the same directory) to those Apache 2.0 .dll's.
+With this method, Apache.Web.dll can be loaded (provided we don't instantiate
+an Apache.Web.WorkerRequest object) even without resolving the path to those
+dll's in the Serverroot/bin directory.
+
+
+Deployment Notes
+----------------
+
+YOU MUST test both the .NET Framework SDK, as well as the .NET Framework
+Runtime environments.  A number of internal behaviors vary between these
+two releases, and Exceptions, destruction, construction and failure cases
+will manifest differently between the two variants.
+
+Asp.Net requires the Apache::Web::Request object to be registered in 
+the Global Assembly Cache in order to instantiate it's host container.
+
+The Debug build will do so automatically, copying mod_aspdotnet.so + .pdb
+into the $(APACHE_TMPINSTALL_WINNT)\modules directory, for testing.
+Apache.Web.dll + .pdb files are copied into $(APACHE_TMPINSTALL_WINNT)\bin
+so that it can discover libapr.dll, libaprutil.dll and libhttpd.dll when
+running in the System.Web.Hosting's AppDomain.  Apache.Web.dll is then 
+registered and installed into the Global Assembly Cache by the Debug build's
+post-build custom command.
+
+In order to install a reference into the Global Assembly Cache (for testing
+the release build instead of the debug build) use;
+
+  regasm d:\path-to-apache\bin\Apache.Web.dll 
+  gacutil /ir Apache.Web.dll FILEPATH d:\path-to-apache\bin\Apache.Web.dll 
Apache.Web 
+
+This will *NOT* work on a customer's machine without the .Net SDK.  Those
+tools [regasm/gacutil] aren't installed with the retail .Net install.
+
+
+TODO
+----
+
+Consider pre-compiling the package into native code prior to distribution.
+
+Consider building a roll-up assembly integrating the libhttpd et. al. with
+the Apache.Web.dll package.  Perhaps we can force them to live in different
+locations with this method.  Note roll up assemblies -reference- the other
+.dll's [that assembly is a .dll itself] but it does not actually merge the
+other .dll's into a single package.
+
+Consider registering aspnet_isapi.dll keys in the registry.  This could
+occur as part of the installer or module startup.  The installer would be
+a much more efficient method.
+
+Note that the .msi package searches for apache/bin/apache.exe up to 3 levels 
+deep from the local hard drives, in sequence.  It aught to further test for
+version 2.0.43.0 or later.
+
+The installer cannot be configured correctly from the MS Visual Studio
+environment; the follow changes should be programmed to automatically
+occur after building installer.msi;
+
+Modify the following records;
+
+  Table     Property             Value
+  Property  FolderForm_AllUsers  s/ME/ALL/
+  
+Insert the follow records;
+
+  Table         Action           Type   Source     Target
+  CustomAction  DIRCH_TARGETDIR  307    TARGETDIR  [HTTPSDPATH]\..
+
+  Table                    Action           Condition       Seq
+  InstallUISequence        DIRCH_TARGETDIR  HTTPSDPATH<>""  725
+  InstallExecuteSequence   DIRCH_TARGETDIR  HTTPSDPATH<>""  725
+
+This sequence uses the HTTPSDPATH search already built into the
+installer.msi project, and sets that default as the targetdir for
+the installation.
+
+

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/aspnet.conf
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/aspnet.conf (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/aspnet.conf Fri Jul 16 09:27:17 2004
@@ -1,21 +1,21 @@
-LoadModule aspdotnet_module "../modules/mod_aspdotnet.so"
-
-AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
-                   licx rem resources resx soap vb vbproj vsdisco webinfo 
-
-AliasMatch "^/(?i)aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*)" \
-           "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$5"
-<Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
-    Options FollowSymlinks
-    Order allow,deny
-    Allow from all
-</Directory>
-
-#AspNetMount /app-uri "C:/path/to/app"
-#Alias /app-uri "C:/path/to/app"
-#<Directory "C:/path/to/app">
-#    Options FollowSymlinks Indexes Includes ExecCGI
-#    Order allow,deny
-#    Allow from all
-#    DirectoryIndex default.htm default.aspx
-#</Directory>
+LoadModule aspdotnet_module "../modules/mod_aspdotnet.so"
+
+AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
+                   licx rem resources resx soap vb vbproj vsdisco webinfo 
+
+AliasMatch "^/(?i)aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*)" \
+           "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$5"
+<Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
+    Options FollowSymlinks
+    Order allow,deny
+    Allow from all
+</Directory>
+
+#AspNetMount /app-uri "C:/path/to/app"
+#Alias /app-uri "C:/path/to/app"
+#<Directory "C:/path/to/app">
+#    Options FollowSymlinks Indexes Includes ExecCGI
+#    Order allow,deny
+#    Allow from all
+#    DirectoryIndex default.htm default.aspx
+#</Directory>

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer.isv
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer.isv       (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer.isv       Fri Jul 16 
09:27:17 2004
@@ -1,115 +1,115 @@
-InstallShield Project Text File Version 7.0
-.\installer\_SummaryInformation.idt
-.\installer\_Validation.idt
-.\installer\ActionText.idt
-.\installer\AdminExecuteSequence.idt
-.\installer\Condition.idt
-.\installer\AdminUISequence.idt
-.\installer\AdvtExecuteSequence.idt
-.\installer\AdvtUISequence.idt
-.\installer\AppId.idt
-.\installer\AppSearch.idt
-.\installer\Property.idt
-.\installer\Signature.idt
-.\installer\BBControl.idt
-.\installer\Billboard.idt
-.\installer\Feature.idt
-.\installer\Binary.idt
-.\installer\BindImage.idt
-.\installer\File.idt
-.\installer\CCPSearch.idt
-.\installer\CheckBox.idt
-.\installer\Class.idt
-.\installer\Component.idt
-.\installer\Icon.idt
-.\installer\ProgId.idt
-.\installer\ComboBox.idt
-.\installer\CompLocator.idt
-.\installer\Complus.idt
-.\installer\Directory.idt
-.\installer\Control.idt
-.\installer\Dialog.idt
-.\installer\ControlCondition.idt
-.\installer\ControlEvent.idt
-.\installer\CreateFolder.idt
-.\installer\CustomAction.idt
-.\installer\DrLocator.idt
-.\installer\DuplicateFile.idt
-.\installer\Environment.idt
-.\installer\Error.idt
-.\installer\EventMapping.idt
-.\installer\Extension.idt
-.\installer\MIME.idt
-.\installer\FeatureComponents.idt
-.\installer\FileSFPCatalog.idt
-.\installer\SFPCatalog.idt
-.\installer\Font.idt
-.\installer\IniFile.idt
-.\installer\IniLocator.idt
-.\installer\InstallExecuteSequence.idt
-.\installer\InstallShield.idt
-.\installer\InstallUISequence.idt
-.\installer\ISComponentExtended.idt
-.\installer\ISDependency.idt
-.\installer\ISDisk1File.idt
-.\installer\ISDLLWrapper.idt
-.\installer\ISDynamicFile.idt
-.\installer\ISFeatureMergeModules.idt
-.\installer\ISMergeModule.idt
-.\installer\ISInstallScriptAction.idt
-.\installer\ISLanguage.idt
-.\installer\ISLinkerLibrary.idt
-.\installer\ISLocalControl.idt
-.\installer\ISLocalDialog.idt
-.\installer\ISLogicalDisk.idt
-.\installer\ISProductConfiguration.idt
-.\installer\ISRelease.idt
-.\installer\ISLogicalDiskFeatures.idt
-.\installer\ISObject.idt
-.\installer\ISObjectProperty.idt
-.\installer\IsolatedComponent.idt
-.\installer\ISPathVariable.idt
-.\installer\ISProductConfigurationProperty.idt
-.\installer\ISReleaseExtended.idt
-.\installer\ISScriptFile.idt
-.\installer\ISSelfReg.idt
-.\installer\ISSetupFile.idt
-.\installer\ISStorages.idt
-.\installer\ISString.idt
-.\installer\ISVRoot.idt
-.\installer\ISVRootAppMaps.idt
-.\installer\Verb.idt
-.\installer\LaunchCondition.idt
-.\installer\ListBox.idt
-.\installer\ListView.idt
-.\installer\LockPermissions.idt
-.\installer\Media.idt
-.\installer\MoveFile.idt
-.\installer\MsiAssembly.idt
-.\installer\MsiAssemblyName.idt
-.\installer\MsiDigitalCertificate.idt
-.\installer\MsiDigitalSignature.idt
-.\installer\MsiFileHash.idt
-.\installer\ODBCAttribute.idt
-.\installer\ODBCDriver.idt
-.\installer\ODBCDataSource.idt
-.\installer\ODBCSourceAttribute.idt
-.\installer\ODBCTranslator.idt
-.\installer\Patch.idt
-.\installer\PatchPackage.idt
-.\installer\PublishComponent.idt
-.\installer\RadioButton.idt
-.\installer\Registry.idt
-.\installer\RegLocator.idt
-.\installer\RemoveFile.idt
-.\installer\RemoveIniFile.idt
-.\installer\RemoveRegistry.idt
-.\installer\ReserveCost.idt
-.\installer\SelfReg.idt
-.\installer\ServiceControl.idt
-.\installer\ServiceInstall.idt
-.\installer\Shortcut.idt
-.\installer\TextStyle.idt
-.\installer\TypeLib.idt
-.\installer\UIText.idt
-.\installer\Upgrade.idt
+InstallShield Project Text File Version 7.0
+.\installer\_SummaryInformation.idt
+.\installer\_Validation.idt
+.\installer\ActionText.idt
+.\installer\AdminExecuteSequence.idt
+.\installer\Condition.idt
+.\installer\AdminUISequence.idt
+.\installer\AdvtExecuteSequence.idt
+.\installer\AdvtUISequence.idt
+.\installer\AppId.idt
+.\installer\AppSearch.idt
+.\installer\Property.idt
+.\installer\Signature.idt
+.\installer\BBControl.idt
+.\installer\Billboard.idt
+.\installer\Feature.idt
+.\installer\Binary.idt
+.\installer\BindImage.idt
+.\installer\File.idt
+.\installer\CCPSearch.idt
+.\installer\CheckBox.idt
+.\installer\Class.idt
+.\installer\Component.idt
+.\installer\Icon.idt
+.\installer\ProgId.idt
+.\installer\ComboBox.idt
+.\installer\CompLocator.idt
+.\installer\Complus.idt
+.\installer\Directory.idt
+.\installer\Control.idt
+.\installer\Dialog.idt
+.\installer\ControlCondition.idt
+.\installer\ControlEvent.idt
+.\installer\CreateFolder.idt
+.\installer\CustomAction.idt
+.\installer\DrLocator.idt
+.\installer\DuplicateFile.idt
+.\installer\Environment.idt
+.\installer\Error.idt
+.\installer\EventMapping.idt
+.\installer\Extension.idt
+.\installer\MIME.idt
+.\installer\FeatureComponents.idt
+.\installer\FileSFPCatalog.idt
+.\installer\SFPCatalog.idt
+.\installer\Font.idt
+.\installer\IniFile.idt
+.\installer\IniLocator.idt
+.\installer\InstallExecuteSequence.idt
+.\installer\InstallShield.idt
+.\installer\InstallUISequence.idt
+.\installer\ISComponentExtended.idt
+.\installer\ISDependency.idt
+.\installer\ISDisk1File.idt
+.\installer\ISDLLWrapper.idt
+.\installer\ISDynamicFile.idt
+.\installer\ISFeatureMergeModules.idt
+.\installer\ISMergeModule.idt
+.\installer\ISInstallScriptAction.idt
+.\installer\ISLanguage.idt
+.\installer\ISLinkerLibrary.idt
+.\installer\ISLocalControl.idt
+.\installer\ISLocalDialog.idt
+.\installer\ISLogicalDisk.idt
+.\installer\ISProductConfiguration.idt
+.\installer\ISRelease.idt
+.\installer\ISLogicalDiskFeatures.idt
+.\installer\ISObject.idt
+.\installer\ISObjectProperty.idt
+.\installer\IsolatedComponent.idt
+.\installer\ISPathVariable.idt
+.\installer\ISProductConfigurationProperty.idt
+.\installer\ISReleaseExtended.idt
+.\installer\ISScriptFile.idt
+.\installer\ISSelfReg.idt
+.\installer\ISSetupFile.idt
+.\installer\ISStorages.idt
+.\installer\ISString.idt
+.\installer\ISVRoot.idt
+.\installer\ISVRootAppMaps.idt
+.\installer\Verb.idt
+.\installer\LaunchCondition.idt
+.\installer\ListBox.idt
+.\installer\ListView.idt
+.\installer\LockPermissions.idt
+.\installer\Media.idt
+.\installer\MoveFile.idt
+.\installer\MsiAssembly.idt
+.\installer\MsiAssemblyName.idt
+.\installer\MsiDigitalCertificate.idt
+.\installer\MsiDigitalSignature.idt
+.\installer\MsiFileHash.idt
+.\installer\ODBCAttribute.idt
+.\installer\ODBCDriver.idt
+.\installer\ODBCDataSource.idt
+.\installer\ODBCSourceAttribute.idt
+.\installer\ODBCTranslator.idt
+.\installer\Patch.idt
+.\installer\PatchPackage.idt
+.\installer\PublishComponent.idt
+.\installer\RadioButton.idt
+.\installer\Registry.idt
+.\installer\RegLocator.idt
+.\installer\RemoveFile.idt
+.\installer\RemoveIniFile.idt
+.\installer\RemoveRegistry.idt
+.\installer\ReserveCost.idt
+.\installer\SelfReg.idt
+.\installer\ServiceControl.idt
+.\installer\ServiceInstall.idt
+.\installer\Shortcut.idt
+.\installer\TextStyle.idt
+.\installer\TypeLib.idt
+.\installer\UIText.idt
+.\installer\Upgrade.idt

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/.cvsignore
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/.cvsignore        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/.cvsignore        Fri Jul 
16 09:27:17 2004
@@ -1 +1 @@
-Release
+Release

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ActionText.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ActionText.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ActionText.idt    Fri Jul 
16 09:27:17 2004
@@ -1,73 +1,73 @@
-Action Description     Template
-s72    L64     L128
-ActionText     Action
-Advertise      ##IDS_ACTIONTEXT_1##    
-AllocateRegistrySpace  ##IDS_ACTIONTEXT_2##    ##IDS_ACTIONTEXT_3##
-AppSearch      ##IDS_ACTIONTEXT_4##    ##IDS_ACTIONTEXT_5##
-BindImage      ##IDS_ACTIONTEXT_6##    ##IDS_ACTIONTEXT_7##
-caCreateVRoots ##IDS_ACTIONTEXT_123##  
-caRemoveVRoots ##IDS_ACTIONTEXT_124##  
-CCPSearch      ##IDS_ACTIONTEXT_8##    
-CostFinalize   ##IDS_ACTIONTEXT_9##    
-CostInitialize ##IDS_ACTIONTEXT_10##   
-CreateFolders  ##IDS_ACTIONTEXT_11##   ##IDS_ACTIONTEXT_12##
-CreateShortcuts        ##IDS_ACTIONTEXT_13##   ##IDS_ACTIONTEXT_14##
-DeleteServices ##IDS_ACTIONTEXT_15##   ##IDS_ACTIONTEXT_16##
-DuplicateFiles ##IDS_ACTIONTEXT_17##   ##IDS_ACTIONTEXT_18##
-FileCost       ##IDS_ACTIONTEXT_19##   
-FindRelatedProducts    ##IDS_ACTIONTEXT_115##  ##IDS_ACTIONTEXT_116##
-GenerateScript ##IDS_ACTIONTEXT_20##   ##IDS_ACTIONTEXT_21##
-InstallAdminPackage    ##IDS_ACTIONTEXT_22##   ##IDS_ACTIONTEXT_23##
-InstallFiles   ##IDS_ACTIONTEXT_24##   ##IDS_ACTIONTEXT_25##
-InstallODBC    ##IDS_ACTIONTEXT_26##   
-InstallServices        ##IDS_ACTIONTEXT_27##   ##IDS_ACTIONTEXT_28##
-InstallSFPCatalogFile  ##IDS_ACTIONTEXT_121##  ##IDS_ACTIONTEXT_122##
-InstallValidate        ##IDS_ACTIONTEXT_29##   
-LaunchConditions       ##IDS_ACTIONTEXT_30##   
-MigrateFeatureStates   ##IDS_ACTIONTEXT_117##  ##IDS_ACTIONTEXT_118##
-MoveFiles      ##IDS_ACTIONTEXT_31##   ##IDS_ACTIONTEXT_32##
-PatchFiles     ##IDS_ACTIONTEXT_33##   ##IDS_ACTIONTEXT_34##
-ProcessComponents      ##IDS_ACTIONTEXT_35##   
-PublishComponents      ##IDS_ACTIONTEXT_36##   ##IDS_ACTIONTEXT_37##
-PublishFeatures        ##IDS_ACTIONTEXT_38##   ##IDS_ACTIONTEXT_39##
-PublishProduct ##IDS_ACTIONTEXT_40##   
-RegisterClassInfo      ##IDS_ACTIONTEXT_41##   ##IDS_ACTIONTEXT_42##
-RegisterComPlus        ##IDS_ACTIONTEXT_111##  ##IDS_ACTIONTEXT_112##
-RegisterExtensionInfo  ##IDS_ACTIONTEXT_43##   ##IDS_ACTIONTEXT_44##
-RegisterFonts  ##IDS_ACTIONTEXT_45##   ##IDS_ACTIONTEXT_46##
-RegisterMIMEInfo       ##IDS_ACTIONTEXT_47##   ##IDS_ACTIONTEXT_48##
-RegisterProduct        ##IDS_ACTIONTEXT_49##   ##IDS_ACTIONTEXT_50##
-RegisterProgIdInfo     ##IDS_ACTIONTEXT_51##   ##IDS_ACTIONTEXT_52##
-RegisterTypeLibraries  ##IDS_ACTIONTEXT_53##   ##IDS_ACTIONTEXT_54##
-RegisterUser   ##IDS_ACTIONTEXT_55##   ##IDS_ACTIONTEXT_56##
-RemoveDuplicateFiles   ##IDS_ACTIONTEXT_57##   ##IDS_ACTIONTEXT_58##
-RemoveEnvironmentStrings       ##IDS_ACTIONTEXT_59##   ##IDS_ACTIONTEXT_60##
-RemoveExistingProducts ##IDS_ACTIONTEXT_119##  ##IDS_ACTIONTEXT_120##
-RemoveFiles    ##IDS_ACTIONTEXT_61##   ##IDS_ACTIONTEXT_62##
-RemoveFolders  ##IDS_ACTIONTEXT_63##   ##IDS_ACTIONTEXT_64##
-RemoveIniValues        ##IDS_ACTIONTEXT_65##   ##IDS_ACTIONTEXT_66##
-RemoveODBC     ##IDS_ACTIONTEXT_67##   
-RemoveRegistryValues   ##IDS_ACTIONTEXT_68##   ##IDS_ACTIONTEXT_69##
-RemoveShortcuts        ##IDS_ACTIONTEXT_70##   ##IDS_ACTIONTEXT_71##
-RMCCPSearch    ##IDS_ACTIONTEXT_72##   
-Rollback       ##IDS_ACTIONTEXT_73##   ##IDS_ACTIONTEXT_74##
-RollbackCleanup        ##IDS_ACTIONTEXT_75##   ##IDS_ACTIONTEXT_76##
-SelfRegModules ##IDS_ACTIONTEXT_77##   ##IDS_ACTIONTEXT_78##
-SelfUnregModules       ##IDS_ACTIONTEXT_79##   ##IDS_ACTIONTEXT_80##
-SetODBCFolders ##IDS_ACTIONTEXT_81##   
-StartServices  ##IDS_ACTIONTEXT_82##   ##IDS_ACTIONTEXT_83##
-StopServices   ##IDS_ACTIONTEXT_84##   ##IDS_ACTIONTEXT_85##
-UnmoveFiles    ##IDS_ACTIONTEXT_86##   ##IDS_ACTIONTEXT_87##
-UnpublishComponents    ##IDS_ACTIONTEXT_88##   ##IDS_ACTIONTEXT_89##
-UnpublishFeatures      ##IDS_ACTIONTEXT_90##   ##IDS_ACTIONTEXT_91##
-UnpublishProduct       ##IDS_ACTIONTEXT_92##   
-UnregisterClassInfo    ##IDS_ACTIONTEXT_93##   ##IDS_ACTIONTEXT_94##
-UnregisterComPlus      ##IDS_ACTIONTEXT_113##  ##IDS_ACTIONTEXT_114##
-UnregisterExtensionInfo        ##IDS_ACTIONTEXT_95##   ##IDS_ACTIONTEXT_96##
-UnregisterFonts        ##IDS_ACTIONTEXT_97##   ##IDS_ACTIONTEXT_98##
-UnregisterMIMEInfo     ##IDS_ACTIONTEXT_99##   ##IDS_ACTIONTEXT_100##
-UnregisterProgIdInfo   ##IDS_ACTIONTEXT_101##  ##IDS_ACTIONTEXT_102##
-UnregisterTypeLibraries        ##IDS_ACTIONTEXT_103##  ##IDS_ACTIONTEXT_104##
-WriteEnvironmentStrings        ##IDS_ACTIONTEXT_105##  ##IDS_ACTIONTEXT_106##
-WriteIniValues ##IDS_ACTIONTEXT_107##  ##IDS_ACTIONTEXT_108##
-WriteRegistryValues    ##IDS_ACTIONTEXT_109##  ##IDS_ACTIONTEXT_110##
+Action Description     Template
+s72    L64     L128
+ActionText     Action
+Advertise      ##IDS_ACTIONTEXT_1##    
+AllocateRegistrySpace  ##IDS_ACTIONTEXT_2##    ##IDS_ACTIONTEXT_3##
+AppSearch      ##IDS_ACTIONTEXT_4##    ##IDS_ACTIONTEXT_5##
+BindImage      ##IDS_ACTIONTEXT_6##    ##IDS_ACTIONTEXT_7##
+caCreateVRoots ##IDS_ACTIONTEXT_123##  
+caRemoveVRoots ##IDS_ACTIONTEXT_124##  
+CCPSearch      ##IDS_ACTIONTEXT_8##    
+CostFinalize   ##IDS_ACTIONTEXT_9##    
+CostInitialize ##IDS_ACTIONTEXT_10##   
+CreateFolders  ##IDS_ACTIONTEXT_11##   ##IDS_ACTIONTEXT_12##
+CreateShortcuts        ##IDS_ACTIONTEXT_13##   ##IDS_ACTIONTEXT_14##
+DeleteServices ##IDS_ACTIONTEXT_15##   ##IDS_ACTIONTEXT_16##
+DuplicateFiles ##IDS_ACTIONTEXT_17##   ##IDS_ACTIONTEXT_18##
+FileCost       ##IDS_ACTIONTEXT_19##   
+FindRelatedProducts    ##IDS_ACTIONTEXT_115##  ##IDS_ACTIONTEXT_116##
+GenerateScript ##IDS_ACTIONTEXT_20##   ##IDS_ACTIONTEXT_21##
+InstallAdminPackage    ##IDS_ACTIONTEXT_22##   ##IDS_ACTIONTEXT_23##
+InstallFiles   ##IDS_ACTIONTEXT_24##   ##IDS_ACTIONTEXT_25##
+InstallODBC    ##IDS_ACTIONTEXT_26##   
+InstallServices        ##IDS_ACTIONTEXT_27##   ##IDS_ACTIONTEXT_28##
+InstallSFPCatalogFile  ##IDS_ACTIONTEXT_121##  ##IDS_ACTIONTEXT_122##
+InstallValidate        ##IDS_ACTIONTEXT_29##   
+LaunchConditions       ##IDS_ACTIONTEXT_30##   
+MigrateFeatureStates   ##IDS_ACTIONTEXT_117##  ##IDS_ACTIONTEXT_118##
+MoveFiles      ##IDS_ACTIONTEXT_31##   ##IDS_ACTIONTEXT_32##
+PatchFiles     ##IDS_ACTIONTEXT_33##   ##IDS_ACTIONTEXT_34##
+ProcessComponents      ##IDS_ACTIONTEXT_35##   
+PublishComponents      ##IDS_ACTIONTEXT_36##   ##IDS_ACTIONTEXT_37##
+PublishFeatures        ##IDS_ACTIONTEXT_38##   ##IDS_ACTIONTEXT_39##
+PublishProduct ##IDS_ACTIONTEXT_40##   
+RegisterClassInfo      ##IDS_ACTIONTEXT_41##   ##IDS_ACTIONTEXT_42##
+RegisterComPlus        ##IDS_ACTIONTEXT_111##  ##IDS_ACTIONTEXT_112##
+RegisterExtensionInfo  ##IDS_ACTIONTEXT_43##   ##IDS_ACTIONTEXT_44##
+RegisterFonts  ##IDS_ACTIONTEXT_45##   ##IDS_ACTIONTEXT_46##
+RegisterMIMEInfo       ##IDS_ACTIONTEXT_47##   ##IDS_ACTIONTEXT_48##
+RegisterProduct        ##IDS_ACTIONTEXT_49##   ##IDS_ACTIONTEXT_50##
+RegisterProgIdInfo     ##IDS_ACTIONTEXT_51##   ##IDS_ACTIONTEXT_52##
+RegisterTypeLibraries  ##IDS_ACTIONTEXT_53##   ##IDS_ACTIONTEXT_54##
+RegisterUser   ##IDS_ACTIONTEXT_55##   ##IDS_ACTIONTEXT_56##
+RemoveDuplicateFiles   ##IDS_ACTIONTEXT_57##   ##IDS_ACTIONTEXT_58##
+RemoveEnvironmentStrings       ##IDS_ACTIONTEXT_59##   ##IDS_ACTIONTEXT_60##
+RemoveExistingProducts ##IDS_ACTIONTEXT_119##  ##IDS_ACTIONTEXT_120##
+RemoveFiles    ##IDS_ACTIONTEXT_61##   ##IDS_ACTIONTEXT_62##
+RemoveFolders  ##IDS_ACTIONTEXT_63##   ##IDS_ACTIONTEXT_64##
+RemoveIniValues        ##IDS_ACTIONTEXT_65##   ##IDS_ACTIONTEXT_66##
+RemoveODBC     ##IDS_ACTIONTEXT_67##   
+RemoveRegistryValues   ##IDS_ACTIONTEXT_68##   ##IDS_ACTIONTEXT_69##
+RemoveShortcuts        ##IDS_ACTIONTEXT_70##   ##IDS_ACTIONTEXT_71##
+RMCCPSearch    ##IDS_ACTIONTEXT_72##   
+Rollback       ##IDS_ACTIONTEXT_73##   ##IDS_ACTIONTEXT_74##
+RollbackCleanup        ##IDS_ACTIONTEXT_75##   ##IDS_ACTIONTEXT_76##
+SelfRegModules ##IDS_ACTIONTEXT_77##   ##IDS_ACTIONTEXT_78##
+SelfUnregModules       ##IDS_ACTIONTEXT_79##   ##IDS_ACTIONTEXT_80##
+SetODBCFolders ##IDS_ACTIONTEXT_81##   
+StartServices  ##IDS_ACTIONTEXT_82##   ##IDS_ACTIONTEXT_83##
+StopServices   ##IDS_ACTIONTEXT_84##   ##IDS_ACTIONTEXT_85##
+UnmoveFiles    ##IDS_ACTIONTEXT_86##   ##IDS_ACTIONTEXT_87##
+UnpublishComponents    ##IDS_ACTIONTEXT_88##   ##IDS_ACTIONTEXT_89##
+UnpublishFeatures      ##IDS_ACTIONTEXT_90##   ##IDS_ACTIONTEXT_91##
+UnpublishProduct       ##IDS_ACTIONTEXT_92##   
+UnregisterClassInfo    ##IDS_ACTIONTEXT_93##   ##IDS_ACTIONTEXT_94##
+UnregisterComPlus      ##IDS_ACTIONTEXT_113##  ##IDS_ACTIONTEXT_114##
+UnregisterExtensionInfo        ##IDS_ACTIONTEXT_95##   ##IDS_ACTIONTEXT_96##
+UnregisterFonts        ##IDS_ACTIONTEXT_97##   ##IDS_ACTIONTEXT_98##
+UnregisterMIMEInfo     ##IDS_ACTIONTEXT_99##   ##IDS_ACTIONTEXT_100##
+UnregisterProgIdInfo   ##IDS_ACTIONTEXT_101##  ##IDS_ACTIONTEXT_102##
+UnregisterTypeLibraries        ##IDS_ACTIONTEXT_103##  ##IDS_ACTIONTEXT_104##
+WriteEnvironmentStrings        ##IDS_ACTIONTEXT_105##  ##IDS_ACTIONTEXT_106##
+WriteIniValues ##IDS_ACTIONTEXT_107##  ##IDS_ACTIONTEXT_108##
+WriteRegistryValues    ##IDS_ACTIONTEXT_109##  ##IDS_ACTIONTEXT_110##

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminExecuteSequence.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminExecuteSequence.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminExecuteSequence.idt  
Fri Jul 16 09:27:17 2004
@@ -1,12 +1,12 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-AdminExecuteSequence   Action
-CostFinalize           150     CostFinalize    
-CostInitialize         50      CostInitialize  
-FileCost               100     FileCost        
-InstallAdminPackage            300     InstallAdminPackage     
-InstallFiles           350     InstallFiles    
-InstallFinalize                400     InstallFinalize 
-InstallInitialize              250     InstallInitialize       
-InstallValidate                200     InstallValidate 
-ScheduleReboot ISSCHEDULEREBOOT        375     ScheduleReboot  
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+AdminExecuteSequence   Action
+CostFinalize           150     CostFinalize    
+CostInitialize         50      CostInitialize  
+FileCost               100     FileCost        
+InstallAdminPackage            300     InstallAdminPackage     
+InstallFiles           350     InstallFiles    
+InstallFinalize                400     InstallFinalize 
+InstallInitialize              250     InstallInitialize       
+InstallValidate                200     InstallValidate 
+ScheduleReboot ISSCHEDULEREBOOT        375     ScheduleReboot  

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminUISequence.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminUISequence.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdminUISequence.idt       
Fri Jul 16 09:27:17 2004
@@ -1,13 +1,13 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-AdminUISequence        Action
-AdminWelcome           250     AdminWelcome    
-CostFinalize           200     CostFinalize    
-CostInitialize         100     CostInitialize  
-ExecuteAction          350     ExecuteAction   
-FileCost               150     FileCost        
-SetupCompleteError             -3      SetupCompleteError      
-SetupCompleteSuccess           -1      SetupCompleteSuccess    
-SetupInitialization            50      SetupInitialization     
-SetupInterrupted               -2      SetupInterrupted        
-SetupProgress          300     SetupProgress   
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+AdminUISequence        Action
+AdminWelcome           250     AdminWelcome    
+CostFinalize           200     CostFinalize    
+CostInitialize         100     CostInitialize  
+ExecuteAction          350     ExecuteAction   
+FileCost               150     FileCost        
+SetupCompleteError             -3      SetupCompleteError      
+SetupCompleteSuccess           -1      SetupCompleteSuccess    
+SetupInitialization            50      SetupInitialization     
+SetupInterrupted               -2      SetupInterrupted        
+SetupProgress          300     SetupProgress   

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtExecuteSequence.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtExecuteSequence.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtExecuteSequence.idt   
Fri Jul 16 09:27:17 2004
@@ -1,19 +1,19 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-AdvtExecuteSequence    Action
-CostFinalize           100     CostFinalize    
-CostInitialize         50      CostInitialize  
-CreateShortcuts                250     CreateShortcuts 
-InstallFinalize                700     InstallFinalize 
-InstallInitialize              200     InstallInitialize       
-InstallValidate                150     InstallValidate 
-MsiPublishAssemblies           575     MsiPublishAssemblies    
-PublishComponents              550     PublishComponents       
-PublishFeatures                600     PublishFeatures 
-PublishProduct         650     PublishProduct  
-RegisterClassInfo              300     RegisterClassInfo       
-RegisterExtensionInfo          350     RegisterExtensionInfo   
-RegisterMIMEInfo               450     RegisterMIMEInfo        
-RegisterProgIdInfo             400     RegisterProgIdInfo      
-RegisterTypeLibraries          500     RegisterTypeLibraries   
-ScheduleReboot ISSCHEDULEREBOOT        675     ScheduleReboot  
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+AdvtExecuteSequence    Action
+CostFinalize           100     CostFinalize    
+CostInitialize         50      CostInitialize  
+CreateShortcuts                250     CreateShortcuts 
+InstallFinalize                700     InstallFinalize 
+InstallInitialize              200     InstallInitialize       
+InstallValidate                150     InstallValidate 
+MsiPublishAssemblies           575     MsiPublishAssemblies    
+PublishComponents              550     PublishComponents       
+PublishFeatures                600     PublishFeatures 
+PublishProduct         650     PublishProduct  
+RegisterClassInfo              300     RegisterClassInfo       
+RegisterExtensionInfo          350     RegisterExtensionInfo   
+RegisterMIMEInfo               450     RegisterMIMEInfo        
+RegisterProgIdInfo             400     RegisterProgIdInfo      
+RegisterTypeLibraries          500     RegisterTypeLibraries   
+ScheduleReboot ISSCHEDULEREBOOT        675     ScheduleReboot  

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtUISequence.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtUISequence.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AdvtUISequence.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-AdvtUISequence Action
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+AdvtUISequence Action

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppId.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppId.idt (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppId.idt Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-AppId  RemoteServerName        LocalService    ServiceParameters       
DllSurrogate    ActivateAtStorage       RunAsInteractiveUser
-s38    S255    S255    S255    S255    I2      I2
-AppId  AppId
+AppId  RemoteServerName        LocalService    ServiceParameters       
DllSurrogate    ActivateAtStorage       RunAsInteractiveUser
+s38    S255    S255    S255    S255    I2      I2
+AppId  AppId

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppSearch.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppSearch.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/AppSearch.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Property       Signature_
-s72    s72
-AppSearch      Property        Signature_
+Property       Signature_
+s72    s72
+AppSearch      Property        Signature_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/BBControl.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/BBControl.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/BBControl.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Billboard_     BBControl       Type    X       Y       Width   Height  
Attributes      Text
-s50    s50     s50     i2      i2      i2      i2      I4      L50
-BBControl      Billboard_      BBControl
+Billboard_     BBControl       Type    X       Y       Width   Height  
Attributes      Text
+s50    s50     s50     i2      i2      i2      i2      I4      L50
+BBControl      Billboard_      BBControl

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Billboard.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Billboard.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Billboard.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Billboard      Feature_        Action  Ordering
-s50    s38     S50     I2
-Billboard      Billboard
+Billboard      Feature_        Action  Ordering
+s50    s38     S50     I2
+Billboard      Billboard

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Binary.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Binary.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Binary.idt        Fri Jul 
16 09:27:17 2004
@@ -1,22 +1,22 @@
-Name   Data    ISBuildSourcePath
-s72    V0      S255
-Binary Name
-ISSELFREG.DLL          <ISProductFolder>\redist\language 
independent\i386\isregsvr.dll
-NewBinary1             <ISProjectFolder>\resource\ApacheBanner.jpeg
-NewBinary10            <ISProductFolder>\Redist\Language Independent\OS 
Independent\CompleteSetupIco.ibd
-NewBinary11            <ISProjectFolder>\msi_dll\resolve_apache.dll
-NewBinary12            <ISProductFolder>\Redist\Language Independent\OS 
Independent\DestIcon.ibd
-NewBinary13            <ISProductFolder>\Redist\Language Independent\OS 
Independent\NetworkInstall.ico
-NewBinary14            <ISProductFolder>\Redist\Language Independent\OS 
Independent\DontInstall.ico
-NewBinary15            <ISProductFolder>\Redist\Language Independent\OS 
Independent\Install.ico
-NewBinary16            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallFirstUse.ico
-NewBinary17            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallPartial.ico
-NewBinary18            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallStateMenu.ico
-NewBinary2             <ISProductFolder>\Redist\Language Independent\OS 
Independent\New.ibd
-NewBinary3             <ISProductFolder>\Redist\Language Independent\OS 
Independent\Up.ibd
-NewBinary4             <ISProductFolder>\Redist\Language Independent\OS 
Independent\WarningIcon.ibd
-NewBinary5             <ISProjectFolder>\resource\ApachePanel.jpeg
-NewBinary6             <ISProductFolder>\Redist\Language Independent\OS 
Independent\CustomSetupIco.ibd
-NewBinary7             <ISProductFolder>\Redist\Language Independent\OS 
Independent\ReinstIco.ibd
-NewBinary8             <ISProductFolder>\Redist\Language Independent\OS 
Independent\RemoveIco.ibd
-NewBinary9             <ISProductFolder>\Redist\Language Independent\OS 
Independent\SetupIcon.ibd
+Name   Data    ISBuildSourcePath
+s72    V0      S255
+Binary Name
+ISSELFREG.DLL          <ISProductFolder>\redist\language 
independent\i386\isregsvr.dll
+NewBinary1             <ISProjectFolder>\resource\ApacheBanner.jpeg
+NewBinary10            <ISProductFolder>\Redist\Language Independent\OS 
Independent\CompleteSetupIco.ibd
+NewBinary11            <ISProjectFolder>\msi_dll\resolve_apache.dll
+NewBinary12            <ISProductFolder>\Redist\Language Independent\OS 
Independent\DestIcon.ibd
+NewBinary13            <ISProductFolder>\Redist\Language Independent\OS 
Independent\NetworkInstall.ico
+NewBinary14            <ISProductFolder>\Redist\Language Independent\OS 
Independent\DontInstall.ico
+NewBinary15            <ISProductFolder>\Redist\Language Independent\OS 
Independent\Install.ico
+NewBinary16            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallFirstUse.ico
+NewBinary17            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallPartial.ico
+NewBinary18            <ISProductFolder>\Redist\Language Independent\OS 
Independent\InstallStateMenu.ico
+NewBinary2             <ISProductFolder>\Redist\Language Independent\OS 
Independent\New.ibd
+NewBinary3             <ISProductFolder>\Redist\Language Independent\OS 
Independent\Up.ibd
+NewBinary4             <ISProductFolder>\Redist\Language Independent\OS 
Independent\WarningIcon.ibd
+NewBinary5             <ISProjectFolder>\resource\ApachePanel.jpeg
+NewBinary6             <ISProductFolder>\Redist\Language Independent\OS 
Independent\CustomSetupIco.ibd
+NewBinary7             <ISProductFolder>\Redist\Language Independent\OS 
Independent\ReinstIco.ibd
+NewBinary8             <ISProductFolder>\Redist\Language Independent\OS 
Independent\RemoveIco.ibd
+NewBinary9             <ISProductFolder>\Redist\Language Independent\OS 
Independent\SetupIcon.ibd

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/BindImage.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/BindImage.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/BindImage.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-File_  Path
-s72    S255
-BindImage      File_
+File_  Path
+s72    S255
+BindImage      File_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/CCPSearch.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/CCPSearch.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/CCPSearch.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature_
-s72
-CCPSearch      Signature_
+Signature_
+s72
+CCPSearch      Signature_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/CheckBox.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/CheckBox.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/CheckBox.idt      Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-Property       Value
-s72    S64
-CheckBox       Property
-LAUNCHREADME   
+Property       Value
+s72    S64
+CheckBox       Property
+LAUNCHREADME   

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Class.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Class.idt (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Class.idt Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-CLSID  Context Component_      ProgId_Default  Description     AppId_  
FileTypeMask    Icon_   IconIndex       DefInprocHandler        Argument        
Feature_        Attributes
-s38    s32     s72     S255    L255    S38     S255    S72     I2      S32     
S255    s38     I2
-Class  CLSID   Context Component_
+CLSID  Context Component_      ProgId_Default  Description     AppId_  
FileTypeMask    Icon_   IconIndex       DefInprocHandler        Argument        
Feature_        Attributes
+s38    s32     s72     S255    L255    S38     S255    S72     I2      S32     
S255    s38     I2
+Class  CLSID   Context Component_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ComboBox.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ComboBox.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ComboBox.idt      Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Property       Order   Value   Text
-s72    i2      s64     L64
-ComboBox       Property        Order
+Property       Order   Value   Text
+s72    i2      s64     L64
+ComboBox       Property        Order

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/CompLocator.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/CompLocator.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/CompLocator.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature_     ComponentId     Type
-s72    s38     I2
-CompLocator    Signature_
+Signature_     ComponentId     Type
+s72    s38     I2
+CompLocator    Signature_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Complus.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Complus.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Complus.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Component_     ExpType
-s72    I2
-Complus        Component_      ExpType
+Component_     ExpType
+s72    I2
+Complus        Component_      ExpType

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Component.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Component.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Component.idt     Fri Jul 
16 09:27:17 2004
@@ -1,6 +1,6 @@
-Component      ComponentId     Directory_      Attributes      Condition       
KeyPath ISAttributes    ISComments      ISScanAtBuildFile       
ISRegFileToMergeAtBuild
-s72    S38     s72     i2      S255    S72     I4      S255    S255    S255
-Component      Component
-Apache.Web     {0C479A89-29CD-4979-B4EF-5899EE72DD5A}  GlobalAssemblyCache     
8               Apache.Web.dll  49                      
-html_docs      {C66EA964-E1E5-4B5C-AAA4-C41F9330E44D}  HTML    8               
        17                      
-mod_aspdotnet.so       {BA7DB173-11D7-4873-8F28-8A4FA6B86E33}  APACHE_MODULES  
8               mod_aspdotnet.so        1                       
+Component      ComponentId     Directory_      Attributes      Condition       
KeyPath ISAttributes    ISComments      ISScanAtBuildFile       
ISRegFileToMergeAtBuild
+s72    S38     s72     i2      S255    S72     I4      S255    S255    S255
+Component      Component
+Apache.Web     {0C479A89-29CD-4979-B4EF-5899EE72DD5A}  GlobalAssemblyCache     
8               Apache.Web.dll  49                      
+html_docs      {C66EA964-E1E5-4B5C-AAA4-C41F9330E44D}  HTML    8               
        17                      
+mod_aspdotnet.so       {BA7DB173-11D7-4873-8F28-8A4FA6B86E33}  APACHE_MODULES  
8               mod_aspdotnet.so        1                       

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Condition.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Condition.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Condition.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Feature_       Level   Condition
-s38    i2      S255
-Condition      Feature_        Level
+Feature_       Level   Condition
+s38    i2      S255
+Condition      Feature_        Level

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Control.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Control.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Control.idt       Fri Jul 
16 09:27:17 2004
@@ -1,361 +1,361 @@
-Dialog_        Control Type    X       Y       Width   Height  Attributes      
Property        Text    Control_Next    Help    ISWindowStyle   ISControlId     
ISBuildSourcePath       Binary_
-s72    s50     s20     i2      i2      i2      i2      I4      S72     L0      
S50     L50     I4      I4      S255    S50
-Control        Dialog_ Control
-AdminChangeFolder      Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-AdminChangeFolder      BannerLine      Line    0       44      374     0       
1                                       0                       
-AdminChangeFolder      Branding1       Text    4       229     50      13      
3               ##IDS__IsAdminInstallBrowse_1##                 0               
        
-AdminChangeFolder      Branding2       Text    3       228     50      13      
65537           ##IDS__IsAdminInstallBrowse_2##                 0               
        
-AdminChangeFolder      Cancel  PushButton      301     243     66      17      
3               ##IDS__IsAdminInstallBrowse_3## ComboText               0       
                
-AdminChangeFolder      Combo   DirectoryCombo  21      64      277     80      
458755  TARGETDIR       ##IDS__IsAdminInstallBrowse_4## Up              0       
                
-AdminChangeFolder      ComboText       Text    21      50      99      14      
3               ##IDS__IsAdminInstallBrowse_5## Combo           0               
        
-AdminChangeFolder      DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsAdminInstallBrowse_6##                 0                       
-AdminChangeFolder      DlgLine Line    48      234     326     0       1       
                                0                       
-AdminChangeFolder      DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsAdminInstallBrowse_7##                 0               
        
-AdminChangeFolder      List    DirectoryList   21      90      332     97      
7       TARGETDIR       ##IDS__IsAdminInstallBrowse_8## TailText                
0                       
-AdminChangeFolder      NewFolder       PushButton      335     66      19      
19      3670019                 List    ##IDS__IsAdminInstallBrowse_9## 0       
                NewBinary2
-AdminChangeFolder      OK      PushButton      230     243     66      17      
3               ##IDS__IsAdminInstallBrowse_10##        Cancel          0       
                
-AdminChangeFolder      Tail    PathEdit        21      207     332     17      
3       TARGETDIR       ##IDS__IsAdminInstallBrowse_11##        OK              
0                       
-AdminChangeFolder      TailText        Text    21      193     99      13      
3               ##IDS__IsAdminInstallBrowse_12##        Tail            0       
                
-AdminChangeFolder      Up      PushButton      310     66      19      19      
3670019                 NewFolder       ##IDS__IsAdminInstallBrowse_13##        
0                       NewBinary3
-AdminNetworkLocation   Back    PushButton      164     243     66      17      
3               ##IDS__IsAdminInstallPoint_1##  InstallNow              0       
                
-AdminNetworkLocation   Banner  Bitmap  0       1       374     44      262145  
                                0       0               NewBinary1
-AdminNetworkLocation   BannerLine      Line    0       44      374     0       
1                                       0                       
-AdminNetworkLocation   Branding1       Text    4       229     50      13      
3               ##IDS__IsAdminInstallPoint_2##                  0               
        
-AdminNetworkLocation   Branding2       Text    3       228     50      13      
65537           ##IDS__IsAdminInstallPoint_3##                  0               
        
-AdminNetworkLocation   Browse  PushButton      286     124     66      17      
3               ##IDS__IsAdminInstallPoint_4##  Back            0               
        
-AdminNetworkLocation   Cancel  PushButton      301     243     66      17      
3               ##IDS__IsAdminInstallPoint_5##  SetupPathEdit           0       
                
-AdminNetworkLocation   DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsAdminInstallPoint_6##                  0                       
-AdminNetworkLocation   DlgLine Line    48      234     326     0       1       
                                0                       
-AdminNetworkLocation   DlgText Text    21      51      326     40      3       
        ##IDS__IsAdminInstallPoint_7##                  0                       
-AdminNetworkLocation   DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsAdminInstallPoint_8##                  0               
        
-AdminNetworkLocation   InstallNow      PushButton      230     243     66      
17      3               ##IDS__IsAdminInstallPoint_9##  Cancel          0       
                
-AdminNetworkLocation   LBBrowse        Text    21      90      100     10      
3               ##IDS__IsAdminInstallPoint_10##                 0               
        
-AdminNetworkLocation   SetupPathEdit   PathEdit        21      102     330     
17      3       TARGETDIR               Browse          0                       
-AdminWelcome   Back    PushButton      164     243     66      17      1       
        ##IDS__IsAdminInstallPointWelcome_1##   Next            0               
        
-AdminWelcome   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsAdminInstallPointWelcome_2##   Back            0               
        
-AdminWelcome   DlgLine Line    0       234     326     0       1               
                        0                       
-AdminWelcome   Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
-AdminWelcome   Next    PushButton      230     243     66      17      3       
        ##IDS__IsAdminInstallPointWelcome_3##   Cancel          0               
        
-AdminWelcome   TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsAdminInstallPointWelcome_4##                   0               
        
-AdminWelcome   TextLine2       Text    135     55      228     45      65539   
        ##IDS__IsAdminInstallPointWelcome_5##                   0               
        
-CancelSetup    Icon    Icon    15      15      24      24      5242881         
                        0                       NewBinary4
-CancelSetup    No      PushButton      135     57      66      17      3       
        ##IDS__IsCancelDlg_6##  Yes             0                       
-CancelSetup    Text    Text    48      15      194     30      3               
##IDS__IsCancelDlg_4##                  0                       
-CancelSetup    Yes     PushButton      62      57      66      17      3       
        ##IDS__IsCancelDlg_8##  No              0                       
-CustomerInformation    Back    PushButton      164     243     66      17      
3               ##IDS__IsRegisterUserDlg_1##    ChangeFolder            0       
                
-CustomerInformation    Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-CustomerInformation    BannerLine      Line    0       44      374     0       
1                                       0                       
-CustomerInformation    Branding1       Text    4       229     50      13      
3               ##IDS__IsRegisterUserDlg_2##                    0               
        
-CustomerInformation    Branding2       Text    3       228     50      13      
65537           ##IDS__IsRegisterUserDlg_3##                    0               
        
-CustomerInformation    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsRegisterUserDlg_4##    ComboBox1               0       
0               
-CustomerInformation    ChangeFolder    PushButton      301     55      66      
17      3               ##IDS__IsRegisterUserDlg_19##   Next            0       
0               
-CustomerInformation    ComboBox1       ComboBox        59      73      232     
120     11      _BrowseProperty         RadioGroup              0       12      
        
-CustomerInformation    DestFolder      Icon    21      52      24      24      
5767169                                 0       0               NewBinary12
-CustomerInformation    DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsRegisterUserDlg_7##                    0       0               
-CustomerInformation    DlgLine Line    48      234     326     0       1       
                                0                       
-CustomerInformation    DlgRadioGroupText       Text    57      124     200     
14      3               ##IDS__IsRegisterUserDlg_13##                   0       
0               
-CustomerInformation    DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsRegisterUserDlg_9##                    0       0       
        
-CustomerInformation    LocLabel        Text    57      52      240     12      
3               ##IDS__IsRegisterUserDlg_20##                   0       0       
        
-CustomerInformation    MissingApache   Text    57      202     270     28      
2               ##IDS__IsRegisterUserDlg_21##                   0       0       
        
-CustomerInformation    Next    PushButton      230     243     66      17      
3               ##IDS__IsRegisterUserDlg_12##   Cancel          0       0       
        
-CustomerInformation    RadioGroup      RadioButtonGroup        63      133     
300     50      3       ApplicationUsers        ##IDS__IsRegisterUserDlg_16##   
Back            0       0               
-CustomSetup    Back    PushButton      164     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_1## Next            0                       
-CustomSetup    Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-CustomSetup    BannerLine      Line    0       44      374     0       1       
                                0                       
-CustomSetup    Branding1       Text    4       229     50      13      3       
        ##IDS__IsCustomSelectionDlg_2##                 0                       
-CustomSetup    Branding2       Text    3       228     50      13      65537   
        ##IDS__IsCustomSelectionDlg_3##                 0                       
-CustomSetup    Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_4## Tree            0                       
-CustomSetup    ChangeFolder    PushButton      301     203     66      17      
3               ##IDS__IsCustomSelectionDlg_16##        Help            0       
                
-CustomSetup    Details PushButton      93      243     66      17      3       
        ##IDS__IsCustomSelectionDlg_5## Back            0                       
-CustomSetup    DlgDesc Text    17      23      292     25      65539           
##IDS__IsCustomSelectionDlg_6##                 0                       
-CustomSetup    DlgLine Line    48      234     326     0       1               
                        0                       
-CustomSetup    DlgText Text    9       51      360     10      3               
##IDS__IsCustomSelectionDlg_7##                 0                       
-CustomSetup    DlgTitle        Text    9       6       292     25      65539   
        ##IDS__IsCustomSelectionDlg_8##                 0                       
-CustomSetup    FeatureGroup    GroupBox        235     67      131     120     
1               ##IDS__IsCustomSelectionDlg_15##                        0       
                
-CustomSetup    Help    PushButton      22      243     66      17      3       
        ##IDS__IsCustomSelectionDlg_13##        Details         0               
        
-CustomSetup    InstallLabel    Text    8       190     360     10      3       
        ##IDS__IsCustomSelectionDlg_18##                        0               
        
-CustomSetup    ItemDescription Text    241     80      120     50      3       
        ##IDS__IsCustomSelectionDlg_14##                        0               
        
-CustomSetup    Location        Text    8       203     291     20      3       
        ##IDS__IsCustomSelectionDlg_17##                        0               
        
-CustomSetup    Next    PushButton      230     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_11##        Cancel          0               
        
-CustomSetup    Size    Text    241     133     120     50      3               
##IDS__IsCustomSelectionDlg_12##                        0                       
-CustomSetup    Tree    SelectionTree   8       70      220     118     7       
_BrowseProperty         ChangeFolder            0                       
-CustomSetupTips        Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-CustomSetupTips        BannerLine      Line    0       44      374     0       
1                                       0                       
-CustomSetupTips        Branding1       Text    4       229     50      13      
3               ##IDS_SetupTips_2##                     0                       
-CustomSetupTips        Branding2       Text    3       228     50      13      
65537           ##IDS_SetupTips_3##                     0                       
-CustomSetupTips        DlgDesc Text    21      23      292     25      65539   
        ##IDS_SetupTips_4##                     0                       
-CustomSetupTips        DlgLine Line    48      234     326     0       1       
                                0                       
-CustomSetupTips        DlgTitle        Text    13      6       292     25      
65539           ##IDS_SetupTips_5##                     0                       
-CustomSetupTips        DontInstall     Icon    21      155     24      24      
5242881                                 0                       NewBinary14
-CustomSetupTips        DontInstallText Text    60      155     300     20      
3               ##IDS_SetupTips_6##                     0                       
-CustomSetupTips        FirstInstallText        Text    60      180     300     
20      3               ##IDS_SetupTips_10##                    0               
        
-CustomSetupTips        Install Icon    21      105     24      24      5242881 
                                0                       NewBinary15
-CustomSetupTips        InstallFirstUse Icon    21      180     24      24      
5242881                                 0                       NewBinary16
-CustomSetupTips        InstallPartial  Icon    21      130     24      24      
5242881                                 0                       NewBinary17
-CustomSetupTips        InstallStateMenu        Icon    21      52      24      
24      5242881                                 0                       
NewBinary18
-CustomSetupTips        InstallStateText        Text    21      91      300     
10      3               ##IDS_SetupTips_12##                    0               
        
-CustomSetupTips        InstallText     Text    60      105     300     20      
3               ##IDS_SetupTips_8##                     0                       
-CustomSetupTips        MenuText        Text    50      52      300     36      
3               ##IDS_SetupTips_9##                     0                       
-CustomSetupTips        NetworkInstall  Icon    21      205     24      24      
5242881                                 0                       NewBinary13
-CustomSetupTips        NetworkInstallText      Text    60      205     300     
20      3               ##IDS_SetupTips_11##                    0               
        
-CustomSetupTips        OK      PushButton      301     243     66      17      
3               ##IDS_SetupTips_1##                     0                       
-CustomSetupTips        PartialText     Text    60      130     300     20      
3               ##IDS_SetupTips_7##                     0                       
-DatabaseFolder Back    PushButton      164     243     66      17      3       
        ##IDS__DatabaseFolder_6##       Next            0                       
-DatabaseFolder Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-DatabaseFolder BannerLine      Line    0       44      374     0       1       
                                0                       
-DatabaseFolder Branding1       Text    4       229     50      13      3       
        ##IDS__DatabaseFolder_3##                       0                       
-DatabaseFolder Branding2       Text    3       228     50      13      65537   
        ##IDS__DatabaseFolder_2##                       0                       
-DatabaseFolder Cancel  PushButton      301     243     66      17      3       
        ##IDS__DatabaseFolder_1##       ChangeFolder            0               
        
-DatabaseFolder ChangeFolder    PushButton      301     65      66      17      
3               ##IDS__DatabaseFolder_8##       Back            0               
        
-DatabaseFolder DatabaseFolder  Icon    21      52      24      24      5242881 
                                0                       NewBinary12
-DatabaseFolder DlgDesc Text    21      23      292     25      65539           
##IDS__DatabaseFolder_4##                       0                       
-DatabaseFolder DlgLine Line    48      234     326     0       1               
                        0                       
-DatabaseFolder DlgTitle        Text    13      6       292     25      65539   
        ##IDS__DatabaseFolder_5##                       0                       
-DatabaseFolder Location        Text    57      65      240     40      3       
_BrowseProperty ##IDS__DatabaseFolder_9##                       0               
        
-DatabaseFolder LocLabel        Text    57      52      290     10      3       
        ##IDS__DatabaseFolder_10##                      0                       
-DatabaseFolder Next    PushButton      230     243     66      17      3       
        ##IDS__DatabaseFolder_7##       Cancel          0                       
-DestinationFolder      Back    PushButton      164     243     66      17      
3               ##IDS__DestinationFolder_6##    Next            0               
        
-DestinationFolder      Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-DestinationFolder      BannerLine      Line    0       44      374     0       
1                                       0                       
-DestinationFolder      Branding1       Text    4       229     50      13      
3               ##IDS__DestinationFolder_3##                    0               
        
-DestinationFolder      Branding2       Text    3       228     50      13      
65537           ##IDS__DestinationFolder_2##                    0               
        
-DestinationFolder      Cancel  PushButton      301     243     66      17      
3               ##IDS__DestinationFolder_1##    ChangeFolder            0       
                
-DestinationFolder      ChangeFolder    PushButton      301     65      66      
17      3               ##IDS__DestinationFolder_8##    Back            0       
                
-DestinationFolder      DestFolder      Icon    21      52      24      24      
5242881                                 0                       NewBinary12
-DestinationFolder      DlgDesc Text    21      23      292     25      65539   
        ##IDS__DestinationFolder_4##                    0                       
-DestinationFolder      DlgLine Line    48      234     326     0       1       
                                0                       
-DestinationFolder      DlgTitle        Text    13      6       292     25      
65539           ##IDS__DestinationFolder_5##                    0               
        
-DestinationFolder      Location        Text    57      65      240     40      
3       _BrowseProperty ##IDS__DestinationFolder_9##                    0       
                
-DestinationFolder      LocLabel        Text    57      52      290     12      
3               ##IDS__DestinationFolder_10##                   0       0       
        
-DestinationFolder      Next    PushButton      230     243     66      17      
3               ##IDS__DestinationFolder_7##    Cancel          0               
        
-DiskSpaceRequirements  Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-DiskSpaceRequirements  BannerLine      Line    0       44      374     0       
1                                       0                       
-DiskSpaceRequirements  Branding1       Text    4       229     50      13      
3               ##IDS__IsFeatureDetailsDlg_1##                  0               
        
-DiskSpaceRequirements  Branding2       Text    3       228     50      13      
65537           ##IDS__IsFeatureDetailsDlg_2##                  0               
        
-DiskSpaceRequirements  DlgDesc Text    17      23      292     25      65539   
        ##IDS__IsFeatureDetailsDlg_6##                  0                       
-DiskSpaceRequirements  DlgLine Line    48      234     326     0       1       
                                0                       
-DiskSpaceRequirements  DlgText Text    10      185     358     41      3       
        ##IDS__IsFeatureDetailsDlg_7##                  0                       
-DiskSpaceRequirements  DlgTitle        Text    9       6       292     25      
65539           ##IDS__IsFeatureDetailsDlg_8##                  0               
        
-DiskSpaceRequirements  List    VolumeCostList  8       55      358     125     
393223          ##IDS__IsFeatureDetailsDlg_13##                 0               
        
-DiskSpaceRequirements  OK      PushButton      301     243     66      17      
3               ##IDS__IsFeatureDetailsDlg_14##                 0               
        
-FilesInUse     Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-FilesInUse     BannerLine      Line    0       44      374     0       1       
                                0                       
-FilesInUse     Branding1       Text    4       229     50      13      3       
        ##IDS__IsFilesInUse_1##                 0                       
-FilesInUse     Branding2       Text    3       228     50      13      65537   
        ##IDS__IsFilesInUse_2##                 0                       
-FilesInUse     DlgDesc Text    21      23      292     25      65539           
##IDS__IsFilesInUse_3##                 0                       
-FilesInUse     DlgLine Line    48      234     326     0       1               
                        0                       
-FilesInUse     DlgText Text    21      51      348     29      3               
##IDS__IsFilesInUse_4##                 0                       
-FilesInUse     DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsFilesInUse_5##                 0                       
-FilesInUse     Exit    PushButton      301     243     66      17      3       
        ##IDS__IsFilesInUse_6## List            0                       
-FilesInUse     Ignore  PushButton      230     243     66      17      3       
        ##IDS__IsFilesInUse_7## Exit            0                       
-FilesInUse     List    ListBox 21      87      331     135     7       
FileInUseProcess                Retry           0                       
-FilesInUse     Retry   PushButton      164     243     66      17      3       
        ##IDS__IsFilesInUse_8## Ignore          0                       
-InstallChangeFolder    Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-InstallChangeFolder    BannerLine      Line    0       44      374     0       
1                                       0                       
-InstallChangeFolder    Branding1       Text    4       229     50      13      
3               ##IDS__IsBrowseFolderDlg_1##                    0               
        
-InstallChangeFolder    Branding2       Text    3       228     50      13      
65537           ##IDS__IsBrowseFolderDlg_2##                    0               
        
-InstallChangeFolder    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsBrowseFolderDlg_3##    ComboText               0       
                
-InstallChangeFolder    Combo   DirectoryCombo  21      64      277     80      
4128779 _BrowseProperty ##IDS__IsBrowseFolderDlg_4##    Up              0       
                
-InstallChangeFolder    ComboText       Text    21      50      99      14      
3               ##IDS__IsBrowseFolderDlg_5##    Combo           0               
        
-InstallChangeFolder    DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsBrowseFolderDlg_6##                    0                       
-InstallChangeFolder    DlgLine Line    48      234     326     0       1       
                                0                       
-InstallChangeFolder    DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsBrowseFolderDlg_7##                    0               
        
-InstallChangeFolder    List    DirectoryList   21      90      332     97      
15      _BrowseProperty ##IDS__IsBrowseFolderDlg_8##    TailText                
0                       
-InstallChangeFolder    NewFolder       PushButton      335     66      19      
19      3670019                 List    ##IDS__IsBrowseFolderDlg_9##    0       
                NewBinary2
-InstallChangeFolder    OK      PushButton      230     243     66      17      
3               ##IDS__IsBrowseFolderDlg_10##   Cancel          0               
        
-InstallChangeFolder    Tail    PathEdit        21      207     332     17      
15      _BrowseProperty ##IDS__IsBrowseFolderDlg_11##   OK              0       
                
-InstallChangeFolder    TailText        Text    21      193     99      13      
3               ##IDS__IsBrowseFolderDlg_12##   Tail            0               
        
-InstallChangeFolder    Up      PushButton      310     66      19      19      
3670019                 NewFolder       ##IDS__IsBrowseFolderDlg_13##   0       
                NewBinary3
-InstallWelcome Back    PushButton      164     243     66      17      1       
        ##IDS__IsWelcomeDlg_1## Copyright               0                       
-InstallWelcome Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsWelcomeDlg_2## Back            0                       
-InstallWelcome Copyright       Text    135     144     228     73      65539   
        ##IDS__IsWelcomeDlg_7## Next            0                       
-InstallWelcome DlgLine Line    0       234     374     0       1               
                        0                       
-InstallWelcome Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
-InstallWelcome Next    PushButton      230     243     66      17      3       
        ##IDS__IsWelcomeDlg_3## Cancel          0                       
-InstallWelcome TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsWelcomeDlg_4##                 0                       
-InstallWelcome TextLine2       Text    135     55      228     45      65539   
        ##IDS__IsWelcomeDlg_5##                 0                       
-LicenseAgreement       Agree   RadioButtonGroup        8       190     330     
40      3       AgreeToLicense          Back            0                       
-LicenseAgreement       Back    PushButton      164     243     66      17      
3               ##IDS__IsLicenseDlg_1## Next            0                       
-LicenseAgreement       Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-LicenseAgreement       BannerLine      Line    0       44      374     0       
1                                       0                       
-LicenseAgreement       Branding1       Text    4       229     50      13      
3               ##IDS__IsLicenseDlg_2##                 0                       
-LicenseAgreement       Branding2       Text    3       228     50      13      
65537           ##IDS__IsLicenseDlg_3##                 0                       
-LicenseAgreement       Cancel  PushButton      301     243     66      17      
3               ##IDS__IsLicenseDlg_4## Agree           0                       
-LicenseAgreement       DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsLicenseDlg_5##                 0                       
-LicenseAgreement       DlgLine Line    48      234     326     0       1       
                                0                       
-LicenseAgreement       DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsLicenseDlg_7##                 0                       
-LicenseAgreement       Memo    ScrollableText  8       55      358     130     
7                                       0       0       
<ISProjectFolder>\license.rtf   
-LicenseAgreement       Next    PushButton      230     243     66      17      
3               ##IDS__IsLicenseDlg_8## Cancel          0                       
-MaintenanceType        Back    PushButton      164     243     66      17      
3               ##IDS__IsMaintenanceDlg_1##     Next            0               
        
-MaintenanceType        Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
-MaintenanceType        BannerLine      Line    0       44      374     0       
1                                       0                       
-MaintenanceType        Branding1       Text    4       229     50      13      
3               ##IDS__IsMaintenanceDlg_2##                     0               
        
-MaintenanceType        Branding2       Text    3       228     50      13      
65537           ##IDS__IsMaintenanceDlg_3##                     0               
        
-MaintenanceType        Cancel  PushButton      301     243     66      17      
3               ##IDS__IsMaintenanceDlg_4##     RadioGroup              0       
                
-MaintenanceType        DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsMaintenanceDlg_5##                     0                       
-MaintenanceType        DlgLine Line    48      234     326     0       1       
                                0                       
-MaintenanceType        DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsMaintenanceDlg_6##                     0               
        
-MaintenanceType        Ico2    Icon    35      75      24      24      5767169 
                                0       0               NewBinary7
-MaintenanceType        Ico3    Icon    35      135     24      24      5767169 
                                0       0               NewBinary8
-MaintenanceType        Next    PushButton      230     243     66      17      
3               ##IDS__IsMaintenanceDlg_7##     Cancel          0               
        
-MaintenanceType        RadioGroup      RadioButtonGroup        21      55      
290     170     3       _IsMaintenance  ##IDS__IsMaintenanceDlg_11##    Back    
        0       0               
-MaintenanceType        Text2   Text    80      75      260     35      3       
        ##IDS__IsMaintenanceDlg_13##                    0       0               
-MaintenanceType        Text3   Text    80      132     260     35      3       
        ##IDS__IsMaintenanceDlg_14##                    0       0               
-MaintenanceWelcome     Back    PushButton      164     243     66      17      
1               ##IDS__IsMaintenanceWelcome_1## Next            0               
        
-MaintenanceWelcome     Cancel  PushButton      301     243     66      17      
3               ##IDS__IsMaintenanceWelcome_2## Back            0               
        
-MaintenanceWelcome     DlgLine Line    0       234     374     0       1       
                                0                       
-MaintenanceWelcome     Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
-MaintenanceWelcome     Next    PushButton      230     243     66      17      
3               ##IDS__IsMaintenanceWelcome_3## Cancel          0               
        
-MaintenanceWelcome     TextLine1       Text    135     8       225     45      
65539           ##IDS__IsMaintenanceWelcome_4##                 0               
        
-MaintenanceWelcome     TextLine2       Text    135     55      228     50      
65539           ##IDS__IsMaintenanceWelcome_5##                 0               
        
-OutOfSpace     Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-OutOfSpace     BannerLine      Line    0       44      374     0       1       
                                0                       
-OutOfSpace     Branding1       Text    4       229     50      13      3       
        ##IDS__IsDiskSpaceDlg_1##                       0                       
-OutOfSpace     Branding2       Text    3       228     50      13      65537   
        ##IDS__IsDiskSpaceDlg_2##                       0                       
-OutOfSpace     DlgDesc Text    21      23      292     25      65539           
##IDS__IsDiskSpaceDlg_4##                       0                       
-OutOfSpace     DlgLine Line    48      234     326     0       1               
                        0                       
-OutOfSpace     DlgText Text    21      51      326     43      3               
##IDS__IsDiskSpaceDlg_5##                       0                       
-OutOfSpace     DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsDiskSpaceDlg_6##                       0                       
-OutOfSpace     List    VolumeCostList  21      95      332     120     393223  
        ##IDS__IsDiskSpaceDlg_9##                       0                       
-OutOfSpace     Resume  PushButton      301     243     66      17      3       
        ##IDS__IsDiskSpaceDlg_10##                      0                       
-PatchWelcome   Back    PushButton      164     243     66      17      1       
        ##IDS__IsPatchDlg_4##   Next            0                       
-PatchWelcome   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsPatchDlg_3##   Back            0                       
-PatchWelcome   DlgLine Line    0       234     374     0       1               
                        0                       
-PatchWelcome   Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
-PatchWelcome   Next    PushButton      230     243     66      17      3       
        ##IDS__IsPatchDlg_5##   Cancel          0                       
-PatchWelcome   TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsPatchDlg_1##                   0                       
-PatchWelcome   TextLine2       Text    135     54      228     45      65539   
        ##IDS__IsPatchDlg_2##                   0                       
-ReadyToInstall Back    PushButton      164     243     66      17      3       
        ##IDS__IsVerifyReadyDlg_1##     InstallNow              0               
        
-ReadyToInstall Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-ReadyToInstall BannerLine      Line    0       44      374     0       1       
                                0                       
-ReadyToInstall Branding1       Text    4       229     50      13      3       
        ##IDS__IsVerifyReadyDlg_2##                     0                       
-ReadyToInstall Branding2       Text    3       228     50      13      65537   
        ##IDS__IsVerifyReadyDlg_3##                     0                       
-ReadyToInstall Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsVerifyReadyDlg_4##     Back            0                       
-ReadyToInstall DlgDesc Text    21      23      292     25      65539           
##IDS__IsVerifyReadyDlg_5##                     0                       
-ReadyToInstall DlgLine Line    48      234     374     0       1               
                        0                       
-ReadyToInstall DlgText Text    21      100     326     20      3               
##IDS__IsVerifyReadyDlg_6##                     0       0               
-ReadyToInstall DlgText1        Text    21      119     330     24      3       
        ##IDS__IsVerifyReadyDlg_7##                     0       0               
-ReadyToInstall DlgTitle        Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_8##                     0                       
-ReadyToInstall DlgTitle2       Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_10##                    0                       
-ReadyToInstall DlgTitle3       Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_11##                    0                       
-ReadyToInstall InstallNow      PushButton      230     243     66      17      
3               ##IDS__IsVerifyReadyDlg_9##     Cancel          0               
        
-ReadyToInstall Text1   Text    21      51      326     43      3               
##IDS__IsVerifyReadyDlg_22##                    0       0               
-ReadyToRemove  Back    PushButton      164     243     66      17      3       
        ##IDS__IsVerifyRemoveAllDlg_1## RemoveNow               0               
        
-ReadyToRemove  Banner  Bitmap  0       1       374     44      262145          
                        0       0               NewBinary1
-ReadyToRemove  BannerLine      Line    0       44      374     0       1       
                                0                       
-ReadyToRemove  Branding1       Text    4       229     50      13      3       
        ##IDS__IsVerifyRemoveAllDlg_2##                 0                       
-ReadyToRemove  Branding2       Text    3       228     50      13      65537   
        ##IDS__IsVerifyRemoveAllDlg_3##                 0                       
-ReadyToRemove  Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsVerifyRemoveAllDlg_4## Back            0                       
-ReadyToRemove  DlgDesc Text    21      23      292     25      65539           
##IDS__IsVerifyRemoveAllDlg_5##                 0                       
-ReadyToRemove  DlgLine Line    48      234     326     0       1               
                        0                       
-ReadyToRemove  DlgText Text    21      51      326     24      3               
##IDS__IsVerifyRemoveAllDlg_6##                 0                       
-ReadyToRemove  DlgText1        Text    21      79      330     23      3       
        ##IDS__IsVerifyRemoveAllDlg_7##                 0                       
-ReadyToRemove  DlgText2        Text    21      102     330     24      3       
                                0                       
-ReadyToRemove  DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsVerifyRemoveAllDlg_8##                 0                       
-ReadyToRemove  RemoveNow       PushButton      230     243     66      17      
3               ##IDS__IsVerifyRemoveAllDlg_9## Cancel          0               
        
-SetupBadPath   Icon1   Icon    15      15      24      24      5767169         
                        0       0               NewBinary4
-SetupBadPath   PushButton7     PushButton      192     80      66      17      
3               ##NEW_STRING9##                 0       0               
-SetupBadPath   Text1   Text    50      15      200     50      3       
NewProperty1    ##NEW_STRING6##                 0       0               
-SetupCompleteError     Back    PushButton      164     243     66      17      
1               ##IDS__IsFatalError_1## Finish          0                       
-SetupCompleteError     Cancel  PushButton      301     243     66      17      
1               ##IDS__IsFatalError_2## Back            0                       
-SetupCompleteError     DlgLine Line    0       234     374     0       1       
                                0                       
-SetupCompleteError     Finish  PushButton      230     243     66      17      
3               ##IDS__IsFatalError_3## Cancel          0                       
-SetupCompleteError     FinishText1     Text    135     80      228     50      
65539           ##IDS__IsFatalError_4##                 0                       
-SetupCompleteError     FinishText2     Text    135     135     228     25      
65539           ##IDS__IsFatalError_5##                 0                       
-SetupCompleteError     Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
-SetupCompleteError     RestContText1   Text    135     80      228     50      
65539           ##IDS__IsFatalError_6##                 0                       
-SetupCompleteError     RestContText2   Text    135     135     228     25      
65539           ##IDS__IsFatalError_7##                 0                       
-SetupCompleteError     TextLine1       Text    135     8       225     45      
65539           ##IDS__IsFatalError_8##                 0                       
-SetupCompleteError     TextLine2       Text    135     55      228     25      
65539           ##IDS__IsFatalError_9##                 0                       
-SetupCompleteSuccess   Back    PushButton      164     243     66      17      
1               ##IDS__IsExitDialog_1## OK              0                       
-SetupCompleteSuccess   Cancel  PushButton      301     243     66      17      
1               ##IDS__IsExitDialog_2## Image           0                       
-SetupCompleteSuccess   CheckLaunchReadme       CheckBox        151     114     
10      9       2       LAUNCHREADME                            0       0       
        
-SetupCompleteSuccess   DlgLine Line    0       234     374     0       1       
                                0                       
-SetupCompleteSuccess   Image   Bitmap  0       0       374     234     262145  
                Back            0       0               NewBinary5
-SetupCompleteSuccess   LaunchReadmeText        Text    164     112     198     
13      65538           ##IDS__IsExitDialog_8##                 0       0       
        
-SetupCompleteSuccess   OK      PushButton      230     243     66      17      
3               ##IDS__IsExitDialog_3## Cancel          0                       
-SetupCompleteSuccess   TextLine1       Text    135     8       225     45      
65539           ##IDS__IsExitDialog_4##                 0                       
-SetupCompleteSuccess   TextLine2       Text    135     55      228     45      
65538           ##IDS__IsExitDialog_5##                 0                       
-SetupCompleteSuccess   TextLine3       Text    135     55      228     45      
65538           ##IDS__IsExitDialog_6##                 0                       
-SetupCompleteSuccess   UpdateTextLine1 Text    135     30      228     45      
65538           ##IDS__IsExitDialog_Update_4##                  0               
        
-SetupError     A       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_1##                   0                       
-SetupError     C       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_2##                   0                       
-SetupError     ErrorText       Text    50      15      200     50      3       
        ##IDS__IsErrorDlg_3##                   0                       
-SetupError     I       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_4##                   0                       
-SetupError     N       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_5##                   0                       
-SetupError     O       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_6##                   0                       
-SetupError     R       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_7##                   0                       
-SetupError     WarningIcon     Icon    15      15      24      24      5242881 
                                0                       NewBinary4
-SetupError     Y       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_8##                   0                       
-SetupInitialization    ActionData      Text    135     125     228     12      
65539           ##IDS__IsInitDlg_1##                    0                       
-SetupInitialization    ActionText      Text    135     109     220     36      
65539           ##IDS__IsInitDlg_2##                    0                       
-SetupInitialization    Back    PushButton      164     243     66      17      
1               ##IDS__IsInitDlg_3##                    0                       
-SetupInitialization    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsInitDlg_4##                    0                       
-SetupInitialization    DlgLine Line    0       234     374     0       1       
                                0                       
-SetupInitialization    Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
-SetupInitialization    Next    PushButton      230     243     66      17      
1               ##IDS__IsInitDlg_5##                    0                       
-SetupInitialization    TextLine1       Text    135     8       225     45      
65539           ##IDS__IsInitDlg_6##                    0                       
-SetupInitialization    TextLine2       Text    135     55      228     30      
65539           ##IDS__IsInitDlg_7##                    0                       
-SetupInterrupted       Back    PushButton      164     243     66      17      
1               ##IDS__IsUserExit_1##                   0                       
-SetupInterrupted       Cancel  PushButton      301     243     66      17      
1               ##IDS__IsUserExit_2##                   0                       
-SetupInterrupted       DlgLine Line    0       234     374     0       1       
                                0                       
-SetupInterrupted       Finish  PushButton      230     243     66      17      
3               ##IDS__IsUserExit_3##                   0                       
-SetupInterrupted       FinishText1     Text    135     80      228     50      
65539           ##IDS__IsUserExit_4##                   0                       
-SetupInterrupted       FinishText2     Text    135     135     228     25      
65539           ##IDS__IsUserExit_5##                   0                       
-SetupInterrupted       Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
-SetupInterrupted       RestContText1   Text    135     80      228     50      
65539           ##IDS__IsUserExit_6##                   0                       
-SetupInterrupted       RestContText2   Text    135     135     228     25      
65539           ##IDS__IsUserExit_7##                   0                       
-SetupInterrupted       TextLine1       Text    135     8       225     45      
65539           ##IDS__IsUserExit_8##                   0                       
-SetupInterrupted       TextLine2       Text    135     55      228     25      
65539           ##IDS__IsUserExit_9##                   0                       
-SetupProgress  ActionProgress95        ProgressBar     59      113     275     
12      65537           ##IDS__IsProgressDlg_1##                        0       
                
-SetupProgress  ActionText      Text    59      100     275     12      3       
        ##IDS__IsProgressDlg_2##                        0                       
-SetupProgress  Back    PushButton      164     243     66      17      1       
        ##IDS__IsProgressDlg_3##        Next            0                       
-SetupProgress  Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-SetupProgress  BannerLine      Line    0       44      374     0       1       
                                0                       
-SetupProgress  Branding1       Text    4       229     50      13      3       
        ##IDS__IsProgressDlg_4##                        0                       
-SetupProgress  Branding2       Text    3       228     50      13      65537   
        ##IDS__IsProgressDlg_5##                        0                       
-SetupProgress  Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsProgressDlg_6##        Back            0                       
-SetupProgress  DlgDesc Text    21      23      292     25      65538           
##IDS__IsProgressDlg_7##                        0                       
-SetupProgress  DlgDesc2        Text    21      23      292     25      65538   
        ##IDS__IsProgressDlg_16##                       0                       
-SetupProgress  DlgLine Line    48      234     326     0       1               
                        0                       
-SetupProgress  DlgText Text    59      51      275     30      65538           
##IDS__IsProgressDlg_8##                        0                       
-SetupProgress  DlgText2        Text    59      51      275     30      65538   
        ##IDS__IsProgressDlg_17##                       0                       
-SetupProgress  DlgTitle        Text    13      6       292     25      65538   
        ##IDS__IsProgressDlg_9##                        0                       
-SetupProgress  DlgTitle2       Text    13      6       292     25      65538   
        ##IDS__IsProgressDlg_15##                       0                       
-SetupProgress  LbSec   Text    172     139     32      12      2               
##IDS__IsProgressDlg_10##                       0                       
-SetupProgress  LbStatus        Text    59      85      70      12      3       
        ##IDS__IsProgressDlg_11##                       0                       
-SetupProgress  Next    PushButton      230     243     66      17      1       
        ##IDS__IsProgressDlg_12##       Cancel          0                       
-SetupProgress  SetupIcon       Icon    21      51      24      24      5242881 
                                0                       NewBinary9
-SetupProgress  ShowTime        Text    155     139     17      12      2       
        ##IDS__IsProgressDlg_13##                       0                       
-SetupProgress  TextTime        Text    59      139     96      12      2       
        ##IDS__IsProgressDlg_14##                       0                       
-SetupResume    Back    PushButton      164     243     66      17      1       
        ##IDS__IsResumeDlg_1##  Next            0                       
-SetupResume    Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsResumeDlg_2##  Back            0                       
-SetupResume    DlgLine Line    0       234     374     0       1               
                        0                       
-SetupResume    Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
-SetupResume    Next    PushButton      230     243     66      17      3       
        ##IDS__IsResumeDlg_3##  Cancel          0                       
-SetupResume    PreselectedText Text    135     55      228     45      65539   
        ##IDS__IsResumeDlg_4##                  0                       
-SetupResume    ResumeText      Text    135     46      228     45      65539   
        ##IDS__IsResumeDlg_5##                  0                       
-SetupResume    TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsResumeDlg_6##                  0                       
-SetupType      Back    PushButton      164     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_1##    Next            0                       
-SetupType      Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
-SetupType      BannerLine      Line    0       44      374     0       1       
                                0                       
-SetupType      Branding1       Text    4       229     50      13      3       
        ##IDS__IsSetupTypeMinDlg_2##                    0                       
-SetupType      Branding2       Text    3       228     50      13      65537   
        ##IDS__IsSetupTypeMinDlg_3##                    0                       
-SetupType      Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_4##    RadioGroup              0               
        
-SetupType      CompleteIco     Icon    34      94      24      24      5242881 
                                0                       NewBinary10
-SetupType      CompText        Text    80      94      246     35      3       
        ##IDS__IsSetupTypeMinDlg_5##                    0                       
-SetupType      CustomIco       Icon    34      154     24      24      5242881 
                                0                       NewBinary6
-SetupType      CustText        Text    80      154     246     35      3       
        ##IDS__IsSetupTypeMinDlg_6##                    0                       
-SetupType      DlgDesc Text    21      23      292     25      65539           
##IDS__IsSetupTypeMinDlg_7##                    0                       
-SetupType      DlgLine Line    48      234     326     0       1               
                        0                       
-SetupType      DlgText Text    21      51      326     10      3               
##IDS__IsSetupTypeMinDlg_8##                    0                       
-SetupType      DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsSetupTypeMinDlg_9##                    0                       
-SetupType      Next    PushButton      230     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_10##   Cancel          0                       
-SetupType      RadioGroup      RadioButtonGroup        21      79      264     
120     3       _IsSetupTypeMin ##IDS__IsSetupTypeMinDlg_13##   Back            
0                       
-SplashBitmap   Back    PushButton      164     243     66      17      1       
        ##IDS__IsBitmapDlg_1##  Next            0                       
-SplashBitmap   Branding1       Text    4       229     50      13      3       
        ##IDS__IsBitmapDlg_2##                  0                       
-SplashBitmap   Branding2       Text    3       228     50      13      65537   
        ##IDS__IsBitmapDlg_3##                  0                       
-SplashBitmap   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsBitmapDlg_4##  Back            0                       
-SplashBitmap   DlgLine Line    48      234     374     0       1               
                        0                       
-SplashBitmap   Image   Bitmap  13      12      349     211     262145          
                        0       0               NewBinary5
-SplashBitmap   Next    PushButton      230     243     66      17      3       
        ##IDS__IsBitmapDlg_5##  Cancel          0                       
+Dialog_        Control Type    X       Y       Width   Height  Attributes      
Property        Text    Control_Next    Help    ISWindowStyle   ISControlId     
ISBuildSourcePath       Binary_
+s72    s50     s20     i2      i2      i2      i2      I4      S72     L0      
S50     L50     I4      I4      S255    S50
+Control        Dialog_ Control
+AdminChangeFolder      Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+AdminChangeFolder      BannerLine      Line    0       44      374     0       
1                                       0                       
+AdminChangeFolder      Branding1       Text    4       229     50      13      
3               ##IDS__IsAdminInstallBrowse_1##                 0               
        
+AdminChangeFolder      Branding2       Text    3       228     50      13      
65537           ##IDS__IsAdminInstallBrowse_2##                 0               
        
+AdminChangeFolder      Cancel  PushButton      301     243     66      17      
3               ##IDS__IsAdminInstallBrowse_3## ComboText               0       
                
+AdminChangeFolder      Combo   DirectoryCombo  21      64      277     80      
458755  TARGETDIR       ##IDS__IsAdminInstallBrowse_4## Up              0       
                
+AdminChangeFolder      ComboText       Text    21      50      99      14      
3               ##IDS__IsAdminInstallBrowse_5## Combo           0               
        
+AdminChangeFolder      DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsAdminInstallBrowse_6##                 0                       
+AdminChangeFolder      DlgLine Line    48      234     326     0       1       
                                0                       
+AdminChangeFolder      DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsAdminInstallBrowse_7##                 0               
        
+AdminChangeFolder      List    DirectoryList   21      90      332     97      
7       TARGETDIR       ##IDS__IsAdminInstallBrowse_8## TailText                
0                       
+AdminChangeFolder      NewFolder       PushButton      335     66      19      
19      3670019                 List    ##IDS__IsAdminInstallBrowse_9## 0       
                NewBinary2
+AdminChangeFolder      OK      PushButton      230     243     66      17      
3               ##IDS__IsAdminInstallBrowse_10##        Cancel          0       
                
+AdminChangeFolder      Tail    PathEdit        21      207     332     17      
3       TARGETDIR       ##IDS__IsAdminInstallBrowse_11##        OK              
0                       
+AdminChangeFolder      TailText        Text    21      193     99      13      
3               ##IDS__IsAdminInstallBrowse_12##        Tail            0       
                
+AdminChangeFolder      Up      PushButton      310     66      19      19      
3670019                 NewFolder       ##IDS__IsAdminInstallBrowse_13##        
0                       NewBinary3
+AdminNetworkLocation   Back    PushButton      164     243     66      17      
3               ##IDS__IsAdminInstallPoint_1##  InstallNow              0       
                
+AdminNetworkLocation   Banner  Bitmap  0       1       374     44      262145  
                                0       0               NewBinary1
+AdminNetworkLocation   BannerLine      Line    0       44      374     0       
1                                       0                       
+AdminNetworkLocation   Branding1       Text    4       229     50      13      
3               ##IDS__IsAdminInstallPoint_2##                  0               
        
+AdminNetworkLocation   Branding2       Text    3       228     50      13      
65537           ##IDS__IsAdminInstallPoint_3##                  0               
        
+AdminNetworkLocation   Browse  PushButton      286     124     66      17      
3               ##IDS__IsAdminInstallPoint_4##  Back            0               
        
+AdminNetworkLocation   Cancel  PushButton      301     243     66      17      
3               ##IDS__IsAdminInstallPoint_5##  SetupPathEdit           0       
                
+AdminNetworkLocation   DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsAdminInstallPoint_6##                  0                       
+AdminNetworkLocation   DlgLine Line    48      234     326     0       1       
                                0                       
+AdminNetworkLocation   DlgText Text    21      51      326     40      3       
        ##IDS__IsAdminInstallPoint_7##                  0                       
+AdminNetworkLocation   DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsAdminInstallPoint_8##                  0               
        
+AdminNetworkLocation   InstallNow      PushButton      230     243     66      
17      3               ##IDS__IsAdminInstallPoint_9##  Cancel          0       
                
+AdminNetworkLocation   LBBrowse        Text    21      90      100     10      
3               ##IDS__IsAdminInstallPoint_10##                 0               
        
+AdminNetworkLocation   SetupPathEdit   PathEdit        21      102     330     
17      3       TARGETDIR               Browse          0                       
+AdminWelcome   Back    PushButton      164     243     66      17      1       
        ##IDS__IsAdminInstallPointWelcome_1##   Next            0               
        
+AdminWelcome   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsAdminInstallPointWelcome_2##   Back            0               
        
+AdminWelcome   DlgLine Line    0       234     326     0       1               
                        0                       
+AdminWelcome   Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
+AdminWelcome   Next    PushButton      230     243     66      17      3       
        ##IDS__IsAdminInstallPointWelcome_3##   Cancel          0               
        
+AdminWelcome   TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsAdminInstallPointWelcome_4##                   0               
        
+AdminWelcome   TextLine2       Text    135     55      228     45      65539   
        ##IDS__IsAdminInstallPointWelcome_5##                   0               
        
+CancelSetup    Icon    Icon    15      15      24      24      5242881         
                        0                       NewBinary4
+CancelSetup    No      PushButton      135     57      66      17      3       
        ##IDS__IsCancelDlg_6##  Yes             0                       
+CancelSetup    Text    Text    48      15      194     30      3               
##IDS__IsCancelDlg_4##                  0                       
+CancelSetup    Yes     PushButton      62      57      66      17      3       
        ##IDS__IsCancelDlg_8##  No              0                       
+CustomerInformation    Back    PushButton      164     243     66      17      
3               ##IDS__IsRegisterUserDlg_1##    ChangeFolder            0       
                
+CustomerInformation    Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+CustomerInformation    BannerLine      Line    0       44      374     0       
1                                       0                       
+CustomerInformation    Branding1       Text    4       229     50      13      
3               ##IDS__IsRegisterUserDlg_2##                    0               
        
+CustomerInformation    Branding2       Text    3       228     50      13      
65537           ##IDS__IsRegisterUserDlg_3##                    0               
        
+CustomerInformation    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsRegisterUserDlg_4##    ComboBox1               0       
0               
+CustomerInformation    ChangeFolder    PushButton      301     55      66      
17      3               ##IDS__IsRegisterUserDlg_19##   Next            0       
0               
+CustomerInformation    ComboBox1       ComboBox        59      73      232     
120     11      _BrowseProperty         RadioGroup              0       12      
        
+CustomerInformation    DestFolder      Icon    21      52      24      24      
5767169                                 0       0               NewBinary12
+CustomerInformation    DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsRegisterUserDlg_7##                    0       0               
+CustomerInformation    DlgLine Line    48      234     326     0       1       
                                0                       
+CustomerInformation    DlgRadioGroupText       Text    57      124     200     
14      3               ##IDS__IsRegisterUserDlg_13##                   0       
0               
+CustomerInformation    DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsRegisterUserDlg_9##                    0       0       
        
+CustomerInformation    LocLabel        Text    57      52      240     12      
3               ##IDS__IsRegisterUserDlg_20##                   0       0       
        
+CustomerInformation    MissingApache   Text    57      202     270     28      
2               ##IDS__IsRegisterUserDlg_21##                   0       0       
        
+CustomerInformation    Next    PushButton      230     243     66      17      
3               ##IDS__IsRegisterUserDlg_12##   Cancel          0       0       
        
+CustomerInformation    RadioGroup      RadioButtonGroup        63      133     
300     50      3       ApplicationUsers        ##IDS__IsRegisterUserDlg_16##   
Back            0       0               
+CustomSetup    Back    PushButton      164     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_1## Next            0                       
+CustomSetup    Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+CustomSetup    BannerLine      Line    0       44      374     0       1       
                                0                       
+CustomSetup    Branding1       Text    4       229     50      13      3       
        ##IDS__IsCustomSelectionDlg_2##                 0                       
+CustomSetup    Branding2       Text    3       228     50      13      65537   
        ##IDS__IsCustomSelectionDlg_3##                 0                       
+CustomSetup    Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_4## Tree            0                       
+CustomSetup    ChangeFolder    PushButton      301     203     66      17      
3               ##IDS__IsCustomSelectionDlg_16##        Help            0       
                
+CustomSetup    Details PushButton      93      243     66      17      3       
        ##IDS__IsCustomSelectionDlg_5## Back            0                       
+CustomSetup    DlgDesc Text    17      23      292     25      65539           
##IDS__IsCustomSelectionDlg_6##                 0                       
+CustomSetup    DlgLine Line    48      234     326     0       1               
                        0                       
+CustomSetup    DlgText Text    9       51      360     10      3               
##IDS__IsCustomSelectionDlg_7##                 0                       
+CustomSetup    DlgTitle        Text    9       6       292     25      65539   
        ##IDS__IsCustomSelectionDlg_8##                 0                       
+CustomSetup    FeatureGroup    GroupBox        235     67      131     120     
1               ##IDS__IsCustomSelectionDlg_15##                        0       
                
+CustomSetup    Help    PushButton      22      243     66      17      3       
        ##IDS__IsCustomSelectionDlg_13##        Details         0               
        
+CustomSetup    InstallLabel    Text    8       190     360     10      3       
        ##IDS__IsCustomSelectionDlg_18##                        0               
        
+CustomSetup    ItemDescription Text    241     80      120     50      3       
        ##IDS__IsCustomSelectionDlg_14##                        0               
        
+CustomSetup    Location        Text    8       203     291     20      3       
        ##IDS__IsCustomSelectionDlg_17##                        0               
        
+CustomSetup    Next    PushButton      230     243     66      17      3       
        ##IDS__IsCustomSelectionDlg_11##        Cancel          0               
        
+CustomSetup    Size    Text    241     133     120     50      3               
##IDS__IsCustomSelectionDlg_12##                        0                       
+CustomSetup    Tree    SelectionTree   8       70      220     118     7       
_BrowseProperty         ChangeFolder            0                       
+CustomSetupTips        Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+CustomSetupTips        BannerLine      Line    0       44      374     0       
1                                       0                       
+CustomSetupTips        Branding1       Text    4       229     50      13      
3               ##IDS_SetupTips_2##                     0                       
+CustomSetupTips        Branding2       Text    3       228     50      13      
65537           ##IDS_SetupTips_3##                     0                       
+CustomSetupTips        DlgDesc Text    21      23      292     25      65539   
        ##IDS_SetupTips_4##                     0                       
+CustomSetupTips        DlgLine Line    48      234     326     0       1       
                                0                       
+CustomSetupTips        DlgTitle        Text    13      6       292     25      
65539           ##IDS_SetupTips_5##                     0                       
+CustomSetupTips        DontInstall     Icon    21      155     24      24      
5242881                                 0                       NewBinary14
+CustomSetupTips        DontInstallText Text    60      155     300     20      
3               ##IDS_SetupTips_6##                     0                       
+CustomSetupTips        FirstInstallText        Text    60      180     300     
20      3               ##IDS_SetupTips_10##                    0               
        
+CustomSetupTips        Install Icon    21      105     24      24      5242881 
                                0                       NewBinary15
+CustomSetupTips        InstallFirstUse Icon    21      180     24      24      
5242881                                 0                       NewBinary16
+CustomSetupTips        InstallPartial  Icon    21      130     24      24      
5242881                                 0                       NewBinary17
+CustomSetupTips        InstallStateMenu        Icon    21      52      24      
24      5242881                                 0                       
NewBinary18
+CustomSetupTips        InstallStateText        Text    21      91      300     
10      3               ##IDS_SetupTips_12##                    0               
        
+CustomSetupTips        InstallText     Text    60      105     300     20      
3               ##IDS_SetupTips_8##                     0                       
+CustomSetupTips        MenuText        Text    50      52      300     36      
3               ##IDS_SetupTips_9##                     0                       
+CustomSetupTips        NetworkInstall  Icon    21      205     24      24      
5242881                                 0                       NewBinary13
+CustomSetupTips        NetworkInstallText      Text    60      205     300     
20      3               ##IDS_SetupTips_11##                    0               
        
+CustomSetupTips        OK      PushButton      301     243     66      17      
3               ##IDS_SetupTips_1##                     0                       
+CustomSetupTips        PartialText     Text    60      130     300     20      
3               ##IDS_SetupTips_7##                     0                       
+DatabaseFolder Back    PushButton      164     243     66      17      3       
        ##IDS__DatabaseFolder_6##       Next            0                       
+DatabaseFolder Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+DatabaseFolder BannerLine      Line    0       44      374     0       1       
                                0                       
+DatabaseFolder Branding1       Text    4       229     50      13      3       
        ##IDS__DatabaseFolder_3##                       0                       
+DatabaseFolder Branding2       Text    3       228     50      13      65537   
        ##IDS__DatabaseFolder_2##                       0                       
+DatabaseFolder Cancel  PushButton      301     243     66      17      3       
        ##IDS__DatabaseFolder_1##       ChangeFolder            0               
        
+DatabaseFolder ChangeFolder    PushButton      301     65      66      17      
3               ##IDS__DatabaseFolder_8##       Back            0               
        
+DatabaseFolder DatabaseFolder  Icon    21      52      24      24      5242881 
                                0                       NewBinary12
+DatabaseFolder DlgDesc Text    21      23      292     25      65539           
##IDS__DatabaseFolder_4##                       0                       
+DatabaseFolder DlgLine Line    48      234     326     0       1               
                        0                       
+DatabaseFolder DlgTitle        Text    13      6       292     25      65539   
        ##IDS__DatabaseFolder_5##                       0                       
+DatabaseFolder Location        Text    57      65      240     40      3       
_BrowseProperty ##IDS__DatabaseFolder_9##                       0               
        
+DatabaseFolder LocLabel        Text    57      52      290     10      3       
        ##IDS__DatabaseFolder_10##                      0                       
+DatabaseFolder Next    PushButton      230     243     66      17      3       
        ##IDS__DatabaseFolder_7##       Cancel          0                       
+DestinationFolder      Back    PushButton      164     243     66      17      
3               ##IDS__DestinationFolder_6##    Next            0               
        
+DestinationFolder      Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+DestinationFolder      BannerLine      Line    0       44      374     0       
1                                       0                       
+DestinationFolder      Branding1       Text    4       229     50      13      
3               ##IDS__DestinationFolder_3##                    0               
        
+DestinationFolder      Branding2       Text    3       228     50      13      
65537           ##IDS__DestinationFolder_2##                    0               
        
+DestinationFolder      Cancel  PushButton      301     243     66      17      
3               ##IDS__DestinationFolder_1##    ChangeFolder            0       
                
+DestinationFolder      ChangeFolder    PushButton      301     65      66      
17      3               ##IDS__DestinationFolder_8##    Back            0       
                
+DestinationFolder      DestFolder      Icon    21      52      24      24      
5242881                                 0                       NewBinary12
+DestinationFolder      DlgDesc Text    21      23      292     25      65539   
        ##IDS__DestinationFolder_4##                    0                       
+DestinationFolder      DlgLine Line    48      234     326     0       1       
                                0                       
+DestinationFolder      DlgTitle        Text    13      6       292     25      
65539           ##IDS__DestinationFolder_5##                    0               
        
+DestinationFolder      Location        Text    57      65      240     40      
3       _BrowseProperty ##IDS__DestinationFolder_9##                    0       
                
+DestinationFolder      LocLabel        Text    57      52      290     12      
3               ##IDS__DestinationFolder_10##                   0       0       
        
+DestinationFolder      Next    PushButton      230     243     66      17      
3               ##IDS__DestinationFolder_7##    Cancel          0               
        
+DiskSpaceRequirements  Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+DiskSpaceRequirements  BannerLine      Line    0       44      374     0       
1                                       0                       
+DiskSpaceRequirements  Branding1       Text    4       229     50      13      
3               ##IDS__IsFeatureDetailsDlg_1##                  0               
        
+DiskSpaceRequirements  Branding2       Text    3       228     50      13      
65537           ##IDS__IsFeatureDetailsDlg_2##                  0               
        
+DiskSpaceRequirements  DlgDesc Text    17      23      292     25      65539   
        ##IDS__IsFeatureDetailsDlg_6##                  0                       
+DiskSpaceRequirements  DlgLine Line    48      234     326     0       1       
                                0                       
+DiskSpaceRequirements  DlgText Text    10      185     358     41      3       
        ##IDS__IsFeatureDetailsDlg_7##                  0                       
+DiskSpaceRequirements  DlgTitle        Text    9       6       292     25      
65539           ##IDS__IsFeatureDetailsDlg_8##                  0               
        
+DiskSpaceRequirements  List    VolumeCostList  8       55      358     125     
393223          ##IDS__IsFeatureDetailsDlg_13##                 0               
        
+DiskSpaceRequirements  OK      PushButton      301     243     66      17      
3               ##IDS__IsFeatureDetailsDlg_14##                 0               
        
+FilesInUse     Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+FilesInUse     BannerLine      Line    0       44      374     0       1       
                                0                       
+FilesInUse     Branding1       Text    4       229     50      13      3       
        ##IDS__IsFilesInUse_1##                 0                       
+FilesInUse     Branding2       Text    3       228     50      13      65537   
        ##IDS__IsFilesInUse_2##                 0                       
+FilesInUse     DlgDesc Text    21      23      292     25      65539           
##IDS__IsFilesInUse_3##                 0                       
+FilesInUse     DlgLine Line    48      234     326     0       1               
                        0                       
+FilesInUse     DlgText Text    21      51      348     29      3               
##IDS__IsFilesInUse_4##                 0                       
+FilesInUse     DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsFilesInUse_5##                 0                       
+FilesInUse     Exit    PushButton      301     243     66      17      3       
        ##IDS__IsFilesInUse_6## List            0                       
+FilesInUse     Ignore  PushButton      230     243     66      17      3       
        ##IDS__IsFilesInUse_7## Exit            0                       
+FilesInUse     List    ListBox 21      87      331     135     7       
FileInUseProcess                Retry           0                       
+FilesInUse     Retry   PushButton      164     243     66      17      3       
        ##IDS__IsFilesInUse_8## Ignore          0                       
+InstallChangeFolder    Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+InstallChangeFolder    BannerLine      Line    0       44      374     0       
1                                       0                       
+InstallChangeFolder    Branding1       Text    4       229     50      13      
3               ##IDS__IsBrowseFolderDlg_1##                    0               
        
+InstallChangeFolder    Branding2       Text    3       228     50      13      
65537           ##IDS__IsBrowseFolderDlg_2##                    0               
        
+InstallChangeFolder    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsBrowseFolderDlg_3##    ComboText               0       
                
+InstallChangeFolder    Combo   DirectoryCombo  21      64      277     80      
4128779 _BrowseProperty ##IDS__IsBrowseFolderDlg_4##    Up              0       
                
+InstallChangeFolder    ComboText       Text    21      50      99      14      
3               ##IDS__IsBrowseFolderDlg_5##    Combo           0               
        
+InstallChangeFolder    DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsBrowseFolderDlg_6##                    0                       
+InstallChangeFolder    DlgLine Line    48      234     326     0       1       
                                0                       
+InstallChangeFolder    DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsBrowseFolderDlg_7##                    0               
        
+InstallChangeFolder    List    DirectoryList   21      90      332     97      
15      _BrowseProperty ##IDS__IsBrowseFolderDlg_8##    TailText                
0                       
+InstallChangeFolder    NewFolder       PushButton      335     66      19      
19      3670019                 List    ##IDS__IsBrowseFolderDlg_9##    0       
                NewBinary2
+InstallChangeFolder    OK      PushButton      230     243     66      17      
3               ##IDS__IsBrowseFolderDlg_10##   Cancel          0               
        
+InstallChangeFolder    Tail    PathEdit        21      207     332     17      
15      _BrowseProperty ##IDS__IsBrowseFolderDlg_11##   OK              0       
                
+InstallChangeFolder    TailText        Text    21      193     99      13      
3               ##IDS__IsBrowseFolderDlg_12##   Tail            0               
        
+InstallChangeFolder    Up      PushButton      310     66      19      19      
3670019                 NewFolder       ##IDS__IsBrowseFolderDlg_13##   0       
                NewBinary3
+InstallWelcome Back    PushButton      164     243     66      17      1       
        ##IDS__IsWelcomeDlg_1## Copyright               0                       
+InstallWelcome Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsWelcomeDlg_2## Back            0                       
+InstallWelcome Copyright       Text    135     144     228     73      65539   
        ##IDS__IsWelcomeDlg_7## Next            0                       
+InstallWelcome DlgLine Line    0       234     374     0       1               
                        0                       
+InstallWelcome Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
+InstallWelcome Next    PushButton      230     243     66      17      3       
        ##IDS__IsWelcomeDlg_3## Cancel          0                       
+InstallWelcome TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsWelcomeDlg_4##                 0                       
+InstallWelcome TextLine2       Text    135     55      228     45      65539   
        ##IDS__IsWelcomeDlg_5##                 0                       
+LicenseAgreement       Agree   RadioButtonGroup        8       190     330     
40      3       AgreeToLicense          Back            0                       
+LicenseAgreement       Back    PushButton      164     243     66      17      
3               ##IDS__IsLicenseDlg_1## Next            0                       
+LicenseAgreement       Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+LicenseAgreement       BannerLine      Line    0       44      374     0       
1                                       0                       
+LicenseAgreement       Branding1       Text    4       229     50      13      
3               ##IDS__IsLicenseDlg_2##                 0                       
+LicenseAgreement       Branding2       Text    3       228     50      13      
65537           ##IDS__IsLicenseDlg_3##                 0                       
+LicenseAgreement       Cancel  PushButton      301     243     66      17      
3               ##IDS__IsLicenseDlg_4## Agree           0                       
+LicenseAgreement       DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsLicenseDlg_5##                 0                       
+LicenseAgreement       DlgLine Line    48      234     326     0       1       
                                0                       
+LicenseAgreement       DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsLicenseDlg_7##                 0                       
+LicenseAgreement       Memo    ScrollableText  8       55      358     130     
7                                       0       0       
<ISProjectFolder>\license.rtf   
+LicenseAgreement       Next    PushButton      230     243     66      17      
3               ##IDS__IsLicenseDlg_8## Cancel          0                       
+MaintenanceType        Back    PushButton      164     243     66      17      
3               ##IDS__IsMaintenanceDlg_1##     Next            0               
        
+MaintenanceType        Banner  Bitmap  0       0       374     44      262145  
                                0       0               NewBinary1
+MaintenanceType        BannerLine      Line    0       44      374     0       
1                                       0                       
+MaintenanceType        Branding1       Text    4       229     50      13      
3               ##IDS__IsMaintenanceDlg_2##                     0               
        
+MaintenanceType        Branding2       Text    3       228     50      13      
65537           ##IDS__IsMaintenanceDlg_3##                     0               
        
+MaintenanceType        Cancel  PushButton      301     243     66      17      
3               ##IDS__IsMaintenanceDlg_4##     RadioGroup              0       
                
+MaintenanceType        DlgDesc Text    21      23      292     25      65539   
        ##IDS__IsMaintenanceDlg_5##                     0                       
+MaintenanceType        DlgLine Line    48      234     326     0       1       
                                0                       
+MaintenanceType        DlgTitle        Text    13      6       292     25      
65539           ##IDS__IsMaintenanceDlg_6##                     0               
        
+MaintenanceType        Ico2    Icon    35      75      24      24      5767169 
                                0       0               NewBinary7
+MaintenanceType        Ico3    Icon    35      135     24      24      5767169 
                                0       0               NewBinary8
+MaintenanceType        Next    PushButton      230     243     66      17      
3               ##IDS__IsMaintenanceDlg_7##     Cancel          0               
        
+MaintenanceType        RadioGroup      RadioButtonGroup        21      55      
290     170     3       _IsMaintenance  ##IDS__IsMaintenanceDlg_11##    Back    
        0       0               
+MaintenanceType        Text2   Text    80      75      260     35      3       
        ##IDS__IsMaintenanceDlg_13##                    0       0               
+MaintenanceType        Text3   Text    80      132     260     35      3       
        ##IDS__IsMaintenanceDlg_14##                    0       0               
+MaintenanceWelcome     Back    PushButton      164     243     66      17      
1               ##IDS__IsMaintenanceWelcome_1## Next            0               
        
+MaintenanceWelcome     Cancel  PushButton      301     243     66      17      
3               ##IDS__IsMaintenanceWelcome_2## Back            0               
        
+MaintenanceWelcome     DlgLine Line    0       234     374     0       1       
                                0                       
+MaintenanceWelcome     Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
+MaintenanceWelcome     Next    PushButton      230     243     66      17      
3               ##IDS__IsMaintenanceWelcome_3## Cancel          0               
        
+MaintenanceWelcome     TextLine1       Text    135     8       225     45      
65539           ##IDS__IsMaintenanceWelcome_4##                 0               
        
+MaintenanceWelcome     TextLine2       Text    135     55      228     50      
65539           ##IDS__IsMaintenanceWelcome_5##                 0               
        
+OutOfSpace     Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+OutOfSpace     BannerLine      Line    0       44      374     0       1       
                                0                       
+OutOfSpace     Branding1       Text    4       229     50      13      3       
        ##IDS__IsDiskSpaceDlg_1##                       0                       
+OutOfSpace     Branding2       Text    3       228     50      13      65537   
        ##IDS__IsDiskSpaceDlg_2##                       0                       
+OutOfSpace     DlgDesc Text    21      23      292     25      65539           
##IDS__IsDiskSpaceDlg_4##                       0                       
+OutOfSpace     DlgLine Line    48      234     326     0       1               
                        0                       
+OutOfSpace     DlgText Text    21      51      326     43      3               
##IDS__IsDiskSpaceDlg_5##                       0                       
+OutOfSpace     DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsDiskSpaceDlg_6##                       0                       
+OutOfSpace     List    VolumeCostList  21      95      332     120     393223  
        ##IDS__IsDiskSpaceDlg_9##                       0                       
+OutOfSpace     Resume  PushButton      301     243     66      17      3       
        ##IDS__IsDiskSpaceDlg_10##                      0                       
+PatchWelcome   Back    PushButton      164     243     66      17      1       
        ##IDS__IsPatchDlg_4##   Next            0                       
+PatchWelcome   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsPatchDlg_3##   Back            0                       
+PatchWelcome   DlgLine Line    0       234     374     0       1               
                        0                       
+PatchWelcome   Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
+PatchWelcome   Next    PushButton      230     243     66      17      3       
        ##IDS__IsPatchDlg_5##   Cancel          0                       
+PatchWelcome   TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsPatchDlg_1##                   0                       
+PatchWelcome   TextLine2       Text    135     54      228     45      65539   
        ##IDS__IsPatchDlg_2##                   0                       
+ReadyToInstall Back    PushButton      164     243     66      17      3       
        ##IDS__IsVerifyReadyDlg_1##     InstallNow              0               
        
+ReadyToInstall Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+ReadyToInstall BannerLine      Line    0       44      374     0       1       
                                0                       
+ReadyToInstall Branding1       Text    4       229     50      13      3       
        ##IDS__IsVerifyReadyDlg_2##                     0                       
+ReadyToInstall Branding2       Text    3       228     50      13      65537   
        ##IDS__IsVerifyReadyDlg_3##                     0                       
+ReadyToInstall Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsVerifyReadyDlg_4##     Back            0                       
+ReadyToInstall DlgDesc Text    21      23      292     25      65539           
##IDS__IsVerifyReadyDlg_5##                     0                       
+ReadyToInstall DlgLine Line    48      234     374     0       1               
                        0                       
+ReadyToInstall DlgText Text    21      100     326     20      3               
##IDS__IsVerifyReadyDlg_6##                     0       0               
+ReadyToInstall DlgText1        Text    21      119     330     24      3       
        ##IDS__IsVerifyReadyDlg_7##                     0       0               
+ReadyToInstall DlgTitle        Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_8##                     0                       
+ReadyToInstall DlgTitle2       Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_10##                    0                       
+ReadyToInstall DlgTitle3       Text    13      6       292     25      65538   
        ##IDS__IsVerifyReadyDlg_11##                    0                       
+ReadyToInstall InstallNow      PushButton      230     243     66      17      
3               ##IDS__IsVerifyReadyDlg_9##     Cancel          0               
        
+ReadyToInstall Text1   Text    21      51      326     43      3               
##IDS__IsVerifyReadyDlg_22##                    0       0               
+ReadyToRemove  Back    PushButton      164     243     66      17      3       
        ##IDS__IsVerifyRemoveAllDlg_1## RemoveNow               0               
        
+ReadyToRemove  Banner  Bitmap  0       1       374     44      262145          
                        0       0               NewBinary1
+ReadyToRemove  BannerLine      Line    0       44      374     0       1       
                                0                       
+ReadyToRemove  Branding1       Text    4       229     50      13      3       
        ##IDS__IsVerifyRemoveAllDlg_2##                 0                       
+ReadyToRemove  Branding2       Text    3       228     50      13      65537   
        ##IDS__IsVerifyRemoveAllDlg_3##                 0                       
+ReadyToRemove  Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsVerifyRemoveAllDlg_4## Back            0                       
+ReadyToRemove  DlgDesc Text    21      23      292     25      65539           
##IDS__IsVerifyRemoveAllDlg_5##                 0                       
+ReadyToRemove  DlgLine Line    48      234     326     0       1               
                        0                       
+ReadyToRemove  DlgText Text    21      51      326     24      3               
##IDS__IsVerifyRemoveAllDlg_6##                 0                       
+ReadyToRemove  DlgText1        Text    21      79      330     23      3       
        ##IDS__IsVerifyRemoveAllDlg_7##                 0                       
+ReadyToRemove  DlgText2        Text    21      102     330     24      3       
                                0                       
+ReadyToRemove  DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsVerifyRemoveAllDlg_8##                 0                       
+ReadyToRemove  RemoveNow       PushButton      230     243     66      17      
3               ##IDS__IsVerifyRemoveAllDlg_9## Cancel          0               
        
+SetupBadPath   Icon1   Icon    15      15      24      24      5767169         
                        0       0               NewBinary4
+SetupBadPath   PushButton7     PushButton      192     80      66      17      
3               ##NEW_STRING9##                 0       0               
+SetupBadPath   Text1   Text    50      15      200     50      3       
NewProperty1    ##NEW_STRING6##                 0       0               
+SetupCompleteError     Back    PushButton      164     243     66      17      
1               ##IDS__IsFatalError_1## Finish          0                       
+SetupCompleteError     Cancel  PushButton      301     243     66      17      
1               ##IDS__IsFatalError_2## Back            0                       
+SetupCompleteError     DlgLine Line    0       234     374     0       1       
                                0                       
+SetupCompleteError     Finish  PushButton      230     243     66      17      
3               ##IDS__IsFatalError_3## Cancel          0                       
+SetupCompleteError     FinishText1     Text    135     80      228     50      
65539           ##IDS__IsFatalError_4##                 0                       
+SetupCompleteError     FinishText2     Text    135     135     228     25      
65539           ##IDS__IsFatalError_5##                 0                       
+SetupCompleteError     Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
+SetupCompleteError     RestContText1   Text    135     80      228     50      
65539           ##IDS__IsFatalError_6##                 0                       
+SetupCompleteError     RestContText2   Text    135     135     228     25      
65539           ##IDS__IsFatalError_7##                 0                       
+SetupCompleteError     TextLine1       Text    135     8       225     45      
65539           ##IDS__IsFatalError_8##                 0                       
+SetupCompleteError     TextLine2       Text    135     55      228     25      
65539           ##IDS__IsFatalError_9##                 0                       
+SetupCompleteSuccess   Back    PushButton      164     243     66      17      
1               ##IDS__IsExitDialog_1## OK              0                       
+SetupCompleteSuccess   Cancel  PushButton      301     243     66      17      
1               ##IDS__IsExitDialog_2## Image           0                       
+SetupCompleteSuccess   CheckLaunchReadme       CheckBox        151     114     
10      9       2       LAUNCHREADME                            0       0       
        
+SetupCompleteSuccess   DlgLine Line    0       234     374     0       1       
                                0                       
+SetupCompleteSuccess   Image   Bitmap  0       0       374     234     262145  
                Back            0       0               NewBinary5
+SetupCompleteSuccess   LaunchReadmeText        Text    164     112     198     
13      65538           ##IDS__IsExitDialog_8##                 0       0       
        
+SetupCompleteSuccess   OK      PushButton      230     243     66      17      
3               ##IDS__IsExitDialog_3## Cancel          0                       
+SetupCompleteSuccess   TextLine1       Text    135     8       225     45      
65539           ##IDS__IsExitDialog_4##                 0                       
+SetupCompleteSuccess   TextLine2       Text    135     55      228     45      
65538           ##IDS__IsExitDialog_5##                 0                       
+SetupCompleteSuccess   TextLine3       Text    135     55      228     45      
65538           ##IDS__IsExitDialog_6##                 0                       
+SetupCompleteSuccess   UpdateTextLine1 Text    135     30      228     45      
65538           ##IDS__IsExitDialog_Update_4##                  0               
        
+SetupError     A       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_1##                   0                       
+SetupError     C       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_2##                   0                       
+SetupError     ErrorText       Text    50      15      200     50      3       
        ##IDS__IsErrorDlg_3##                   0                       
+SetupError     I       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_4##                   0                       
+SetupError     N       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_5##                   0                       
+SetupError     O       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_6##                   0                       
+SetupError     R       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_7##                   0                       
+SetupError     WarningIcon     Icon    15      15      24      24      5242881 
                                0                       NewBinary4
+SetupError     Y       PushButton      192     80      66      17      3       
        ##IDS__IsErrorDlg_8##                   0                       
+SetupInitialization    ActionData      Text    135     125     228     12      
65539           ##IDS__IsInitDlg_1##                    0                       
+SetupInitialization    ActionText      Text    135     109     220     36      
65539           ##IDS__IsInitDlg_2##                    0                       
+SetupInitialization    Back    PushButton      164     243     66      17      
1               ##IDS__IsInitDlg_3##                    0                       
+SetupInitialization    Cancel  PushButton      301     243     66      17      
3               ##IDS__IsInitDlg_4##                    0                       
+SetupInitialization    DlgLine Line    0       234     374     0       1       
                                0                       
+SetupInitialization    Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
+SetupInitialization    Next    PushButton      230     243     66      17      
1               ##IDS__IsInitDlg_5##                    0                       
+SetupInitialization    TextLine1       Text    135     8       225     45      
65539           ##IDS__IsInitDlg_6##                    0                       
+SetupInitialization    TextLine2       Text    135     55      228     30      
65539           ##IDS__IsInitDlg_7##                    0                       
+SetupInterrupted       Back    PushButton      164     243     66      17      
1               ##IDS__IsUserExit_1##                   0                       
+SetupInterrupted       Cancel  PushButton      301     243     66      17      
1               ##IDS__IsUserExit_2##                   0                       
+SetupInterrupted       DlgLine Line    0       234     374     0       1       
                                0                       
+SetupInterrupted       Finish  PushButton      230     243     66      17      
3               ##IDS__IsUserExit_3##                   0                       
+SetupInterrupted       FinishText1     Text    135     80      228     50      
65539           ##IDS__IsUserExit_4##                   0                       
+SetupInterrupted       FinishText2     Text    135     135     228     25      
65539           ##IDS__IsUserExit_5##                   0                       
+SetupInterrupted       Image   Bitmap  0       0       374     234     262145  
                                0       0               NewBinary5
+SetupInterrupted       RestContText1   Text    135     80      228     50      
65539           ##IDS__IsUserExit_6##                   0                       
+SetupInterrupted       RestContText2   Text    135     135     228     25      
65539           ##IDS__IsUserExit_7##                   0                       
+SetupInterrupted       TextLine1       Text    135     8       225     45      
65539           ##IDS__IsUserExit_8##                   0                       
+SetupInterrupted       TextLine2       Text    135     55      228     25      
65539           ##IDS__IsUserExit_9##                   0                       
+SetupProgress  ActionProgress95        ProgressBar     59      113     275     
12      65537           ##IDS__IsProgressDlg_1##                        0       
                
+SetupProgress  ActionText      Text    59      100     275     12      3       
        ##IDS__IsProgressDlg_2##                        0                       
+SetupProgress  Back    PushButton      164     243     66      17      1       
        ##IDS__IsProgressDlg_3##        Next            0                       
+SetupProgress  Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+SetupProgress  BannerLine      Line    0       44      374     0       1       
                                0                       
+SetupProgress  Branding1       Text    4       229     50      13      3       
        ##IDS__IsProgressDlg_4##                        0                       
+SetupProgress  Branding2       Text    3       228     50      13      65537   
        ##IDS__IsProgressDlg_5##                        0                       
+SetupProgress  Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsProgressDlg_6##        Back            0                       
+SetupProgress  DlgDesc Text    21      23      292     25      65538           
##IDS__IsProgressDlg_7##                        0                       
+SetupProgress  DlgDesc2        Text    21      23      292     25      65538   
        ##IDS__IsProgressDlg_16##                       0                       
+SetupProgress  DlgLine Line    48      234     326     0       1               
                        0                       
+SetupProgress  DlgText Text    59      51      275     30      65538           
##IDS__IsProgressDlg_8##                        0                       
+SetupProgress  DlgText2        Text    59      51      275     30      65538   
        ##IDS__IsProgressDlg_17##                       0                       
+SetupProgress  DlgTitle        Text    13      6       292     25      65538   
        ##IDS__IsProgressDlg_9##                        0                       
+SetupProgress  DlgTitle2       Text    13      6       292     25      65538   
        ##IDS__IsProgressDlg_15##                       0                       
+SetupProgress  LbSec   Text    172     139     32      12      2               
##IDS__IsProgressDlg_10##                       0                       
+SetupProgress  LbStatus        Text    59      85      70      12      3       
        ##IDS__IsProgressDlg_11##                       0                       
+SetupProgress  Next    PushButton      230     243     66      17      1       
        ##IDS__IsProgressDlg_12##       Cancel          0                       
+SetupProgress  SetupIcon       Icon    21      51      24      24      5242881 
                                0                       NewBinary9
+SetupProgress  ShowTime        Text    155     139     17      12      2       
        ##IDS__IsProgressDlg_13##                       0                       
+SetupProgress  TextTime        Text    59      139     96      12      2       
        ##IDS__IsProgressDlg_14##                       0                       
+SetupResume    Back    PushButton      164     243     66      17      1       
        ##IDS__IsResumeDlg_1##  Next            0                       
+SetupResume    Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsResumeDlg_2##  Back            0                       
+SetupResume    DlgLine Line    0       234     374     0       1               
                        0                       
+SetupResume    Image   Bitmap  0       0       374     234     262145          
                        0       0               NewBinary5
+SetupResume    Next    PushButton      230     243     66      17      3       
        ##IDS__IsResumeDlg_3##  Cancel          0                       
+SetupResume    PreselectedText Text    135     55      228     45      65539   
        ##IDS__IsResumeDlg_4##                  0                       
+SetupResume    ResumeText      Text    135     46      228     45      65539   
        ##IDS__IsResumeDlg_5##                  0                       
+SetupResume    TextLine1       Text    135     8       225     45      65539   
        ##IDS__IsResumeDlg_6##                  0                       
+SetupType      Back    PushButton      164     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_1##    Next            0                       
+SetupType      Banner  Bitmap  0       0       374     44      262145          
                        0       0               NewBinary1
+SetupType      BannerLine      Line    0       44      374     0       1       
                                0                       
+SetupType      Branding1       Text    4       229     50      13      3       
        ##IDS__IsSetupTypeMinDlg_2##                    0                       
+SetupType      Branding2       Text    3       228     50      13      65537   
        ##IDS__IsSetupTypeMinDlg_3##                    0                       
+SetupType      Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_4##    RadioGroup              0               
        
+SetupType      CompleteIco     Icon    34      94      24      24      5242881 
                                0                       NewBinary10
+SetupType      CompText        Text    80      94      246     35      3       
        ##IDS__IsSetupTypeMinDlg_5##                    0                       
+SetupType      CustomIco       Icon    34      154     24      24      5242881 
                                0                       NewBinary6
+SetupType      CustText        Text    80      154     246     35      3       
        ##IDS__IsSetupTypeMinDlg_6##                    0                       
+SetupType      DlgDesc Text    21      23      292     25      65539           
##IDS__IsSetupTypeMinDlg_7##                    0                       
+SetupType      DlgLine Line    48      234     326     0       1               
                        0                       
+SetupType      DlgText Text    21      51      326     10      3               
##IDS__IsSetupTypeMinDlg_8##                    0                       
+SetupType      DlgTitle        Text    13      6       292     25      65539   
        ##IDS__IsSetupTypeMinDlg_9##                    0                       
+SetupType      Next    PushButton      230     243     66      17      3       
        ##IDS__IsSetupTypeMinDlg_10##   Cancel          0                       
+SetupType      RadioGroup      RadioButtonGroup        21      79      264     
120     3       _IsSetupTypeMin ##IDS__IsSetupTypeMinDlg_13##   Back            
0                       
+SplashBitmap   Back    PushButton      164     243     66      17      1       
        ##IDS__IsBitmapDlg_1##  Next            0                       
+SplashBitmap   Branding1       Text    4       229     50      13      3       
        ##IDS__IsBitmapDlg_2##                  0                       
+SplashBitmap   Branding2       Text    3       228     50      13      65537   
        ##IDS__IsBitmapDlg_3##                  0                       
+SplashBitmap   Cancel  PushButton      301     243     66      17      3       
        ##IDS__IsBitmapDlg_4##  Back            0                       
+SplashBitmap   DlgLine Line    48      234     374     0       1               
                        0                       
+SplashBitmap   Image   Bitmap  13      12      349     211     262145          
                        0       0               NewBinary5
+SplashBitmap   Next    PushButton      230     243     66      17      3       
        ##IDS__IsBitmapDlg_5##  Cancel          0                       

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlCondition.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlCondition.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlCondition.idt      
Fri Jul 16 09:27:17 2004
@@ -1,64 +1,64 @@
-Dialog_        Control_        Action  Condition
-s72    s50     s50     s255
-ControlCondition       Dialog_ Control_        Action  Condition
-CustomerInformation    DlgRadioGroupText       Hide    NOT Privileged
-CustomerInformation    DlgRadioGroupText       Hide    ProductState > 0
-CustomerInformation    DlgRadioGroupText       Hide    Version9X
-CustomerInformation    MissingApache   Show    APACHE_FOUND = ""
-CustomerInformation    RadioGroup      Hide    NOT Privileged
-CustomerInformation    RadioGroup      Hide    ProductState > 0
-CustomerInformation    RadioGroup      Hide    Version9X
-CustomSetup    ChangeFolder    Hide    Installed
-CustomSetup    Details Hide    Installed
-CustomSetup    InstallLabel    Hide    Installed
-InstallWelcome Back    Disable 1
-InstallWelcome Copyright       Hide    SHOWCOPYRIGHT="No"
-InstallWelcome Copyright       Show    SHOWCOPYRIGHT="Yes"
-LicenseAgreement       Next    Disable AgreeToLicense <> "Yes"
-LicenseAgreement       Next    Enable  AgreeToLicense = "Yes"
-ReadyToInstall DlgTitle        Show    ProgressType0="Modify"
-ReadyToInstall DlgTitle2       Show    ProgressType0="Repair"
-ReadyToInstall DlgTitle3       Show    ProgressType0="install"
-SetupCompleteError     Back    Default UpdateStarted
-SetupCompleteError     Back    Disable NOT UpdateStarted
-SetupCompleteError     Back    Enable  UpdateStarted
-SetupCompleteError     Cancel  Disable NOT UpdateStarted
-SetupCompleteError     Cancel  Enable  UpdateStarted
-SetupCompleteError     Finish  Default NOT UpdateStarted
-SetupCompleteError     FinishText1     Hide    UpdateStarted
-SetupCompleteError     FinishText1     Show    NOT UpdateStarted
-SetupCompleteError     FinishText2     Hide    UpdateStarted
-SetupCompleteError     FinishText2     Show    NOT UpdateStarted
-SetupCompleteError     RestContText1   Hide    NOT UpdateStarted
-SetupCompleteError     RestContText1   Show    UpdateStarted
-SetupCompleteError     RestContText2   Hide    NOT UpdateStarted
-SetupCompleteError     RestContText2   Show    UpdateStarted
-SetupCompleteSuccess   CheckLaunchReadme       Show    SHOWLAUNCHREADME="-1"  
And READMEFILETOLAUNCHATEND <> "" And NOT Installed And NOT 
ISENABLEDWUSFINISHDIALOG
-SetupCompleteSuccess   LaunchReadmeText        Show    SHOWLAUNCHREADME="-1"  
And READMEFILETOLAUNCHATEND <> "" And NOT Installed And NOT 
ISENABLEDWUSFINISHDIALOG
-SetupCompleteSuccess   TextLine2       Show    ProgressType2="installed" And 
((ACTION<>"INSTALL") OR (NOT ISENABLEDWUSFINISHDIALOG) OR 
(ISENABLEDWUSFINISHDIALOG And Installed))
-SetupCompleteSuccess   TextLine3       Show    ProgressType2="uninstalled" And 
((ACTION<>"INSTALL") OR (NOT ISENABLEDWUSFINISHDIALOG) OR 
(ISENABLEDWUSFINISHDIALOG And Installed))
-SetupCompleteSuccess   UpdateTextLine1 Show    ISENABLEDWUSFINISHDIALOG And 
NOT Installed And ACTION="INSTALL"
-SetupInterrupted       Back    Default UpdateStarted
-SetupInterrupted       Back    Disable NOT UpdateStarted
-SetupInterrupted       Back    Enable  UpdateStarted
-SetupInterrupted       Cancel  Disable NOT UpdateStarted
-SetupInterrupted       Cancel  Enable  UpdateStarted
-SetupInterrupted       Finish  Default NOT UpdateStarted
-SetupInterrupted       FinishText1     Hide    UpdateStarted
-SetupInterrupted       FinishText1     Show    NOT UpdateStarted
-SetupInterrupted       FinishText2     Hide    UpdateStarted
-SetupInterrupted       FinishText2     Show    NOT UpdateStarted
-SetupInterrupted       RestContText1   Hide    NOT UpdateStarted
-SetupInterrupted       RestContText1   Show    UpdateStarted
-SetupInterrupted       RestContText2   Hide    NOT UpdateStarted
-SetupInterrupted       RestContText2   Show    UpdateStarted
-SetupProgress  DlgDesc Show    ProgressType2="installed"
-SetupProgress  DlgDesc2        Show    ProgressType2="uninstalled"
-SetupProgress  DlgText Show    ProgressType3="installs"
-SetupProgress  DlgText2        Show    ProgressType3="uninstalls"
-SetupProgress  DlgTitle        Show    ProgressType1="Installing"
-SetupProgress  DlgTitle2       Show    ProgressType1="Uninstalling"
-SetupResume    PreselectedText Hide    RESUME
-SetupResume    PreselectedText Show    NOT RESUME
-SetupResume    ResumeText      Hide    NOT RESUME
-SetupResume    ResumeText      Show    RESUME
+Dialog_        Control_        Action  Condition
+s72    s50     s50     s255
+ControlCondition       Dialog_ Control_        Action  Condition
+CustomerInformation    DlgRadioGroupText       Hide    NOT Privileged
+CustomerInformation    DlgRadioGroupText       Hide    ProductState > 0
+CustomerInformation    DlgRadioGroupText       Hide    Version9X
+CustomerInformation    MissingApache   Show    APACHE_FOUND = ""
+CustomerInformation    RadioGroup      Hide    NOT Privileged
+CustomerInformation    RadioGroup      Hide    ProductState > 0
+CustomerInformation    RadioGroup      Hide    Version9X
+CustomSetup    ChangeFolder    Hide    Installed
+CustomSetup    Details Hide    Installed
+CustomSetup    InstallLabel    Hide    Installed
+InstallWelcome Back    Disable 1
+InstallWelcome Copyright       Hide    SHOWCOPYRIGHT="No"
+InstallWelcome Copyright       Show    SHOWCOPYRIGHT="Yes"
+LicenseAgreement       Next    Disable AgreeToLicense <> "Yes"
+LicenseAgreement       Next    Enable  AgreeToLicense = "Yes"
+ReadyToInstall DlgTitle        Show    ProgressType0="Modify"
+ReadyToInstall DlgTitle2       Show    ProgressType0="Repair"
+ReadyToInstall DlgTitle3       Show    ProgressType0="install"
+SetupCompleteError     Back    Default UpdateStarted
+SetupCompleteError     Back    Disable NOT UpdateStarted
+SetupCompleteError     Back    Enable  UpdateStarted
+SetupCompleteError     Cancel  Disable NOT UpdateStarted
+SetupCompleteError     Cancel  Enable  UpdateStarted
+SetupCompleteError     Finish  Default NOT UpdateStarted
+SetupCompleteError     FinishText1     Hide    UpdateStarted
+SetupCompleteError     FinishText1     Show    NOT UpdateStarted
+SetupCompleteError     FinishText2     Hide    UpdateStarted
+SetupCompleteError     FinishText2     Show    NOT UpdateStarted
+SetupCompleteError     RestContText1   Hide    NOT UpdateStarted
+SetupCompleteError     RestContText1   Show    UpdateStarted
+SetupCompleteError     RestContText2   Hide    NOT UpdateStarted
+SetupCompleteError     RestContText2   Show    UpdateStarted
+SetupCompleteSuccess   CheckLaunchReadme       Show    SHOWLAUNCHREADME="-1"  
And READMEFILETOLAUNCHATEND <> "" And NOT Installed And NOT 
ISENABLEDWUSFINISHDIALOG
+SetupCompleteSuccess   LaunchReadmeText        Show    SHOWLAUNCHREADME="-1"  
And READMEFILETOLAUNCHATEND <> "" And NOT Installed And NOT 
ISENABLEDWUSFINISHDIALOG
+SetupCompleteSuccess   TextLine2       Show    ProgressType2="installed" And 
((ACTION<>"INSTALL") OR (NOT ISENABLEDWUSFINISHDIALOG) OR 
(ISENABLEDWUSFINISHDIALOG And Installed))
+SetupCompleteSuccess   TextLine3       Show    ProgressType2="uninstalled" And 
((ACTION<>"INSTALL") OR (NOT ISENABLEDWUSFINISHDIALOG) OR 
(ISENABLEDWUSFINISHDIALOG And Installed))
+SetupCompleteSuccess   UpdateTextLine1 Show    ISENABLEDWUSFINISHDIALOG And 
NOT Installed And ACTION="INSTALL"
+SetupInterrupted       Back    Default UpdateStarted
+SetupInterrupted       Back    Disable NOT UpdateStarted
+SetupInterrupted       Back    Enable  UpdateStarted
+SetupInterrupted       Cancel  Disable NOT UpdateStarted
+SetupInterrupted       Cancel  Enable  UpdateStarted
+SetupInterrupted       Finish  Default NOT UpdateStarted
+SetupInterrupted       FinishText1     Hide    UpdateStarted
+SetupInterrupted       FinishText1     Show    NOT UpdateStarted
+SetupInterrupted       FinishText2     Hide    UpdateStarted
+SetupInterrupted       FinishText2     Show    NOT UpdateStarted
+SetupInterrupted       RestContText1   Hide    NOT UpdateStarted
+SetupInterrupted       RestContText1   Show    UpdateStarted
+SetupInterrupted       RestContText2   Hide    NOT UpdateStarted
+SetupInterrupted       RestContText2   Show    UpdateStarted
+SetupProgress  DlgDesc Show    ProgressType2="installed"
+SetupProgress  DlgDesc2        Show    ProgressType2="uninstalled"
+SetupProgress  DlgText Show    ProgressType3="installs"
+SetupProgress  DlgText2        Show    ProgressType3="uninstalls"
+SetupProgress  DlgTitle        Show    ProgressType1="Installing"
+SetupProgress  DlgTitle2       Show    ProgressType1="Uninstalling"
+SetupResume    PreselectedText Hide    RESUME
+SetupResume    PreselectedText Show    NOT RESUME
+SetupResume    ResumeText      Hide    NOT RESUME
+SetupResume    ResumeText      Show    RESUME

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlEvent.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlEvent.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ControlEvent.idt  Fri Jul 
16 09:27:17 2004
@@ -1,136 +1,136 @@
-Dialog_        Control_        Event   Argument        Condition       Ordering
-s72    s50     s50     s255    S255    I2
-ControlEvent   Dialog_ Control_        Event   Argument        Condition
-AdminChangeFolder      Cancel  EndDialog       Return  1       2
-AdminChangeFolder      Cancel  Reset   0       1       1
-AdminChangeFolder      NewFolder       DirectoryListNew        0       1       0
-AdminChangeFolder      OK      EndDialog       Return  1       0
-AdminChangeFolder      OK      SetTargetPath   TARGETDIR       1       1
-AdminChangeFolder      Up      DirectoryListUp 0       1       0
-AdminNetworkLocation   Back    NewDialog       AdminWelcome    1       0
-AdminNetworkLocation   Browse  SpawnDialog     AdminChangeFolder       1       0
-AdminNetworkLocation   Cancel  SpawnDialog     CancelSetup     1       0
-AdminNetworkLocation   InstallNow      EndDialog       Return  
OutOfNoRbDiskSpace <> 1 3
-AdminNetworkLocation   InstallNow      NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
-AdminNetworkLocation   InstallNow      SetTargetPath   TARGETDIR       1       
1
-AdminWelcome   Cancel  SpawnDialog     CancelSetup     1       0
-AdminWelcome   Next    NewDialog       AdminNetworkLocation    1       0
-CancelSetup    No      EndDialog       Return  1       0
-CancelSetup    Yes     EndDialog       Exit    1       2
-CustomerInformation    Back    NewDialog       LicenseAgreement        1       
1
-CustomerInformation    Cancel  SpawnDialog     CancelSetup     1       1
-CustomerInformation    ChangeFolder    [_BrowseProperty]       INSTALLDIR      
1       1
-CustomerInformation    ChangeFolder    SpawnDialog     InstallChangeFolder     
1       2
-CustomerInformation    Next    [ALLUSERS]      {}      ApplicationUsers = 
"OnlyCurrentUser" And Privileged     2
-CustomerInformation    Next    [ALLUSERS]      2       ApplicationUsers = 
"AllUsers" And Privileged    1
-CustomerInformation    Next    DoAction        VerifyApachePath        1       
3
-CustomerInformation    Next    NewDialog       ReadyToInstall  _BadPath = 0    
4
-CustomerInformation    Next    SpawnDialog     SetupBadPath    _BadPath = 1    
5
-CustomSetup    Back    NewDialog       MaintenanceType Installed       1
-CustomSetup    Back    NewDialog       SetupType       NOT Installed   2
-CustomSetup    Cancel  SpawnDialog     CancelSetup     1       0
-CustomSetup    ChangeFolder    SelectionBrowse InstallChangeFolder     1       0
-CustomSetup    Details SelectionBrowse DiskSpaceRequirements   1       1
-CustomSetup    Help    SpawnDialog     CustomSetupTips 1       1
-CustomSetup    Next    [_IsSetupTypeMin]       Custom  1       0
-CustomSetup    Next    NewDialog       OutOfSpace      OutOfNoRbDiskSpace = 1  0
-CustomSetup    Next    NewDialog       ReadyToInstall  OutOfNoRbDiskSpace <> 1 0
-CustomSetupTips        OK      EndDialog       Return  1       1
-DatabaseFolder Back    NewDialog       CustomerInformation     1       1
-DatabaseFolder Cancel  SpawnDialog     CancelSetup     1       1
-DatabaseFolder ChangeFolder    [_BrowseProperty]       DATABASEDIR     1       
2
-DatabaseFolder ChangeFolder    SpawnDialog     InstallChangeFolder     1       
1
-DatabaseFolder Next    NewDialog       SetupType       1       1
-DestinationFolder      Back    NewDialog       SetupType       1       1
-DestinationFolder      Cancel  SpawnDialog     CancelSetup     1       1
-DestinationFolder      ChangeFolder    [_BrowseProperty]       INSTALLDIR      
1       2
-DestinationFolder      ChangeFolder    SpawnDialog     InstallChangeFolder     
1       1
-DestinationFolder      Next    NewDialog       ReadyToInstall  1       1
-DiskSpaceRequirements  OK      EndDialog       Return  1       0
-FilesInUse     Exit    EndDialog       Exit    1       0
-FilesInUse     Ignore  EndDialog       Ignore  1       0
-FilesInUse     Retry   EndDialog       Retry   1       0
-InstallChangeFolder    Cancel  EndDialog       Return  1       2
-InstallChangeFolder    Cancel  Reset   0       1       1
-InstallChangeFolder    NewFolder       DirectoryListNew        0       1       
1
-InstallChangeFolder    OK      DoAction        VerifyApachePath        1       
2
-InstallChangeFolder    OK      EndDialog       Return  _BadPath = 0    2
-InstallChangeFolder    OK      SpawnDialog     SetupBadPath    _BadPath = 1    
3
-InstallChangeFolder    Up      DirectoryListUp 0       1       1
-InstallWelcome Back    NewDialog       SplashBitmap    Display_IsBitmapDlg     
1
-InstallWelcome Cancel  SpawnDialog     CancelSetup     1       0
-InstallWelcome Next    NewDialog       LicenseAgreement        1       1
-LicenseAgreement       Back    NewDialog       InstallWelcome  1       0
-LicenseAgreement       Cancel  SpawnDialog     CancelSetup     1       0
-LicenseAgreement       Next    [_BrowseProperty]       INSTALLDIR      1       
1
-LicenseAgreement       Next    NewDialog       CustomerInformation     
AgreeToLicense = "Yes"  2
-MaintenanceType        Back    NewDialog       MaintenanceWelcome      1       
1
-MaintenanceType        Cancel  SpawnDialog     CancelSetup     1       1
-MaintenanceType        Next    [ProgressType0] Repair  _IsMaintenance = 
"Reinstall"    1
-MaintenanceType        Next    [ProgressType1] Repairing       _IsMaintenance 
= "Reinstall"    2
-MaintenanceType        Next    [ProgressType2] repairs _IsMaintenance = 
"Reinstall"    3
-MaintenanceType        Next    [ProgressType3] repairs _IsMaintenance = 
"Reinstall"    4
-MaintenanceType        Next    NewDialog       ReadyToInstall  _IsMaintenance 
= "Reinstall"    8
-MaintenanceType        Next    NewDialog       ReadyToRemove   _IsMaintenance 
= "Remove"       7
-MaintenanceType        Next    Reinstall       ALL     _IsMaintenance = 
"Reinstall"    6
-MaintenanceType        Next    ReinstallMode   [ReinstallModeText]     
_IsMaintenance = "Reinstall"    5
-MaintenanceWelcome     Cancel  SpawnDialog     CancelSetup     1       1
-MaintenanceWelcome     Next    NewDialog       MaintenanceType 1       1
-OutOfSpace     Resume  NewDialog       AdminNetworkLocation    ACTION = 
"ADMIN"        0
-OutOfSpace     Resume  NewDialog       CustomSetup     ACTION <> "ADMIN"       0
-PatchWelcome   Back    NewDialog       SplashBitmap    Display_IsBitmapDlg     0
-PatchWelcome   Cancel  SpawnDialog     CancelSetup     1       1
-PatchWelcome   Next    EndDialog       Return  1       3
-PatchWelcome   Next    Reinstall       ALL     PATCH And REINSTALL=""  1
-PatchWelcome   Next    ReinstallMode   omus    PATCH And REINSTALLMODE=""      
2
-ReadyToInstall Back    [_BrowseProperty]       INSTALLDIR      NOT Installed   
1
-ReadyToInstall Back    NewDialog       CustomerInformation     NOT Installed   
2
-ReadyToInstall Back    NewDialog       MaintenanceType Installed       3
-ReadyToInstall Cancel  SpawnDialog     CancelSetup     1       1
-ReadyToInstall InstallNow      [ProgressType1] Installing      1       3
-ReadyToInstall InstallNow      [ProgressType2] installed       1       4
-ReadyToInstall InstallNow      [ProgressType3] installs        1       5
-ReadyToInstall InstallNow      EndDialog       Return  OutOfNoRbDiskSpace <> 1 
1
-ReadyToInstall InstallNow      NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
-ReadyToRemove  Back    NewDialog       MaintenanceType 1       0
-ReadyToRemove  Cancel  SpawnDialog     CancelSetup     1       0
-ReadyToRemove  RemoveNow       [ProgressType1] Uninstalling    1       0
-ReadyToRemove  RemoveNow       [ProgressType2] uninstalled     1       0
-ReadyToRemove  RemoveNow       [ProgressType3] uninstalls      1       0
-ReadyToRemove  RemoveNow       EndDialog       Return  OutOfNoRbDiskSpace <> 1 
2
-ReadyToRemove  RemoveNow       NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
-ReadyToRemove  RemoveNow       Remove  ALL     1       1
-SetupBadPath   PushButton7     EndDialog       Return  1       
-SetupCompleteError     Back    [Suspend]       {}      1       1
-SetupCompleteError     Back    EndDialog       Return  1       2
-SetupCompleteError     Cancel  [Suspend]       1       1       1
-SetupCompleteError     Cancel  EndDialog       Return  1       2
-SetupCompleteError     Finish  EndDialog       Exit    1       2
-SetupCompleteSuccess   OK      DoAction        CheckForProductUpdates  
ISCHECKFORPRODUCTUPDATES="1" And ISENABLEDWUSFINISHDIALOG And NOT 
ISREBOOTREQUIRED And NOT Installed And ACTION="INSTALL"       4
-SetupCompleteSuccess   OK      DoAction        CheckForProductUpdatesOnReboot  
ISCHECKFORPRODUCTUPDATES="1" And ISENABLEDWUSFINISHDIALOG And ISREBOOTREQUIRED 
And NOT Installed And ACTION="INSTALL"   5
-SetupCompleteSuccess   OK      EndDialog       Exit    1       2
-SetupError     A       EndDialog       ErrorAbort      1       1
-SetupError     C       EndDialog       ErrorCancel     1       1
-SetupError     I       EndDialog       ErrorIgnore     1       1
-SetupError     N       EndDialog       ErrorNo 1       1
-SetupError     O       EndDialog       ErrorOk 1       1
-SetupError     R       EndDialog       ErrorRetry      1       1
-SetupError     Y       EndDialog       ErrorYes        1       1
-SetupInitialization    Cancel  SpawnDialog     CancelSetup     1       0
-SetupInterrupted       Back    [Suspend]       {}      1       1
-SetupInterrupted       Back    EndDialog       Exit    1       2
-SetupInterrupted       Cancel  [Suspend]       1       1       1
-SetupInterrupted       Cancel  EndDialog       Exit    1       2
-SetupInterrupted       Finish  EndDialog       Exit    1       2
-SetupProgress  Cancel  SpawnDialog     CancelSetup     1       0
-SetupResume    Cancel  SpawnDialog     CancelSetup     1       0
-SetupResume    Next    EndDialog       Return  OutOfNoRbDiskSpace <> 1 0
-SetupResume    Next    NewDialog       OutOfSpace      OutOfNoRbDiskSpace = 1  0
-SetupType      Back    NewDialog       CustomerInformation     1       1
-SetupType      Cancel  SpawnDialog     CancelSetup     1       0
-SetupType      Next    AddLocal        ALL     _IsSetupTypeMin = "Typical"     
4
-SetupType      Next    NewDialog       CustomSetup     _IsSetupTypeMin = 
"Custom"      1
-SetupType      Next    NewDialog       DestinationFolder       _IsSetupTypeMin 
<> "Custom" And APACHE.EXE=""   2
-SetupType      Next    NewDialog       ReadyToInstall  _IsSetupTypeMin <> 
"Custom" And APACHE.EXE<>""  3
-SplashBitmap   Cancel  SpawnDialog     CancelSetup     1       0
-SplashBitmap   Next    NewDialog       InstallWelcome  1       0
+Dialog_        Control_        Event   Argument        Condition       Ordering
+s72    s50     s50     s255    S255    I2
+ControlEvent   Dialog_ Control_        Event   Argument        Condition
+AdminChangeFolder      Cancel  EndDialog       Return  1       2
+AdminChangeFolder      Cancel  Reset   0       1       1
+AdminChangeFolder      NewFolder       DirectoryListNew        0       1       0
+AdminChangeFolder      OK      EndDialog       Return  1       0
+AdminChangeFolder      OK      SetTargetPath   TARGETDIR       1       1
+AdminChangeFolder      Up      DirectoryListUp 0       1       0
+AdminNetworkLocation   Back    NewDialog       AdminWelcome    1       0
+AdminNetworkLocation   Browse  SpawnDialog     AdminChangeFolder       1       0
+AdminNetworkLocation   Cancel  SpawnDialog     CancelSetup     1       0
+AdminNetworkLocation   InstallNow      EndDialog       Return  
OutOfNoRbDiskSpace <> 1 3
+AdminNetworkLocation   InstallNow      NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
+AdminNetworkLocation   InstallNow      SetTargetPath   TARGETDIR       1       
1
+AdminWelcome   Cancel  SpawnDialog     CancelSetup     1       0
+AdminWelcome   Next    NewDialog       AdminNetworkLocation    1       0
+CancelSetup    No      EndDialog       Return  1       0
+CancelSetup    Yes     EndDialog       Exit    1       2
+CustomerInformation    Back    NewDialog       LicenseAgreement        1       
1
+CustomerInformation    Cancel  SpawnDialog     CancelSetup     1       1
+CustomerInformation    ChangeFolder    [_BrowseProperty]       INSTALLDIR      
1       1
+CustomerInformation    ChangeFolder    SpawnDialog     InstallChangeFolder     
1       2
+CustomerInformation    Next    [ALLUSERS]      {}      ApplicationUsers = 
"OnlyCurrentUser" And Privileged     2
+CustomerInformation    Next    [ALLUSERS]      2       ApplicationUsers = 
"AllUsers" And Privileged    1
+CustomerInformation    Next    DoAction        VerifyApachePath        1       
3
+CustomerInformation    Next    NewDialog       ReadyToInstall  _BadPath = 0    
4
+CustomerInformation    Next    SpawnDialog     SetupBadPath    _BadPath = 1    
5
+CustomSetup    Back    NewDialog       MaintenanceType Installed       1
+CustomSetup    Back    NewDialog       SetupType       NOT Installed   2
+CustomSetup    Cancel  SpawnDialog     CancelSetup     1       0
+CustomSetup    ChangeFolder    SelectionBrowse InstallChangeFolder     1       0
+CustomSetup    Details SelectionBrowse DiskSpaceRequirements   1       1
+CustomSetup    Help    SpawnDialog     CustomSetupTips 1       1
+CustomSetup    Next    [_IsSetupTypeMin]       Custom  1       0
+CustomSetup    Next    NewDialog       OutOfSpace      OutOfNoRbDiskSpace = 1  0
+CustomSetup    Next    NewDialog       ReadyToInstall  OutOfNoRbDiskSpace <> 1 0
+CustomSetupTips        OK      EndDialog       Return  1       1
+DatabaseFolder Back    NewDialog       CustomerInformation     1       1
+DatabaseFolder Cancel  SpawnDialog     CancelSetup     1       1
+DatabaseFolder ChangeFolder    [_BrowseProperty]       DATABASEDIR     1       
2
+DatabaseFolder ChangeFolder    SpawnDialog     InstallChangeFolder     1       
1
+DatabaseFolder Next    NewDialog       SetupType       1       1
+DestinationFolder      Back    NewDialog       SetupType       1       1
+DestinationFolder      Cancel  SpawnDialog     CancelSetup     1       1
+DestinationFolder      ChangeFolder    [_BrowseProperty]       INSTALLDIR      
1       2
+DestinationFolder      ChangeFolder    SpawnDialog     InstallChangeFolder     
1       1
+DestinationFolder      Next    NewDialog       ReadyToInstall  1       1
+DiskSpaceRequirements  OK      EndDialog       Return  1       0
+FilesInUse     Exit    EndDialog       Exit    1       0
+FilesInUse     Ignore  EndDialog       Ignore  1       0
+FilesInUse     Retry   EndDialog       Retry   1       0
+InstallChangeFolder    Cancel  EndDialog       Return  1       2
+InstallChangeFolder    Cancel  Reset   0       1       1
+InstallChangeFolder    NewFolder       DirectoryListNew        0       1       
1
+InstallChangeFolder    OK      DoAction        VerifyApachePath        1       
2
+InstallChangeFolder    OK      EndDialog       Return  _BadPath = 0    2
+InstallChangeFolder    OK      SpawnDialog     SetupBadPath    _BadPath = 1    
3
+InstallChangeFolder    Up      DirectoryListUp 0       1       1
+InstallWelcome Back    NewDialog       SplashBitmap    Display_IsBitmapDlg     
1
+InstallWelcome Cancel  SpawnDialog     CancelSetup     1       0
+InstallWelcome Next    NewDialog       LicenseAgreement        1       1
+LicenseAgreement       Back    NewDialog       InstallWelcome  1       0
+LicenseAgreement       Cancel  SpawnDialog     CancelSetup     1       0
+LicenseAgreement       Next    [_BrowseProperty]       INSTALLDIR      1       
1
+LicenseAgreement       Next    NewDialog       CustomerInformation     
AgreeToLicense = "Yes"  2
+MaintenanceType        Back    NewDialog       MaintenanceWelcome      1       
1
+MaintenanceType        Cancel  SpawnDialog     CancelSetup     1       1
+MaintenanceType        Next    [ProgressType0] Repair  _IsMaintenance = 
"Reinstall"    1
+MaintenanceType        Next    [ProgressType1] Repairing       _IsMaintenance 
= "Reinstall"    2
+MaintenanceType        Next    [ProgressType2] repairs _IsMaintenance = 
"Reinstall"    3
+MaintenanceType        Next    [ProgressType3] repairs _IsMaintenance = 
"Reinstall"    4
+MaintenanceType        Next    NewDialog       ReadyToInstall  _IsMaintenance 
= "Reinstall"    8
+MaintenanceType        Next    NewDialog       ReadyToRemove   _IsMaintenance 
= "Remove"       7
+MaintenanceType        Next    Reinstall       ALL     _IsMaintenance = 
"Reinstall"    6
+MaintenanceType        Next    ReinstallMode   [ReinstallModeText]     
_IsMaintenance = "Reinstall"    5
+MaintenanceWelcome     Cancel  SpawnDialog     CancelSetup     1       1
+MaintenanceWelcome     Next    NewDialog       MaintenanceType 1       1
+OutOfSpace     Resume  NewDialog       AdminNetworkLocation    ACTION = 
"ADMIN"        0
+OutOfSpace     Resume  NewDialog       CustomSetup     ACTION <> "ADMIN"       0
+PatchWelcome   Back    NewDialog       SplashBitmap    Display_IsBitmapDlg     0
+PatchWelcome   Cancel  SpawnDialog     CancelSetup     1       1
+PatchWelcome   Next    EndDialog       Return  1       3
+PatchWelcome   Next    Reinstall       ALL     PATCH And REINSTALL=""  1
+PatchWelcome   Next    ReinstallMode   omus    PATCH And REINSTALLMODE=""      
2
+ReadyToInstall Back    [_BrowseProperty]       INSTALLDIR      NOT Installed   
1
+ReadyToInstall Back    NewDialog       CustomerInformation     NOT Installed   
2
+ReadyToInstall Back    NewDialog       MaintenanceType Installed       3
+ReadyToInstall Cancel  SpawnDialog     CancelSetup     1       1
+ReadyToInstall InstallNow      [ProgressType1] Installing      1       3
+ReadyToInstall InstallNow      [ProgressType2] installed       1       4
+ReadyToInstall InstallNow      [ProgressType3] installs        1       5
+ReadyToInstall InstallNow      EndDialog       Return  OutOfNoRbDiskSpace <> 1 
1
+ReadyToInstall InstallNow      NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
+ReadyToRemove  Back    NewDialog       MaintenanceType 1       0
+ReadyToRemove  Cancel  SpawnDialog     CancelSetup     1       0
+ReadyToRemove  RemoveNow       [ProgressType1] Uninstalling    1       0
+ReadyToRemove  RemoveNow       [ProgressType2] uninstalled     1       0
+ReadyToRemove  RemoveNow       [ProgressType3] uninstalls      1       0
+ReadyToRemove  RemoveNow       EndDialog       Return  OutOfNoRbDiskSpace <> 1 
2
+ReadyToRemove  RemoveNow       NewDialog       OutOfSpace      
OutOfNoRbDiskSpace = 1  2
+ReadyToRemove  RemoveNow       Remove  ALL     1       1
+SetupBadPath   PushButton7     EndDialog       Return  1       
+SetupCompleteError     Back    [Suspend]       {}      1       1
+SetupCompleteError     Back    EndDialog       Return  1       2
+SetupCompleteError     Cancel  [Suspend]       1       1       1
+SetupCompleteError     Cancel  EndDialog       Return  1       2
+SetupCompleteError     Finish  EndDialog       Exit    1       2
+SetupCompleteSuccess   OK      DoAction        CheckForProductUpdates  
ISCHECKFORPRODUCTUPDATES="1" And ISENABLEDWUSFINISHDIALOG And NOT 
ISREBOOTREQUIRED And NOT Installed And ACTION="INSTALL"       4
+SetupCompleteSuccess   OK      DoAction        CheckForProductUpdatesOnReboot  
ISCHECKFORPRODUCTUPDATES="1" And ISENABLEDWUSFINISHDIALOG And ISREBOOTREQUIRED 
And NOT Installed And ACTION="INSTALL"   5
+SetupCompleteSuccess   OK      EndDialog       Exit    1       2
+SetupError     A       EndDialog       ErrorAbort      1       1
+SetupError     C       EndDialog       ErrorCancel     1       1
+SetupError     I       EndDialog       ErrorIgnore     1       1
+SetupError     N       EndDialog       ErrorNo 1       1
+SetupError     O       EndDialog       ErrorOk 1       1
+SetupError     R       EndDialog       ErrorRetry      1       1
+SetupError     Y       EndDialog       ErrorYes        1       1
+SetupInitialization    Cancel  SpawnDialog     CancelSetup     1       0
+SetupInterrupted       Back    [Suspend]       {}      1       1
+SetupInterrupted       Back    EndDialog       Exit    1       2
+SetupInterrupted       Cancel  [Suspend]       1       1       1
+SetupInterrupted       Cancel  EndDialog       Exit    1       2
+SetupInterrupted       Finish  EndDialog       Exit    1       2
+SetupProgress  Cancel  SpawnDialog     CancelSetup     1       0
+SetupResume    Cancel  SpawnDialog     CancelSetup     1       0
+SetupResume    Next    EndDialog       Return  OutOfNoRbDiskSpace <> 1 0
+SetupResume    Next    NewDialog       OutOfSpace      OutOfNoRbDiskSpace = 1  0
+SetupType      Back    NewDialog       CustomerInformation     1       1
+SetupType      Cancel  SpawnDialog     CancelSetup     1       0
+SetupType      Next    AddLocal        ALL     _IsSetupTypeMin = "Typical"     
4
+SetupType      Next    NewDialog       CustomSetup     _IsSetupTypeMin = 
"Custom"      1
+SetupType      Next    NewDialog       DestinationFolder       _IsSetupTypeMin 
<> "Custom" And APACHE.EXE=""   2
+SetupType      Next    NewDialog       ReadyToInstall  _IsSetupTypeMin <> 
"Custom" And APACHE.EXE<>""  3
+SplashBitmap   Cancel  SpawnDialog     CancelSetup     1       0
+SplashBitmap   Next    NewDialog       InstallWelcome  1       0

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/CreateFolder.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/CreateFolder.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/CreateFolder.idt  Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-Directory_     Component_
-s72    s72
-CreateFolder   Directory_      Component_
-HTML   html_docs
+Directory_     Component_
+s72    s72
+CreateFolder   Directory_      Component_
+HTML   html_docs

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/CustomAction.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/CustomAction.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/CustomAction.idt  Fri Jul 
16 09:27:17 2004
@@ -1,14 +1,14 @@
-Action Type    Source  Target  ISComments
-s72    i2      S64     S0      S255
-CustomAction   Action
-ISInitAllUsers 307     ALLUSERS        2       Initializes ALLUSERS property
-ISSelfRegisterCosting  1       ISSELFREG.DLL   ISSelfRegisterCosting   
-ISSelfRegisterFiles    1025    ISSELFREG.DLL   ISSelfRegisterFiles     
-ISSelfRegisterFinalize 1       ISSELFREG.DLL   ISSelfRegisterFinalize  
-ISUnSelfRegisterFiles  1025    ISSELFREG.DLL   ISUnSelfRegisterFiles   
-ResolveApacheInstances 257     NewBinary11     [EMAIL PROTECTED]       
Initialize the INSTALLDIR combo to valid Apache paths
-setAllUsersProfile2K   51      ALLUSERSPROFILE [%ALLUSERSPROFILE]      
-SetAllUsersProfileNT   51      ALLUSERSPROFILE [%SystemRoot]\Profiles\All 
Users        
-SetApachePath  35      INSTALLDIR      [_BrowseProperty]       
-setUserProfileNT       51      USERPROFILE     [%USERPROFILE]  
-VerifyApachePath       1       NewBinary11     [EMAIL PROTECTED]       Test 
that INSTALLDIR is a valid Apache path
+Action Type    Source  Target  ISComments
+s72    i2      S64     S0      S255
+CustomAction   Action
+ISInitAllUsers 307     ALLUSERS        2       Initializes ALLUSERS property
+ISSelfRegisterCosting  1       ISSELFREG.DLL   ISSelfRegisterCosting   
+ISSelfRegisterFiles    1025    ISSELFREG.DLL   ISSelfRegisterFiles     
+ISSelfRegisterFinalize 1       ISSELFREG.DLL   ISSelfRegisterFinalize  
+ISUnSelfRegisterFiles  1025    ISSELFREG.DLL   ISUnSelfRegisterFiles   
+ResolveApacheInstances 257     NewBinary11     [EMAIL PROTECTED]       
Initialize the INSTALLDIR combo to valid Apache paths
+setAllUsersProfile2K   51      ALLUSERSPROFILE [%ALLUSERSPROFILE]      
+SetAllUsersProfileNT   51      ALLUSERSPROFILE [%SystemRoot]\Profiles\All 
Users        
+SetApachePath  35      INSTALLDIR      [_BrowseProperty]       
+setUserProfileNT       51      USERPROFILE     [%USERPROFILE]  
+VerifyApachePath       1       NewBinary11     [EMAIL PROTECTED]       Test 
that INSTALLDIR is a valid Apache path

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Dialog.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Dialog.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Dialog.idt        Fri Jul 
16 09:27:17 2004
@@ -1,33 +1,33 @@
-Dialog HCentering      VCentering      Width   Height  Attributes      Title   
Control_First   Control_Default Control_Cancel  ISComments      TextStyle_      
ISWindowStyle   ISResourceId
-s72    i2      i2      i2      i2      I4      L128    s50     S50     S50     
S255    S72     I4      I4
-Dialog Dialog
-AdminChangeFolder      50      50      374     266     3       
##IDS__IsAdminInstallBrowse_0## Tail    OK      Cancel  Install Point Browse    
        0       
-AdminNetworkLocation   50      50      374     266     3       
##IDS__IsAdminInstallPoint_0##  InstallNow      InstallNow      Cancel  Network 
Location                0       
-AdminWelcome   50      50      374     266     3       
##IDS__IsAdminInstallPointWelcome_0##   Next    Next    Cancel  Administration 
Welcome          0       
-CancelSetup    50      50      260     85      3       ##IDS__IsCancelDlg_0##  
No      No      No      Cancel          0       
-CustomerInformation    50      50      374     266     3       
##IDS__IsRegisterUserDlg_0##    Next    Next    Cancel  Identification          
0       
-CustomSetup    50      50      374     266     35      
##IDS__IsCustomSelectionDlg_0## Tree    Next    Cancel  Custom Selection        
        0       
-CustomSetupTips        50      50      374     266     3       
##IDS__SetupTips_0##    OK      OK      OK      Custom Setup Tips               
0       
-DatabaseFolder 50      50      374     266     3       
##IDS__DatabaseFolder_0##       Next    Next    Cancel  Database Folder         
0       
-DestinationFolder      50      50      374     266     3       
##IDS__DestinationFolder_0##    Next    Next    Cancel  Destination Folder      
        0       
-DiskSpaceRequirements  50      50      374     266     3       
##IDS__IsFeatureDetailsDlg_0##  OK      OK      OK      Feature Details         
0       
-FilesInUse     50      50      374     266     19      ##IDS__IsFilesInUse_0## 
Retry   Retry   Exit    Files in Use            0       
-InstallChangeFolder    50      50      374     266     3       
##IDS__IsBrowseFolderDlg_0##    Tail    OK      Cancel  Browse          0       
-InstallWelcome 50      50      374     266     3       ##IDS__IsWelcomeDlg_0## 
Next    Next    Cancel  Welcome Panel           0       
-LicenseAgreement       50      50      374     266     2       
##IDS__IsLicenseDlg_0## Agree   Next    Cancel  License Agreement               
0       
-MaintenanceType        50      50      374     266     3       
##IDS__IsMaintenanceDlg_0##     RadioGroup      Next    Cancel  Change, 
Reinstall, Remove               0       
-MaintenanceWelcome     50      50      374     266     3       
##IDS__IsMaintenanceWelcome_0## Next    Next    Cancel  Maintenance Welcome     
        0       
-OutOfSpace     50      50      374     266     3       
##IDS__IsDiskSpaceDlg_0##       Resume  Resume  Resume  Out Of Disk Space       
        0       
-PatchWelcome   50      50      374     266     3       ##IDS__IsPatchDlg_0##   
Next    Next    Cancel  Patch Panel             0       
-ReadyToInstall 50      50      374     266     35      
##IDS__IsVerifyReadyDlg_0##     InstallNow      InstallNow      Cancel  Ready 
to Install                0       
-ReadyToRemove  50      50      374     266     3       
##IDS__IsVerifyRemoveAllDlg_0## RemoveNow       RemoveNow       Cancel  Verify 
Remove           0       
-SetupBadPath   50      10      270     110     7       ##NEW_STRING1## 
PushButton7     PushButton7     PushButton7     Path Error              0       
-SetupCompleteError     50      50      374     266     3       
##IDS__IsFatalError_0## Finish  Finish  Finish  Fatal Error             0       
-SetupCompleteSuccess   50      50      374     266     3       
##IDS__IsExitDialog_0## OK      OK      OK      Exit            0       
-SetupError     50      10      270     110     65543   ##IDS__IsErrorDlg_0##   
ErrorText       O       C       Error           0       
-SetupInitialization    50      50      374     266     5       
##IDS__IsInitDlg_0##    Cancel  Cancel  Cancel  Setup Initialization            
0       
-SetupInterrupted       50      50      374     266     3       
##IDS__IsUserExit_0##   Finish  Finish  Finish  User Exit               0       
-SetupProgress  50      50      374     266     5       
##IDS__IsProgressDlg_0##        Cancel  Cancel  Cancel  Progress                
0       
-SetupResume    50      50      374     266     3       ##IDS__IsResumeDlg_0##  
Next    Next    Cancel  Resume          0       
-SetupType      50      50      374     266     3       
##IDS__IsSetupTypeMinDlg_0##    RadioGroup      Next    Cancel  Setup Type      
        0       
-SplashBitmap   50      50      374     266     3       ##IDS__IsBitmapDlg_0##  
Next    Next    Cancel  Welcome Bitmap          0       
+Dialog HCentering      VCentering      Width   Height  Attributes      Title   
Control_First   Control_Default Control_Cancel  ISComments      TextStyle_      
ISWindowStyle   ISResourceId
+s72    i2      i2      i2      i2      I4      L128    s50     S50     S50     
S255    S72     I4      I4
+Dialog Dialog
+AdminChangeFolder      50      50      374     266     3       
##IDS__IsAdminInstallBrowse_0## Tail    OK      Cancel  Install Point Browse    
        0       
+AdminNetworkLocation   50      50      374     266     3       
##IDS__IsAdminInstallPoint_0##  InstallNow      InstallNow      Cancel  Network 
Location                0       
+AdminWelcome   50      50      374     266     3       
##IDS__IsAdminInstallPointWelcome_0##   Next    Next    Cancel  Administration 
Welcome          0       
+CancelSetup    50      50      260     85      3       ##IDS__IsCancelDlg_0##  
No      No      No      Cancel          0       
+CustomerInformation    50      50      374     266     3       
##IDS__IsRegisterUserDlg_0##    Next    Next    Cancel  Identification          
0       
+CustomSetup    50      50      374     266     35      
##IDS__IsCustomSelectionDlg_0## Tree    Next    Cancel  Custom Selection        
        0       
+CustomSetupTips        50      50      374     266     3       
##IDS__SetupTips_0##    OK      OK      OK      Custom Setup Tips               
0       
+DatabaseFolder 50      50      374     266     3       
##IDS__DatabaseFolder_0##       Next    Next    Cancel  Database Folder         
0       
+DestinationFolder      50      50      374     266     3       
##IDS__DestinationFolder_0##    Next    Next    Cancel  Destination Folder      
        0       
+DiskSpaceRequirements  50      50      374     266     3       
##IDS__IsFeatureDetailsDlg_0##  OK      OK      OK      Feature Details         
0       
+FilesInUse     50      50      374     266     19      ##IDS__IsFilesInUse_0## 
Retry   Retry   Exit    Files in Use            0       
+InstallChangeFolder    50      50      374     266     3       
##IDS__IsBrowseFolderDlg_0##    Tail    OK      Cancel  Browse          0       
+InstallWelcome 50      50      374     266     3       ##IDS__IsWelcomeDlg_0## 
Next    Next    Cancel  Welcome Panel           0       
+LicenseAgreement       50      50      374     266     2       
##IDS__IsLicenseDlg_0## Agree   Next    Cancel  License Agreement               
0       
+MaintenanceType        50      50      374     266     3       
##IDS__IsMaintenanceDlg_0##     RadioGroup      Next    Cancel  Change, 
Reinstall, Remove               0       
+MaintenanceWelcome     50      50      374     266     3       
##IDS__IsMaintenanceWelcome_0## Next    Next    Cancel  Maintenance Welcome     
        0       
+OutOfSpace     50      50      374     266     3       
##IDS__IsDiskSpaceDlg_0##       Resume  Resume  Resume  Out Of Disk Space       
        0       
+PatchWelcome   50      50      374     266     3       ##IDS__IsPatchDlg_0##   
Next    Next    Cancel  Patch Panel             0       
+ReadyToInstall 50      50      374     266     35      
##IDS__IsVerifyReadyDlg_0##     InstallNow      InstallNow      Cancel  Ready 
to Install                0       
+ReadyToRemove  50      50      374     266     3       
##IDS__IsVerifyRemoveAllDlg_0## RemoveNow       RemoveNow       Cancel  Verify 
Remove           0       
+SetupBadPath   50      10      270     110     7       ##NEW_STRING1## 
PushButton7     PushButton7     PushButton7     Path Error              0       
+SetupCompleteError     50      50      374     266     3       
##IDS__IsFatalError_0## Finish  Finish  Finish  Fatal Error             0       
+SetupCompleteSuccess   50      50      374     266     3       
##IDS__IsExitDialog_0## OK      OK      OK      Exit            0       
+SetupError     50      10      270     110     65543   ##IDS__IsErrorDlg_0##   
ErrorText       O       C       Error           0       
+SetupInitialization    50      50      374     266     5       
##IDS__IsInitDlg_0##    Cancel  Cancel  Cancel  Setup Initialization            
0       
+SetupInterrupted       50      50      374     266     3       
##IDS__IsUserExit_0##   Finish  Finish  Finish  User Exit               0       
+SetupProgress  50      50      374     266     5       
##IDS__IsProgressDlg_0##        Cancel  Cancel  Cancel  Progress                
0       
+SetupResume    50      50      374     266     3       ##IDS__IsResumeDlg_0##  
Next    Next    Cancel  Resume          0       
+SetupType      50      50      374     266     3       
##IDS__IsSetupTypeMinDlg_0##    RadioGroup      Next    Cancel  Setup Type      
        0       
+SplashBitmap   50      50      374     266     3       ##IDS__IsBitmapDlg_0##  
Next    Next    Cancel  Welcome Bitmap          0       

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Directory.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Directory.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Directory.idt     Fri Jul 
16 09:27:17 2004
@@ -1,27 +1,27 @@
-Directory      Directory_Parent        DefaultDir      ISDescription   
ISAttributes
-s72    S72     l255    S255    I4
-Directory      Directory
-APACHE_ROOT    INSTALLDIR      .               0
-APACHE_GROUP   ProgramFilesFolder      .:APACHE~1|Apache Group         0
-APACHE_MODULES APACHE  modules         0
-DesktopFolder  TARGETDIR       .:Desktop               0
-DOCS   INSTALLDIR      docs            0
-FontsFolder    TARGETDIR       .:Fonts         0
-GlobalAssemblyCache    TARGETDIR       .:Global~1|GlobalAssemblyCache          0
-HTML   DOCS    HTML            0
-INSTALLDIR     APACHE_GROUP    apache2         0
-LocalAppDataFolder     TARGETDIR       .:LocalA~1|LocalAppData         0
-MyPicturesFolder       TARGETDIR       .:MyPict~1|MyPictures           0
-PDF    DOCS    PDF             0
-PersonalFolder TARGETDIR       .:Personal              0
-PrimaryVolumePath      TARGETDIR       .:Primar~1|PrimaryVolumePath            0
-ProgramFiles64Folder   TARGETDIR       .:Prog64~1|Program Files 64             0
-ProgramMenuFolder      TARGETDIR       .:Programs              3
-SendToFolder   TARGETDIR       .:SendTo                3
-StartMenuFolder        TARGETDIR       .:STARTM~1|Start Menu           3
-StartupFolder  TARGETDIR       .:StartUp               0
-System16Folder TARGETDIR       .:System                0
-System64Folder TARGETDIR       .:System64              0
-SystemFolder   TARGETDIR       .:System32              0
-TARGETDIR              SourceDir               0
-WindowsVolume  TARGETDIR       .:WinRoot               0
+Directory      Directory_Parent        DefaultDir      ISDescription   
ISAttributes
+s72    S72     l255    S255    I4
+Directory      Directory
+APACHE_ROOT    INSTALLDIR      .               0
+APACHE_GROUP   ProgramFilesFolder      .:APACHE~1|Apache Group         0
+APACHE_MODULES APACHE  modules         0
+DesktopFolder  TARGETDIR       .:Desktop               0
+DOCS   INSTALLDIR      docs            0
+FontsFolder    TARGETDIR       .:Fonts         0
+GlobalAssemblyCache    TARGETDIR       .:Global~1|GlobalAssemblyCache          0
+HTML   DOCS    HTML            0
+INSTALLDIR     APACHE_GROUP    apache2         0
+LocalAppDataFolder     TARGETDIR       .:LocalA~1|LocalAppData         0
+MyPicturesFolder       TARGETDIR       .:MyPict~1|MyPictures           0
+PDF    DOCS    PDF             0
+PersonalFolder TARGETDIR       .:Personal              0
+PrimaryVolumePath      TARGETDIR       .:Primar~1|PrimaryVolumePath            0
+ProgramFiles64Folder   TARGETDIR       .:Prog64~1|Program Files 64             0
+ProgramMenuFolder      TARGETDIR       .:Programs              3
+SendToFolder   TARGETDIR       .:SendTo                3
+StartMenuFolder        TARGETDIR       .:STARTM~1|Start Menu           3
+StartupFolder  TARGETDIR       .:StartUp               0
+System16Folder TARGETDIR       .:System                0
+System64Folder TARGETDIR       .:System64              0
+SystemFolder   TARGETDIR       .:System32              0
+TARGETDIR              SourceDir               0
+WindowsVolume  TARGETDIR       .:WinRoot               0

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/DrLocator.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/DrLocator.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/DrLocator.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature_     Parent  Path    Depth
-s72    S72     S255    I2
-DrLocator      Signature_      Parent  Path
+Signature_     Parent  Path    Depth
+s72    S72     S255    I2
+DrLocator      Signature_      Parent  Path

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/DuplicateFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/DuplicateFile.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/DuplicateFile.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-FileKey        Component_      File_   DestName        DestFolder
-s72    s72     s72     L255    S32
-DuplicateFile  FileKey
+FileKey        Component_      File_   DestName        DestFolder
+s72    s72     s72     L255    S32
+DuplicateFile  FileKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Environment.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Environment.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Environment.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Environment    Name    Value   Component_
-s72    l255    L255    s72
-Environment    Environment
+Environment    Name    Value   Component_
+s72    l255    L255    s72
+Environment    Environment

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Error.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Error.idt (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Error.idt Fri Jul 16 
09:27:17 2004
@@ -1,134 +1,134 @@
-Error  Message
-i2     L255
-Error  Error
-0      ##IDS_ERROR_0##
-1      ##IDS_ERROR_1##
-2      ##IDS_ERROR_2##
-4      ##IDS_ERROR_3##
-5      ##IDS_ERROR_4##
-7      ##IDS_ERROR_5##
-8      ##IDS_ERROR_6##
-9      ##IDS_ERROR_7##
-10     ##IDS_ERROR_8##
-11     ##IDS_ERROR_9##
-12     ##IDS_ERROR_10##
-13     ##IDS_ERROR_11##
-14     ##IDS_ERROR_12##
-15     ##IDS_ERROR_13##
-16     ##IDS_ERROR_14##
-17     ##IDS_ERROR_15##
-18     ##IDS_ERROR_16##
-19     ##IDS_ERROR_17##
-20     ##IDS_ERROR_18##
-21     ##IDS_ERROR_19##
-22     ##IDS_ERROR_120##
-23     ##IDS_ERROR_121##
-32     ##IDS_ERROR_20##
-33     ##IDS_ERROR_21##
-1101   ##IDS_ERROR_22##
-1301   ##IDS_ERROR_23##
-1302   ##IDS_ERROR_24##
-1303   ##IDS_ERROR_25##
-1304   ##IDS_ERROR_26##
-1305   ##IDS_ERROR_27##
-1306   ##IDS_ERROR_28##
-1307   ##IDS_ERROR_29##
-1308   ##IDS_ERROR_30##
-1309   ##IDS_ERROR_31##
-1310   ##IDS_ERROR_32##
-1311   ##IDS_ERROR_33##
-1312   ##IDS_ERROR_34##
-1313   ##IDS_ERROR_35##
-1314   ##IDS_ERROR_36##
-1315   ##IDS_ERROR_37##
-1316   ##IDS_ERROR_38##
-1317   ##IDS_ERROR_39##
-1318   ##IDS_ERROR_40##
-1319   ##IDS_ERROR_41##
-1320   ##IDS_ERROR_42##
-1321   ##IDS_ERROR_43##
-1322   ##IDS_ERROR_44##
-1323   ##IDS_ERROR_45##
-1324   ##IDS_ERROR_46##
-1325   ##IDS_ERROR_47##
-1326   ##IDS_ERROR_48##
-1327   ##IDS_ERROR_49##
-1328   ##IDS_ERROR_122##
-1401   ##IDS_ERROR_50##
-1402   ##IDS_ERROR_51##
-1403   ##IDS_ERROR_52##
-1404   ##IDS_ERROR_53##
-1405   ##IDS_ERROR_54##
-1406   ##IDS_ERROR_55##
-1407   ##IDS_ERROR_56##
-1408   ##IDS_ERROR_57##
-1409   ##IDS_ERROR_58##
-1410   ##IDS_ERROR_59##
-1500   ##IDS_ERROR_60##
-1501   ##IDS_ERROR_61##
-1502   ##IDS_ERROR_62##
-1503   ##IDS_ERROR_63##
-1601   ##IDS_ERROR_64##
-1602   ##IDS_ERROR_65##
-1603   ##IDS_ERROR_66##
-1604   ##IDS_ERROR_67##
-1605   ##IDS_ERROR_68##
-1606   ##IDS_ERROR_69##
-1607   ##IDS_ERROR_70##
-1608   ##IDS_ERROR_71##
-1701   ##IDS_ERROR_72##
-1702   ##IDS_ERROR_73##
-1703   ##IDS_ERROR_74##
-1704   ##IDS_ERROR_75##
-1705   ##IDS_ERROR_76##
-1706   ##IDS_ERROR_77##
-1707   ##IDS_ERROR_78##
-1708   ##IDS_ERROR_79##
-1709   ##IDS_ERROR_80##
-1710   ##IDS_ERROR_81##
-1711   ##IDS_ERROR_82##
-1712   ##IDS_ERROR_83##
-1713   ##IDS_ERROR_123##
-1714   ##IDS_ERROR_124##
-1801   ##IDS_ERROR_84##
-1802   ##IDS_ERROR_85##
-1803   ##IDS_ERROR_86##
-1804   ##IDS_ERROR_87##
-1805   ##IDS_ERROR_88##
-1806   ##IDS_ERROR_89##
-1807   ##IDS_ERROR_90##
-1901   ##IDS_ERROR_91##
-1902   ##IDS_ERROR_92##
-1903   ##IDS_ERROR_93##
-1904   ##IDS_ERROR_94##
-1905   ##IDS_ERROR_95##
-1906   ##IDS_ERROR_96##
-1907   ##IDS_ERROR_97##
-1908   ##IDS_ERROR_98##
-1909   ##IDS_ERROR_99##
-1910   ##IDS_ERROR_100##
-1911   ##IDS_ERROR_101##
-1912   ##IDS_ERROR_102##
-1913   ##IDS_ERROR_103##
-1914   ##IDS_ERROR_104##
-1915   ##IDS_ERROR_105##
-1916   ##IDS_ERROR_106##
-1917   ##IDS_ERROR_107##
-1918   ##IDS_ERROR_108##
-1919   ##IDS_ERROR_109##
-1920   ##IDS_ERROR_110##
-1921   ##IDS_ERROR_111##
-1922   ##IDS_ERROR_112##
-1923   ##IDS_ERROR_113##
-1924   ##IDS_ERROR_114##
-1925   ##IDS_ERROR_115##
-1926   ##IDS_ERROR_116##
-1927   ##IDS_ERROR_117##
-1928   ##IDS_ERROR_118##
-1929   ##IDS_ERROR_119##
-1930   ##IDS_ERROR_125##
-1931   ##IDS_ERROR_126##
-1932   ##IDS_ERROR_127##
-1933   ##IDS_ERROR_128##
-1934   ##IDS_ERROR_129##
-25000  ##ID_STRING2##
+Error  Message
+i2     L255
+Error  Error
+0      ##IDS_ERROR_0##
+1      ##IDS_ERROR_1##
+2      ##IDS_ERROR_2##
+4      ##IDS_ERROR_3##
+5      ##IDS_ERROR_4##
+7      ##IDS_ERROR_5##
+8      ##IDS_ERROR_6##
+9      ##IDS_ERROR_7##
+10     ##IDS_ERROR_8##
+11     ##IDS_ERROR_9##
+12     ##IDS_ERROR_10##
+13     ##IDS_ERROR_11##
+14     ##IDS_ERROR_12##
+15     ##IDS_ERROR_13##
+16     ##IDS_ERROR_14##
+17     ##IDS_ERROR_15##
+18     ##IDS_ERROR_16##
+19     ##IDS_ERROR_17##
+20     ##IDS_ERROR_18##
+21     ##IDS_ERROR_19##
+22     ##IDS_ERROR_120##
+23     ##IDS_ERROR_121##
+32     ##IDS_ERROR_20##
+33     ##IDS_ERROR_21##
+1101   ##IDS_ERROR_22##
+1301   ##IDS_ERROR_23##
+1302   ##IDS_ERROR_24##
+1303   ##IDS_ERROR_25##
+1304   ##IDS_ERROR_26##
+1305   ##IDS_ERROR_27##
+1306   ##IDS_ERROR_28##
+1307   ##IDS_ERROR_29##
+1308   ##IDS_ERROR_30##
+1309   ##IDS_ERROR_31##
+1310   ##IDS_ERROR_32##
+1311   ##IDS_ERROR_33##
+1312   ##IDS_ERROR_34##
+1313   ##IDS_ERROR_35##
+1314   ##IDS_ERROR_36##
+1315   ##IDS_ERROR_37##
+1316   ##IDS_ERROR_38##
+1317   ##IDS_ERROR_39##
+1318   ##IDS_ERROR_40##
+1319   ##IDS_ERROR_41##
+1320   ##IDS_ERROR_42##
+1321   ##IDS_ERROR_43##
+1322   ##IDS_ERROR_44##
+1323   ##IDS_ERROR_45##
+1324   ##IDS_ERROR_46##
+1325   ##IDS_ERROR_47##
+1326   ##IDS_ERROR_48##
+1327   ##IDS_ERROR_49##
+1328   ##IDS_ERROR_122##
+1401   ##IDS_ERROR_50##
+1402   ##IDS_ERROR_51##
+1403   ##IDS_ERROR_52##
+1404   ##IDS_ERROR_53##
+1405   ##IDS_ERROR_54##
+1406   ##IDS_ERROR_55##
+1407   ##IDS_ERROR_56##
+1408   ##IDS_ERROR_57##
+1409   ##IDS_ERROR_58##
+1410   ##IDS_ERROR_59##
+1500   ##IDS_ERROR_60##
+1501   ##IDS_ERROR_61##
+1502   ##IDS_ERROR_62##
+1503   ##IDS_ERROR_63##
+1601   ##IDS_ERROR_64##
+1602   ##IDS_ERROR_65##
+1603   ##IDS_ERROR_66##
+1604   ##IDS_ERROR_67##
+1605   ##IDS_ERROR_68##
+1606   ##IDS_ERROR_69##
+1607   ##IDS_ERROR_70##
+1608   ##IDS_ERROR_71##
+1701   ##IDS_ERROR_72##
+1702   ##IDS_ERROR_73##
+1703   ##IDS_ERROR_74##
+1704   ##IDS_ERROR_75##
+1705   ##IDS_ERROR_76##
+1706   ##IDS_ERROR_77##
+1707   ##IDS_ERROR_78##
+1708   ##IDS_ERROR_79##
+1709   ##IDS_ERROR_80##
+1710   ##IDS_ERROR_81##
+1711   ##IDS_ERROR_82##
+1712   ##IDS_ERROR_83##
+1713   ##IDS_ERROR_123##
+1714   ##IDS_ERROR_124##
+1801   ##IDS_ERROR_84##
+1802   ##IDS_ERROR_85##
+1803   ##IDS_ERROR_86##
+1804   ##IDS_ERROR_87##
+1805   ##IDS_ERROR_88##
+1806   ##IDS_ERROR_89##
+1807   ##IDS_ERROR_90##
+1901   ##IDS_ERROR_91##
+1902   ##IDS_ERROR_92##
+1903   ##IDS_ERROR_93##
+1904   ##IDS_ERROR_94##
+1905   ##IDS_ERROR_95##
+1906   ##IDS_ERROR_96##
+1907   ##IDS_ERROR_97##
+1908   ##IDS_ERROR_98##
+1909   ##IDS_ERROR_99##
+1910   ##IDS_ERROR_100##
+1911   ##IDS_ERROR_101##
+1912   ##IDS_ERROR_102##
+1913   ##IDS_ERROR_103##
+1914   ##IDS_ERROR_104##
+1915   ##IDS_ERROR_105##
+1916   ##IDS_ERROR_106##
+1917   ##IDS_ERROR_107##
+1918   ##IDS_ERROR_108##
+1919   ##IDS_ERROR_109##
+1920   ##IDS_ERROR_110##
+1921   ##IDS_ERROR_111##
+1922   ##IDS_ERROR_112##
+1923   ##IDS_ERROR_113##
+1924   ##IDS_ERROR_114##
+1925   ##IDS_ERROR_115##
+1926   ##IDS_ERROR_116##
+1927   ##IDS_ERROR_117##
+1928   ##IDS_ERROR_118##
+1929   ##IDS_ERROR_119##
+1930   ##IDS_ERROR_125##
+1931   ##IDS_ERROR_126##
+1932   ##IDS_ERROR_127##
+1933   ##IDS_ERROR_128##
+1934   ##IDS_ERROR_129##
+25000  ##ID_STRING2##

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/EventMapping.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/EventMapping.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/EventMapping.idt  Fri Jul 
16 09:27:17 2004
@@ -1,18 +1,18 @@
-Dialog_        Control_        Event   Attribute
-s72    s50     s50     s50
-EventMapping   Dialog_ Control_        Event
-CustomSetup    ItemDescription SelectionDescription    Text
-CustomSetup    Location        SelectionPath   Text
-CustomSetup    Size    SelectionSize   Text
-SetupInitialization    ActionData      ActionData      Text
-SetupInitialization    ActionText      ActionText      Text
-SetupProgress  ActionProgress95        AdminInstallFinalize    Progress
-SetupProgress  ActionProgress95        InstallFiles    Progress
-SetupProgress  ActionProgress95        MoveFiles       Progress
-SetupProgress  ActionProgress95        RemoveFiles     Progress
-SetupProgress  ActionProgress95        RemoveRegistryValues    Progress
-SetupProgress  ActionProgress95        SetProgress     Progress
-SetupProgress  ActionProgress95        UnmoveFiles     Progress
-SetupProgress  ActionProgress95        WriteIniValues  Progress
-SetupProgress  ActionProgress95        WriteRegistryValues     Progress
-SetupProgress  ActionText      ActionText      Text
+Dialog_        Control_        Event   Attribute
+s72    s50     s50     s50
+EventMapping   Dialog_ Control_        Event
+CustomSetup    ItemDescription SelectionDescription    Text
+CustomSetup    Location        SelectionPath   Text
+CustomSetup    Size    SelectionSize   Text
+SetupInitialization    ActionData      ActionData      Text
+SetupInitialization    ActionText      ActionText      Text
+SetupProgress  ActionProgress95        AdminInstallFinalize    Progress
+SetupProgress  ActionProgress95        InstallFiles    Progress
+SetupProgress  ActionProgress95        MoveFiles       Progress
+SetupProgress  ActionProgress95        RemoveFiles     Progress
+SetupProgress  ActionProgress95        RemoveRegistryValues    Progress
+SetupProgress  ActionProgress95        SetProgress     Progress
+SetupProgress  ActionProgress95        UnmoveFiles     Progress
+SetupProgress  ActionProgress95        WriteIniValues  Progress
+SetupProgress  ActionProgress95        WriteRegistryValues     Progress
+SetupProgress  ActionText      ActionText      Text

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Extension.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Extension.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Extension.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Extension      Component_      ProgId_ MIME_   Feature_
-s255   s72     S255    S64     s38
-Extension      Extension       Component_
+Extension      Component_      ProgId_ MIME_   Feature_
+s255   s72     S255    S64     s38
+Extension      Extension       Component_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Feature.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Feature.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Feature.idt       Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-Feature        Feature_Parent  Title   Description     Display Level   
Directory_      Attributes      ISReleaseFlags  ISComments
-s38    S38     L64     L255    I2      i2      S72     i2      S255    S255
-Feature        Feature
-mod_aspdotnet          ##FEATURE_NAME##        ##FEATURE_DESC##        3       
1       INSTALLDIR      24              Enter comments regarding this feature 
here.
+Feature        Feature_Parent  Title   Description     Display Level   
Directory_      Attributes      ISReleaseFlags  ISComments
+s38    S38     L64     L255    I2      i2      S72     i2      S255    S255
+Feature        Feature
+mod_aspdotnet          ##FEATURE_NAME##        ##FEATURE_DESC##        3       
1       INSTALLDIR      24              Enter comments regarding this feature 
here.

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/FeatureComponents.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/FeatureComponents.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/FeatureComponents.idt     
Fri Jul 16 09:27:17 2004
@@ -1,5 +1,5 @@
-Feature_       Component_
-s38    s72
-FeatureComponents      Feature_        Component_
-mod_aspdotnet  Apache.Web
-mod_aspdotnet  mod_aspdotnet.so
+Feature_       Component_
+s38    s72
+FeatureComponents      Feature_        Component_
+mod_aspdotnet  Apache.Web
+mod_aspdotnet  mod_aspdotnet.so

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/File.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/File.idt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/File.idt  Fri Jul 16 
09:27:17 2004
@@ -1,6 +1,6 @@
-File   Component_      FileName        FileSize        Version Language        
Attributes      Sequence        ISBuildSourcePath       ISAttributes
-s72    s72     s255    i4      S72     S20     I2      i2      S255    I4
-File   File
-Apache.Web.dll Apache.Web      APACHE~1.DLL|Apache.Web.dll     0               
        512     1       <ISProjectFolder>\release\Apache.Web.dll        1
-Apache.Web.Helpers.netmodu     Apache.Web      
APACHE~1.NET|Apache.Web.Helpers.netmodule       0                               
1       <ISProjectFolder>\release\Apache.Web.Helpers.netmodule  1
-mod_aspdotnet.so       mod_aspdotnet.so        MOD_AS~1.SO|mod_aspdotnet.so    
0                       0       1       
<ISProjectFolder>\release\mod_aspdotnet.so      1
+File   Component_      FileName        FileSize        Version Language        
Attributes      Sequence        ISBuildSourcePath       ISAttributes
+s72    s72     s255    i4      S72     S20     I2      i2      S255    I4
+File   File
+Apache.Web.dll Apache.Web      APACHE~1.DLL|Apache.Web.dll     0               
        512     1       <ISProjectFolder>\release\Apache.Web.dll        1
+Apache.Web.Helpers.netmodu     Apache.Web      
APACHE~1.NET|Apache.Web.Helpers.netmodule       0                               
1       <ISProjectFolder>\release\Apache.Web.Helpers.netmodule  1
+mod_aspdotnet.so       mod_aspdotnet.so        MOD_AS~1.SO|mod_aspdotnet.so    
0                       0       1       
<ISProjectFolder>\release\mod_aspdotnet.so      1

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/FileSFPCatalog.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/FileSFPCatalog.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/FileSFPCatalog.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-File_  SFPCatalog_
-s72    s255
-FileSFPCatalog File_   SFPCatalog_
+File_  SFPCatalog_
+s72    s255
+FileSFPCatalog File_   SFPCatalog_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Font.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Font.idt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Font.idt  Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-File_  FontTitle
-s72    S128
-Font   File_
+File_  FontTitle
+s72    S128
+Font   File_

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISComponentExtended.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISComponentExtended.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISComponentExtended.idt   
Fri Jul 16 09:27:17 2004
@@ -1,6 +1,6 @@
-Component_     OS      Language        FilterProperty
-s72    I4      S0      s72
-ISComponentExtended    Component_
-Apache.Web                     _A19D17B5_68F0_4170_8BFD_6334E5F3CDEE_FILTER
-html_docs                      _2D798142_97A8_40D0_B28D_1C72F2B3A710_FILTER
-mod_aspdotnet.so                       
_00646B0C_1EA0_4FEE_A560_8FDA43CAD89A_FILTER
+Component_     OS      Language        FilterProperty
+s72    I4      S0      s72
+ISComponentExtended    Component_
+Apache.Web                     _A19D17B5_68F0_4170_8BFD_6334E5F3CDEE_FILTER
+html_docs                      _2D798142_97A8_40D0_B28D_1C72F2B3A710_FILTER
+mod_aspdotnet.so                       
_00646B0C_1EA0_4FEE_A560_8FDA43CAD89A_FILTER

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDLLWrapper.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDLLWrapper.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDLLWrapper.idt  Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-EntryPoint     Type    Source  Target
-s72    I4      s0      s255
-ISDLLWrapper   EntryPoint
+EntryPoint     Type    Source  Target
+s72    I4      s0      s255
+ISDLLWrapper   EntryPoint

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDependency.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDependency.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDependency.idt  Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISDependency   Exclude
-S50    I2
-ISDependency   ISDependency
+ISDependency   Exclude
+S50    I2
+ISDependency   ISDependency

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDisk1File.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDisk1File.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDisk1File.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISDisk1File    ISBuildSourcePath
-s72    s255
-ISDisk1File    ISDisk1File
+ISDisk1File    ISBuildSourcePath
+s72    s255
+ISDisk1File    ISDisk1File

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDynamicFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDynamicFile.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISDynamicFile.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Component_     SourceFolder    IncludeFlags    IncludeFiles    ExcludeFiles    
ISAttributes
-s72    s255    I2      S255    S255    I4
-ISDynamicFile  Component_      SourceFolder
+Component_     SourceFolder    IncludeFlags    IncludeFiles    ExcludeFiles    
ISAttributes
+s72    s255    I2      S255    S255    I4
+ISDynamicFile  Component_      SourceFolder

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISFeatureMergeModules.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISFeatureMergeModules.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISFeatureMergeModules.idt 
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Feature_       ISMergeModule_  Language_
-s38    s255    i2
-ISFeatureMergeModules  Feature_        ISMergeModule_  Language_
+Feature_       ISMergeModule_  Language_
+s38    s255    i2
+ISFeatureMergeModules  Feature_        ISMergeModule_  Language_

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISInstallScriptAction.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISInstallScriptAction.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISInstallScriptAction.idt 
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-EntryPoint     Type    Source  Target
-s72    I4      s72     S255
-ISInstallScriptAction  EntryPoint
+EntryPoint     Type    Source  Target
+s72    I4      s72     S255
+ISInstallScriptAction  EntryPoint

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLanguage.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLanguage.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLanguage.idt    Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-ISLanguage     Included
-s50    I2
-ISLanguage     ISLanguage
-1033   1
+ISLanguage     Included
+s50    I2
+ISLanguage     ISLanguage
+1033   1

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLinkerLibrary.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLinkerLibrary.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLinkerLibrary.idt       
Fri Jul 16 09:27:17 2004
@@ -1,6 +1,6 @@
-ISLinkerLibrary        Library Order
-s72    s255    i4
-ISLinkerLibrary        ISLinkerLibrary
-_IfxObl        <ISProductFolder>\Script\ifx\Lib\ifx.obl        3
-_IsrtObl       <ISProductFolder>\Script\ISRT\Lib\isrt.obl      2
-_IswiObl       <ISProductFolder>\Script\ISWi\Lib\iswi.obl      1
+ISLinkerLibrary        Library Order
+s72    s255    i4
+ISLinkerLibrary        ISLinkerLibrary
+_IfxObl        <ISProductFolder>\Script\ifx\Lib\ifx.obl        3
+_IsrtObl       <ISProductFolder>\Script\ISRT\Lib\isrt.obl      2
+_IswiObl       <ISProductFolder>\Script\ISWi\Lib\iswi.obl      1

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalControl.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalControl.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalControl.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Dialog_        Control_        ISLanguage_     Attributes      X       Y       
Width   Height  Binary_ ISBuildSourcePath
-s72    s50     s50     I4      I2      I2      I2      I2      S50     S255
-ISLocalControl Dialog_ Control_        ISLanguage_
+Dialog_        Control_        ISLanguage_     Attributes      X       Y       
Width   Height  Binary_ ISBuildSourcePath
+s72    s50     s50     I4      I2      I2      I2      I2      S50     S255
+ISLocalControl Dialog_ Control_        ISLanguage_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalDialog.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalDialog.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLocalDialog.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Dialog_        ISLanguage_     Attributes      TextStyle_      Width   Height
-S50    S50     I4      S72     i2      i2
-ISLocalDialog  Dialog_ ISLanguage_
+Dialog_        ISLanguage_     Attributes      TextStyle_      Width   Height
+S50    S50     I4      S72     i2      i2
+ISLocalDialog  Dialog_ ISLanguage_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDisk.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDisk.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDisk.idt Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-DiskId ISProductConfiguration_ ISRelease_      LastSequence    DiskPrompt      
Cabinet VolumeLabel     Source
-i2     s255    s255    i2      L64     S255    S32     S32
-ISLogicalDisk  DiskId  ISProductConfiguration_ ISRelease_
-1      mod_aspdotnet   x86-winnt       0                               
+DiskId ISProductConfiguration_ ISRelease_      LastSequence    DiskPrompt      
Cabinet VolumeLabel     Source
+i2     s255    s255    i2      L64     S255    S32     S32
+ISLogicalDisk  DiskId  ISProductConfiguration_ ISRelease_
+1      mod_aspdotnet   x86-winnt       0                               

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDiskFeatures.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDiskFeatures.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISLogicalDiskFeatures.idt 
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISLogicalDisk_ ISProductConfiguration_ ISRelease_      Feature_        
Sequence        ISAttributes
-i2     s255    s255    S38     i2      I4
-ISLogicalDiskFeatures  ISLogicalDisk_  ISProductConfiguration_ ISRelease_      
Feature_
+ISLogicalDisk_ ISProductConfiguration_ ISRelease_      Feature_        
Sequence        ISAttributes
+i2     s255    s255    S38     i2      I4
+ISLogicalDiskFeatures  ISLogicalDisk_  ISProductConfiguration_ ISRelease_      
Feature_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISMergeModule.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISMergeModule.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISMergeModule.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISMergeModule  Language        Name    Destination
-s255   i2      s255    S255
-ISMergeModule  ISMergeModule   Language
+ISMergeModule  Language        Name    Destination
+s255   i2      s255    S255
+ISMergeModule  ISMergeModule   Language

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObject.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObject.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObject.idt      Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ObjectName     Language
-s50    s15
-ISObject       ObjectName
+ObjectName     Language
+s50    s15
+ISObject       ObjectName

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObjectProperty.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObjectProperty.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISObjectProperty.idt      
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ObjectName     Property        Value   IncludeInBuild
-S50    S50     S0      I2
-ISObjectProperty       ObjectName      Property
+ObjectName     Property        Value   IncludeInBuild
+S50    S50     S0      I2
+ISObjectProperty       ObjectName      Property

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISPathVariable.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISPathVariable.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISPathVariable.idt        
Fri Jul 16 09:27:17 2004
@@ -1,13 +1,13 @@
-ISPathVariable Value   TestValue       Type
-s32    S255    S255    i4
-ISPathVariable ISPathVariable
-Apache.Web     Apache.Web\Apache.Web.vcproj            2
-CommonFilesFolder                      1
-ISProductFolder                        1
-ISProjectDataFolder                    1
-ISProjectFolder                        1
-mod_aspdotnet  mod\mod_aspdotnet.vcproj                2
-Objects        Release         2
-ProgramFilesFolder                     1
-SystemFolder                   1
-WindowsFolder                  1
+ISPathVariable Value   TestValue       Type
+s32    S255    S255    i4
+ISPathVariable ISPathVariable
+Apache.Web     Apache.Web\Apache.Web.vcproj            2
+CommonFilesFolder                      1
+ISProductFolder                        1
+ISProjectDataFolder                    1
+ISProjectFolder                        1
+mod_aspdotnet  mod\mod_aspdotnet.vcproj                2
+Objects        Release         2
+ProgramFilesFolder                     1
+SystemFolder                   1
+WindowsFolder                  1

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfiguration.idt
==============================================================================
--- 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfiguration.idt    
    (original)
+++ 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfiguration.idt    
    Fri Jul 16 09:27:17 2004
@@ -1,5 +1,5 @@
-ISProductConfiguration ProductConfigurationFlags       GeneratePackageCode
-s72    S255    I4
-ISProductConfiguration ISProductConfiguration
-Default Configuration          0
-mod_aspdotnet          0
+ISProductConfiguration ProductConfigurationFlags       GeneratePackageCode
+s72    S255    I4
+ISProductConfiguration ISProductConfiguration
+Default Configuration          0
+mod_aspdotnet          0

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfigurationProperty.idt
==============================================================================
--- 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfigurationProperty.idt
        (original)
+++ 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISProductConfigurationProperty.idt
        Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISProductConfiguration_        Property        Value
-s72    s72     L255
-ISProductConfigurationProperty ISProductConfiguration_ Property
+ISProductConfiguration_        Property        Value
+s72    s72     L255
+ISProductConfigurationProperty ISProductConfiguration_ Property

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISRelease.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISRelease.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISRelease.idt     Fri Jul 
16 09:27:17 2004
@@ -1,6 +1,6 @@
-ISRelease      ISProductConfiguration_ BuildLocation   PackageName     Type    
SupportedLanguagesUI    MsiSourceType   ReleaseType     Platforms       
SupportedLanguagesData  DefaultLanguage SupportedOSs    DiskSize        
DiskSizeUnit    DiskClusterSize ReleaseFlags    DiskSpanning    SynchMsi        
MediaLocation   URLLocation     DigitalURL      DigitalPVK      DigitalSPC      
Password        VersionCopyright        Attributes      CDBrowser       
DotNetBuildConfiguration        MsiCommandLine
-s72    s72     s255    s255    i4      s255    i4      i4      s72     S255    
s6      i4      s50     i4      i4      S255    i4      S255    s255    S255    
S255    S255    S255    S255    S255    i4      S255    S255    S255
-ISRelease      ISRelease       ISProductConfiguration_
-Debug  Default Configuration   <ISProjectFolder>\Debug PackageName     1       
1033    2       2       Intel           1033    3       0       0       0       
        0               MediaLocation           http://                         
        75789                   
-Release        Default Configuration   <ISProjectFolder>\Release       
PackageName     1       1033    2       2       Intel           1033    3       
0       0       0               0               MediaLocation           http:// 
                                75789                   
-x86-winnt      mod_aspdotnet   <ISProjectFolder>\Release       PackageName     
1       1033    2       1       Intel           1033    0       0       1       
0               0               MediaLocation           http://                 
                139276                  
+ISRelease      ISProductConfiguration_ BuildLocation   PackageName     Type    
SupportedLanguagesUI    MsiSourceType   ReleaseType     Platforms       
SupportedLanguagesData  DefaultLanguage SupportedOSs    DiskSize        
DiskSizeUnit    DiskClusterSize ReleaseFlags    DiskSpanning    SynchMsi        
MediaLocation   URLLocation     DigitalURL      DigitalPVK      DigitalSPC      
Password        VersionCopyright        Attributes      CDBrowser       
DotNetBuildConfiguration        MsiCommandLine
+s72    s72     s255    s255    i4      s255    i4      i4      s72     S255    
s6      i4      s50     i4      i4      S255    i4      S255    s255    S255    
S255    S255    S255    S255    S255    i4      S255    S255    S255
+ISRelease      ISRelease       ISProductConfiguration_
+Debug  Default Configuration   <ISProjectFolder>\Debug PackageName     1       
1033    2       2       Intel           1033    3       0       0       0       
        0               MediaLocation           http://                         
        75789                   
+Release        Default Configuration   <ISProjectFolder>\Release       
PackageName     1       1033    2       2       Intel           1033    3       
0       0       0               0               MediaLocation           http:// 
                                75789                   
+x86-winnt      mod_aspdotnet   <ISProjectFolder>\Release       PackageName     
1       1033    2       1       Intel           1033    0       0       1       
0               0               MediaLocation           http://                 
                139276                  

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISReleaseExtended.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISReleaseExtended.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISReleaseExtended.idt     
Fri Jul 16 09:27:17 2004
@@ -1,7 +1,7 @@
-ISRelease_     ISProductConfiguration_ WebType WebURL  WebCabSize      
OneClickCabName OneClickHtmlName        WebLocalCachePath       EngineLocation  
Win9xMsiUrl     WinNTMsiUrl     ISEngineLocation        ISEngineURL     
OneClickTargetBrowser   DigitalCertificateIdNS  DigitalCertificateDBaseNS       
DigitalCertificatePasswordNS    DotNetRedistLocation    DotNetRedistURL
-s72    s72     I4      S255    I4      S255    S255    S255    I4      S255    
S255    I4      S255    I4      S255    S255    S255    I4      S255
-ISReleaseExtended      ISRelease_      ISProductConfiguration_
-.msi Installer mod_aspdotnet   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
-Debug  Default Configuration   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
-Release        Default Configuration   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
-x86-winnt      mod_aspdotnet   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
+ISRelease_     ISProductConfiguration_ WebType WebURL  WebCabSize      
OneClickCabName OneClickHtmlName        WebLocalCachePath       EngineLocation  
Win9xMsiUrl     WinNTMsiUrl     ISEngineLocation        ISEngineURL     
OneClickTargetBrowser   DigitalCertificateIdNS  DigitalCertificateDBaseNS       
DigitalCertificatePasswordNS    DotNetRedistLocation    DotNetRedistURL
+s72    s72     I4      S255    I4      S255    S255    S255    I4      S255    
S255    I4      S255    I4      S255    S255    S255    I4      S255
+ISReleaseExtended      ISRelease_      ISProductConfiguration_
+.msi Installer mod_aspdotnet   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
+Debug  Default Configuration   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
+Release        Default Configuration   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx
+x86-winnt      mod_aspdotnet   0       http:// 0       install install 
[WindowsFolder]Downloaded Installations 0       
http://www.installengine.com/Msiengine20        
http://www.installengine.com/Msiengine20        0       
http://www.installengine.com/cert02/isengine                                    
3       http://www.installengine.com/cert02/dotnetfx

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISScriptFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISScriptFile.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISScriptFile.idt  Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISScriptFile
-s255
-ISScriptFile   ISScriptFile
+ISScriptFile
+s255
+ISScriptFile   ISScriptFile

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSelfReg.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSelfReg.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSelfReg.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-FileKey        Cost    Order   CmdLine
-s72    I2      I2      S50
-ISSelfReg      FileKey
+FileKey        Cost    Order   CmdLine
+s72    I2      I2      S50
+ISSelfReg      FileKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSetupFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSetupFile.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISSetupFile.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ISSetupFile    FileName        Stream  Language        Splash  Path
-s72    S255    V0      S50     I2      S0
-ISSetupFile    ISSetupFile
+ISSetupFile    FileName        Stream  Language        Splash  Path
+s72    S255    V0      S50     I2      S0
+ISSetupFile    ISSetupFile

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISStorages.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISStorages.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISStorages.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Name   ISBuildSourcePath
-s72    S0
-ISStorages     Name
+Name   ISBuildSourcePath
+s72    S0
+ISStorages     Name

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISString.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISString.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISString.idt      Fri Jul 
16 09:27:17 2004
@@ -1,791 +1,791 @@
-ISString       ISLanguage_     Value   Encoded Comment TimeStamp
-s255   s50     S0      I2      S0      I4
-ISString       ISString        ISLanguage_
-COMPANY_NAME   1033    The Apache Software Foundation  0               
-1021924763
-COMPANY_URI    1033    http://httpd.apache.org/        0               
605450580
-DN_AlwaysInstall       1033    Always Install  0               -1021924763
-FEATURE_DESC   1033    Microsoft ASP.NET support module for Apache httpd Web 
Server    0               739664554
-FEATURE_NAME   1033    Apache mod_aspdotnet    0               605430132
-ID_STRING1     1033    No comment      0               0
-ID_STRING2     1033    The install path must be an installed Apache httpd Web 
Server path. [1] was not a valid path to Apache. 0               1687578668
-IDPROP_ARPCOMMENTS     1033    Your Comments   0               -1021924763
-IDPROP_ARPCONTACT      1033    Customer Support Department     0               
-1021924763
-IDPROP_ARPHELPLINK     1033    http://www.yourcompany.com/help 0               
-1021924763
-IDPROP_ARPHELPTELEPHONE        1033    1-555-555-4505  0               
-1021924763
-IDPROP_ARPURLINFOABOUT 1033    http://www.yourcompany.com      0               
-1021924763
-IDPROP_ARPURLUPDATEINFO        1033    http://www.yourcompany.com/updateinfo   
0               -1021924763
-IDPROP_EXPRESS_LAUNCH_CONDITION_COLOR  1033    The color settings of your 
system are not adequate for running [ProductName].   0               -1021924763
-IDPROP_EXPRESS_LAUNCH_CONDITION_OS     1033    The operating system is not 
adequate for running [ProductName]. 0               -1021924763
-IDPROP_EXPRESS_LAUNCH_CONDITION_PROCESSOR      1033    The processor is not 
adequate for running [ProductName].        0               -1021924763
-IDPROP_EXPRESS_LAUNCH_CONDITION_RAM    1033    The amount of RAM is not 
adequate for running [ProductName].    0               -1021924763
-IDPROP_EXPRESS_LAUNCH_CONDITION_SCREEN 1033    The screen resolution is not 
adequate for running [ProductName].        0               -1021924763
-IDPROP_SETUPTYPE_COMPACT       1033    Compact 0               -1021924763
-IDPROP_SETUPTYPE_COMPACT_DESC  1033    Compact Description     0               
-1021924763
-IDPROP_SETUPTYPE_CUSTOM        1033    Custom  0               -1021924763
-IDPROP_SETUPTYPE_CUSTOM_DESC   1033    Custom Description      0               
-1021924763
-IDPROP_SETUPTYPE_TYPICAL       1033    Typical 0               -1021924763
-IDPROP_SETUPTYPE_TYPICAL_DESC  1033    Typical Description     0               
-1021924763
-IDS__AgreeToLicense_0  1033    I &do not accept the terms in the license 
agreement     0               -1021924763
-IDS__AgreeToLicense_1  1033    I &accept the terms in the license agreement    
0               -1021924763
-IDS__DatabaseFolder_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__DatabaseFolder_1  1033    Cancel  0               -1021924763
-IDS__DatabaseFolder_10 1033    Install [ProductName] database to:      0       
        -1021924763
-IDS__DatabaseFolder_11 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__DatabaseFolder_12 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
-IDS__DatabaseFolder_2  1033    InstallShield   0               -1021924763
-IDS__DatabaseFolder_3  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__DatabaseFolder_4  1033    Click Next to install to this folder, or click 
Change to install to a different folder. 0               -1021924763
-IDS__DatabaseFolder_5  1033    {&MSSansBold8}Database Folder   0               
-1021924763
-IDS__DatabaseFolder_6  1033    < &Back 0               -1021924763
-IDS__DatabaseFolder_7  1033    &Next > 0               -1021924763
-IDS__DatabaseFolder_8  1033    &Change...      0               -1021924763
-IDS__DatabaseFolder_9  1033    [DATABASEDIR]   0               -1021924763
-IDS__DestinationFolder_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__DestinationFolder_1       1033    Cancel  0               -1021924763
-IDS__DestinationFolder_10      1033    Install [ProductName] to:       0       
        -1021924763
-IDS__DestinationFolder_11      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__DestinationFolder_12      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
-IDS__DestinationFolder_2       1033    InstallShield   0               
-1021924763
-IDS__DestinationFolder_3       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__DestinationFolder_4       1033    Click Next to install to this folder, 
or click Change to install to a different folder. 0               -1021924763
-IDS__DestinationFolder_5       1033    {&MSSansBold8}Destination Folder        
0               -1021924763
-IDS__DestinationFolder_6       1033    < &Back 0               -1021924763
-IDS__DestinationFolder_7       1033    &Next > 0               -1021924763
-IDS__DestinationFolder_8       1033    &Change...      0               
-1021924763
-IDS__DestinationFolder_9       1033    [INSTALLDIR]    0               
-1021924763
-IDS__DisplayName_Custom        1033    Custom  0               -1021924763
-IDS__DisplayName_Minimal       1033    Minimal 0               -1021924763
-IDS__DisplayName_Typical       1033    Typical 0               -1021924763
-IDS__IsAdminInstallBrowse_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsAdminInstallBrowse_1    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsAdminInstallBrowse_10   1033    OK      0               -1021924763
-IDS__IsAdminInstallBrowse_11   1033            0               -1021924763
-IDS__IsAdminInstallBrowse_12   1033    &Folder name:   0               
-1021924763
-IDS__IsAdminInstallBrowse_13   1033    Up one level|   0               
-1021924763
-IDS__IsAdminInstallBrowse_14   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsAdminInstallBrowse_15   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\New.ibd    0               -1021924763
-IDS__IsAdminInstallBrowse_16   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Up.ibd     0               -1021924763
-IDS__IsAdminInstallBrowse_2    1033    InstallShield   0               
-1021924763
-IDS__IsAdminInstallBrowse_3    1033    Cancel  0               -1021924763
-IDS__IsAdminInstallBrowse_4    1033            0               -1021924763
-IDS__IsAdminInstallBrowse_5    1033    &Look in:       0               
-1021924763
-IDS__IsAdminInstallBrowse_6    1033    Browse to the destination folder.       
0               -1021924763
-IDS__IsAdminInstallBrowse_7    1033    {&MSSansBold8}Change Current 
Destination Folder 0               -1021924763
-IDS__IsAdminInstallBrowse_8    1033            0               -1021924763
-IDS__IsAdminInstallBrowse_9    1033    Create new folder|      0               
-1021924763
-IDS__IsAdminInstallPoint_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsAdminInstallPoint_1     1033    < &Back 0               -1021924763
-IDS__IsAdminInstallPoint_10    1033    &Network location:      0               
-1021924763
-IDS__IsAdminInstallPoint_11    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsAdminInstallPoint_2     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsAdminInstallPoint_3     1033    InstallShield   0               
-1021924763
-IDS__IsAdminInstallPoint_4     1033    &Change...      0               
-1021924763
-IDS__IsAdminInstallPoint_5     1033    Cancel  0               -1021924763
-IDS__IsAdminInstallPoint_6     1033    Specify a network location for the 
server image of the product. 0               -1021924763
-IDS__IsAdminInstallPoint_7     1033    Enter the network location or click 
Change to browse to a location.  Click Install to create a server image of 
[ProductName] at the specified network location or click Cancel to exit the 
wizard.      0               -1021924763
-IDS__IsAdminInstallPoint_8     1033    {&MSSansBold8}Network Location  0       
        -1021924763
-IDS__IsAdminInstallPoint_9     1033    &Install        0               
-1021924763
-IDS__IsAdminInstallPointWelcome_0      1033    [ProductName] - InstallShield 
Wizard    0               -1021924763
-IDS__IsAdminInstallPointWelcome_1      1033    < &Back 0               
-1021924763
-IDS__IsAdminInstallPointWelcome_2      1033    Cancel  0               
-1021924763
-IDS__IsAdminInstallPointWelcome_3      1033    &Next > 0               
-1021924763
-IDS__IsAdminInstallPointWelcome_4      1033    {&TahomaBold10}Welcome to the 
InstallShield Wizard for [ProductName]    0               -1021924763
-IDS__IsAdminInstallPointWelcome_5      1033    The InstallShield(R) Wizard 
will create a server image of [ProductName] at a specified network location. To 
continue, click Next.       0               -1021924763
-IDS__IsAdminInstallPointWelcome_6      1033    
<ISProductFolder>\Redist\Language Independent\OS Independent\IsDialogBitmap.ibd 
0               -1021924763
-IDS__IsBitmapDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsBitmapDlg_1     1033    < &Back 0               -1021924763
-IDS__IsBitmapDlg_2     1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsBitmapDlg_3     1033    InstallShield   0               -1021924763
-IDS__IsBitmapDlg_4     1033    Cancel  0               -1021924763
-IDS__IsBitmapDlg_5     1033    &Next > 0               -1021924763
-IDS__IsBitmapDlg_6     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsBrowseFolderDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsBrowseFolderDlg_1       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsBrowseFolderDlg_10      1033    OK      0               -1021924763
-IDS__IsBrowseFolderDlg_11      1033            0               -1021924763
-IDS__IsBrowseFolderDlg_12      1033    &Folder name:   0               
-1021924763
-IDS__IsBrowseFolderDlg_13      1033    Up One Level|   0               
-1021924763
-IDS__IsBrowseFolderDlg_14      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsBrowseFolderDlg_15      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\New.ibd    0               -1021924763
-IDS__IsBrowseFolderDlg_16      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Up.ibd     0               -1021924763
-IDS__IsBrowseFolderDlg_2       1033    InstallShield   0               
-1021924763
-IDS__IsBrowseFolderDlg_3       1033    Cancel  0               -1021924763
-IDS__IsBrowseFolderDlg_4       1033            0               -1021924763
-IDS__IsBrowseFolderDlg_5       1033    &Look in:       0               
-1021924763
-IDS__IsBrowseFolderDlg_6       1033    Browse to the destination folder.       
0               -1021924763
-IDS__IsBrowseFolderDlg_7       1033    {&MSSansBold8}Change Current 
Destination Folder 0               -1021924763
-IDS__IsBrowseFolderDlg_8       1033            0               -1021924763
-IDS__IsBrowseFolderDlg_9       1033    Create New Folder|      0               
-1021924763
-IDS__IsCancelDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsCancelDlg_1     1033    Information icon|       0               
-1021924763
-IDS__IsCancelDlg_2     1033    InstallShield   0               -1021924763
-IDS__IsCancelDlg_3     1033    Are you sure you want to cancel the 
installation?       0               -1021924763
-IDS__IsCancelDlg_4     1033    Are you sure you want to cancel [ProductName] 
installation?     0               -1021924763
-IDS__IsCancelDlg_5     1033    {&MSSansBold8}Cancel Setup      0               
-1021924763
-IDS__IsCancelDlg_6     1033    &No     0               -1021924763
-IDS__IsCancelDlg_7     1033    To continue installing [ProductName], click 
Resume. To exit the installation, click Exit.       0               -1021924763
-IDS__IsCancelDlg_8     1033    &Yes    0               -1021924763
-IDS__IsCancelDlg_9     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\WarningIcon.ibd    0               -1021924763
-IDS__IsCustomSelectionDlg_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsCustomSelectionDlg_1    1033    < &Back 0               -1021924763
-IDS__IsCustomSelectionDlg_10   1033    Feature Description:    0               
-1021924763
-IDS__IsCustomSelectionDlg_11   1033    &Next > 0               -1021924763
-IDS__IsCustomSelectionDlg_12   1033    Feature size    0               
-1021924763
-IDS__IsCustomSelectionDlg_13   1033    &Help   0               -1021924763
-IDS__IsCustomSelectionDlg_14   1033    Multiline description of the currently 
selected item    0               -1021924763
-IDS__IsCustomSelectionDlg_15   1033    Feature Description     0               
-1021924763
-IDS__IsCustomSelectionDlg_16   1033    &Change...      0               
-1021924763
-IDS__IsCustomSelectionDlg_17   1033    <selected feature path> 0               
-1021924763
-IDS__IsCustomSelectionDlg_18   1033    Install to:     0               
-1021924763
-IDS__IsCustomSelectionDlg_19   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsCustomSelectionDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsCustomSelectionDlg_3    1033    InstallShield   0               
-1021924763
-IDS__IsCustomSelectionDlg_4    1033    Cancel  0               -1021924763
-IDS__IsCustomSelectionDlg_5    1033    &Space  0               -1021924763
-IDS__IsCustomSelectionDlg_6    1033    Select the program features you want 
installed. 0               -1021924763
-IDS__IsCustomSelectionDlg_7    1033    Click on an icon in the list below to 
change how a feature is installed.        0               -1021924763
-IDS__IsCustomSelectionDlg_8    1033    {&MSSansBold8}Custom Setup      0       
        -1021924763
-IDS__IsCustomSelectionDlg_9    1033    Multiline description of the currently 
selected item    0               -1021924763
-IDS__IsDatabaseLocation_1      1033    InstallShield   0               
-1021924763
-IDS__IsDatabaseLocation_10     1033    [DATABASEDIR]   0               
-1021924763
-IDS__IsDatabaseLocation_11     1033    Install Application Database to:        
0               -1021924763
-IDS__IsDatabaseLocation_12     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsDatabaseLocation_13     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsDatabaseLocation_2      1033    2       0               -1021924763
-IDS__IsDatabaseLocation_3      1033    Cancel  0               -1021924763
-IDS__IsDatabaseLocation_4      1033    4       0               -1021924763
-IDS__IsDatabaseLocation_5      1033    Click next to install the application's 
database to this folder, or click change to install it to a different folder.   
0               -1021924763
-IDS__IsDatabaseLocation_6      1033    {&MSSansBold8}Database Destination 
Folder       0               -1021924763
-IDS__IsDatabaseLocation_7      1033    < &Back 0               -1021924763
-IDS__IsDatabaseLocation_8      1033    &Next > 0               -1021924763
-IDS__IsDatabaseLocation_9      1033    &Change...      0               
-1021924763
-IDS__IsDiskSpaceDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsDiskSpaceDlg_1  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsDiskSpaceDlg_10 1033    OK      0               -1021924763
-IDS__IsDiskSpaceDlg_11 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsDiskSpaceDlg_2  1033    InstallShield   0               -1021924763
-IDS__IsDiskSpaceDlg_3  1033    &Disk Cleanup   0               -1021924763
-IDS__IsDiskSpaceDlg_4  1033    Disk space required for the installation 
exceeds available disk space.  0               -1021924763
-IDS__IsDiskSpaceDlg_5  1033    The highlighted volumes do not have enough disk 
space available for the currently selected features. You can remove files from 
the highlighted volumes, choose to install less features onto local drives, or 
select different destination drives.      0               -1021924763
-IDS__IsDiskSpaceDlg_6  1033    {&MSSansBold8}Out of Disk Space 0               
-1021924763
-IDS__IsDiskSpaceDlg_7  1033    &Exit   0               -1021924763
-IDS__IsDiskSpaceDlg_8  1033    Use disk cleanup to free more disk space by 
removing unneeded files.    0               -1021924763
-IDS__IsDiskSpaceDlg_9  1033    {120}{70}{70}{70}{70}   0               
-1021924763
-IDS__IsErrorDlg_0      1033    [ProductName] Installer Information     0       
        -1021924763
-IDS__IsErrorDlg_1      1033    &Abort  0               -1021924763
-IDS__IsErrorDlg_2      1033    &Cancel 0               -1021924763
-IDS__IsErrorDlg_3      1033    <error text goes here><error text goes 
here><error text goes here><error text goes here><error text goes here><error 
text goes here><error text goes here><error text goes here><error text goes 
here><error text goes here><error text goes here>      0               
-1021924763
-IDS__IsErrorDlg_4      1033    &Ignore 0               -1021924763
-IDS__IsErrorDlg_5      1033    &No     0               -1021924763
-IDS__IsErrorDlg_6      1033    &OK     0               -1021924763
-IDS__IsErrorDlg_7      1033    &Retry  0               -1021924763
-IDS__IsErrorDlg_8      1033    &Yes    0               -1021924763
-IDS__IsErrorDlg_9      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\WarningIcon.ibd    0               -1021924763
-IDS__IsExitDialog_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsExitDialog_1    1033    < &Back 0               -1021924763
-IDS__IsExitDialog_2    1033    Cancel  0               -1021924763
-IDS__IsExitDialog_3    1033    &Finish 0               -1021924763
-IDS__IsExitDialog_4    1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
-IDS__IsExitDialog_5    1033    The InstallShield Wizard has successfully 
installed [ProductName]. Click Finish to exit the wizard.     0               
-1021924763
-IDS__IsExitDialog_6    1033    The InstallShield Wizard has successfully 
uninstalled [ProductName]. Click Finish to exit the wizard.   0               
-1021924763
-IDS__IsExitDialog_7    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsExitDialog_8    1033    Show the readme file    0               
-1021924763
-IDS__IsExitDialog_9    1033    Launch the program      0               
-1021924763
-IDS__IsExitDialog_Update_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsExitDialog_Update_1     1033    < &Back 0               -1021924763
-IDS__IsExitDialog_Update_2     1033    Cancel  0               -1021924763
-IDS__IsExitDialog_Update_3     1033    &Finish 0               -1021924763
-IDS__IsExitDialog_Update_4     1033    Setup has finished installing 
[ProductName].    0               -1021924763
-IDS__IsExitDialog_Update_5     1033    Some program files might have been 
updated since you purchased your copy of [ProductName].      0               
-1021924763
-IDS__IsExitDialog_Update_6     1033    Your Internet connection can be used to 
make sure that you have the latest updates.     0               -1021924763
-IDS__IsExitDialog_Update_7     1033    &Yes, check for program updates 
(Recommended) after the setup completes.        0               -1021924763
-IDS__IsFatalError_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsFatalError_1    1033    < &Back 0               -1021924763
-IDS__IsFatalError_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsFatalError_2    1033    Cancel  0               -1021924763
-IDS__IsFatalError_3    1033    &Finish 0               -1021924763
-IDS__IsFatalError_4    1033    Your system has not been modified. To complete 
installation at another time, please run setup again.    0               
-1021924763
-IDS__IsFatalError_5    1033    Click Finish to exit the wizard.        0       
        -1021924763
-IDS__IsFatalError_6    1033    You can either keep any existing installed 
elements on your system to continue this installation at a later time or you 
can restore your system to its original state prior to the installation.        
0               -1021924763
-IDS__IsFatalError_7    1033    Click Restore or Continue Later to exit the 
wizard.     0               -1021924763
-IDS__IsFatalError_8    1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
-IDS__IsFatalError_9    1033    The wizard was interrupted before [ProductName] 
could be completely installed.  0               -1021924763
-IDS__IsFeatureDetailsDlg_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsFeatureDetailsDlg_1     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsFeatureDetailsDlg_10    1033    Use disk cleanup to free more disk 
space by removing unneeded files.    0               -1021924763
-IDS__IsFeatureDetailsDlg_11    1033    Install to:     0               
-1021924763
-IDS__IsFeatureDetailsDlg_12    1033    Total disk space required:      0       
        -1021924763
-IDS__IsFeatureDetailsDlg_13    1033    {120}{70}{70}{70}{70}   0               
-1021924763
-IDS__IsFeatureDetailsDlg_14    1033    OK      0               -1021924763
-IDS__IsFeatureDetailsDlg_15    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsFeatureDetailsDlg_2     1033    InstallShield   0               
-1021924763
-IDS__IsFeatureDetailsDlg_3     1033    &Change...      0               
-1021924763
-IDS__IsFeatureDetailsDlg_4     1033    Cancel  0               -1021924763
-IDS__IsFeatureDetailsDlg_5     1033    &Disk Cleanup   0               
-1021924763
-IDS__IsFeatureDetailsDlg_6     1033    The disk space required for the 
installation of the selected features.  0               -1021924763
-IDS__IsFeatureDetailsDlg_7     1033    The highlighted volumes do not have 
enough disk space available for the currently selected features. You can remove 
files from the highlighted volumes, choose to install less features onto local 
drives, or select different destination drives.      0               -1021924763
-IDS__IsFeatureDetailsDlg_8     1033    {&MSSansBold8}Disk Space Requirements   
0               -1021924763
-IDS__IsFeatureDetailsDlg_9     1033            0               -1021924763
-IDS__IsFilesInUse_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsFilesInUse_1    1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsFilesInUse_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsFilesInUse_2    1033    InstallShield   0               -1021924763
-IDS__IsFilesInUse_3    1033    Some files that need to be updated are 
currently in use.        0               -1021924763
-IDS__IsFilesInUse_4    1033    The following applications are using files that 
need to be updated by this setup. Close these applications and click Retry to 
continue. 0               -1021924763
-IDS__IsFilesInUse_5    1033    {&MSSansBold8}Files in Use      0               
-1021924763
-IDS__IsFilesInUse_6    1033    &Exit   0               -1021924763
-IDS__IsFilesInUse_7    1033    &Ignore 0               -1021924763
-IDS__IsFilesInUse_8    1033    &Retry  0               -1021924763
-IDS__IsFilesInUse_9    1033            0               -1021924763
-IDS__IsInitDlg_0       1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsInitDlg_1       1033            0               -1021924763
-IDS__IsInitDlg_2       1033            0               -1021924763
-IDS__IsInitDlg_3       1033    < &Back 0               -1021924763
-IDS__IsInitDlg_4       1033    Cancel  0               -1021924763
-IDS__IsInitDlg_5       1033    &Next > 0               -1021924763
-IDS__IsInitDlg_6       1033    {&TahomaBold10}Welcome to the InstallShield 
Wizard for [ProductName]    0               -1021924763
-IDS__IsInitDlg_7       1033    [ProductName] Setup is preparing the 
InstallShield Wizard which will guide you through the program setup process.  
Please wait. 0               -1021924763
-IDS__IsInitDlg_8       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsLicenseDlg_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsLicenseDlg_1    1033    < &Back 0               -1021924763
-IDS__IsLicenseDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsLicenseDlg_3    1033    InstallShield   0               -1021924763
-IDS__IsLicenseDlg_4    1033    Cancel  0               -1021924763
-IDS__IsLicenseDlg_5    1033    Please read the following license agreement 
carefully.  0               -1021924763
-IDS__IsLicenseDlg_6    1033    Click Accept to accept the terms of this 
agreement, or click Decline to exit the wizard.        0               
-1021924763
-IDS__IsLicenseDlg_7    1033    {&MSSansBold8}License Agreement 0               
-1021924763
-IDS__IsLicenseDlg_8    1033    &Next > 0               -1021924763
-IDS__IsLicenseDlg_9    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsLicenseDlg_EULA 1033    <ISProductFolder>\Redist\0409\Eula.rtf  0       
        -1021924763
-IDS__IsMaintenanceDlg_0        1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsMaintenanceDlg_1        1033    < &Back 0               -1021924763
-IDS__IsMaintenanceDlg_10       1033    {&MSSansBold8}&Remove   0               
-1021924763
-IDS__IsMaintenanceDlg_11       1033            0               -1021924763
-IDS__IsMaintenanceDlg_12       1033    Change which program features are 
installed. This option displays the Custom Selection dialog in which you can 
change the way features are installed.   0               -1021924763
-IDS__IsMaintenanceDlg_13       1033    Repair installation errors in the 
program. This option fixes missing or corrupt files, shortcuts, and registry 
entries. 0               -1021924763
-IDS__IsMaintenanceDlg_14       1033    Remove [ProductName] from your 
computer.        0               -1021924763
-IDS__IsMaintenanceDlg_15       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsMaintenanceDlg_16       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\RemoveIco.ibd      0               -1021924763
-IDS__IsMaintenanceDlg_17       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\ReinstIco.ibd      0               -1021924763
-IDS__IsMaintenanceDlg_18       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
-IDS__IsMaintenanceDlg_2        1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsMaintenanceDlg_3        1033    InstallShield   0               
-1021924763
-IDS__IsMaintenanceDlg_4        1033    Cancel  0               -1021924763
-IDS__IsMaintenanceDlg_5        1033    Modify, repair, or remove the program.  
0               -1021924763
-IDS__IsMaintenanceDlg_6        1033    {&MSSansBold8}Program Maintenance       
0               -1021924763
-IDS__IsMaintenanceDlg_7        1033    &Next > 0               -1021924763
-IDS__IsMaintenanceDlg_8        1033    {&MSSansBold8}&Modify   0               
-1021924763
-IDS__IsMaintenanceDlg_9        1033    {&MSSansBold8}Re&pair   0               
-1021924763
-IDS__IsMaintenanceWelcome_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsMaintenanceWelcome_1    1033    < &Back 0               -1021924763
-IDS__IsMaintenanceWelcome_2    1033    Cancel  0               -1021924763
-IDS__IsMaintenanceWelcome_3    1033    &Next > 0               -1021924763
-IDS__IsMaintenanceWelcome_4    1033    {&TahomaBold10}Welcome to the 
InstallShield Wizard for [ProductName]    0               -1021924763
-IDS__IsMaintenanceWelcome_5    1033    The InstallShield(R) Wizard will allow 
you to modify, repair, or remove [ProductName]. To continue, click Next. 0      
         -1021924763
-IDS__IsMaintenanceWelcome_6    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsPatchDlg_0      1033    [ProductName] Patch - InstallShield Wizard      
0               -1021924763
-IDS__IsPatchDlg_1      1033    {&TahomaBold10}Welcome to the Patch for 
[ProductName]   0               -1021924763
-IDS__IsPatchDlg_2      1033    The InstallShield(R) Wizard will install the 
Patch for [ProductName] on your computer.  To continue, click Update.      0    
           -1021924763
-IDS__IsPatchDlg_3      1033    Cancel  0               -1021924763
-IDS__IsPatchDlg_4      1033    < &Back 0               -1021924763
-IDS__IsPatchDlg_5      1033    &Update >       0               -1021924763
-IDS__IsPatchDlg_6      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsProgressDlg_0   1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsProgressDlg_1   1033    Progress done   0               -1021924763
-IDS__IsProgressDlg_10  1033    (Hidden for now)Sec.    0               
-1021924763
-IDS__IsProgressDlg_11  1033    Status: 0               -1021924763
-IDS__IsProgressDlg_12  1033    &Next > 0               -1021924763
-IDS__IsProgressDlg_13  1033    (Hidden for now)        0               
-1021924763
-IDS__IsProgressDlg_14  1033    )Hidden for now)Estimated time remaining:       
0               -1021924763
-IDS__IsProgressDlg_15  1033    {&MSSansBold8}Uninstalling [ProductName]        
0               -1021924763
-IDS__IsProgressDlg_16  1033    The program features you selected are being 
uninstalled.        0               -1021924763
-IDS__IsProgressDlg_17  1033    Please wait while the InstallShield Wizard 
uninstalls [ProductName]. This may take several minutes.     0               
-1021924763
-IDS__IsProgressDlg_18  1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\SetupIcon.ibd      0               -1021924763
-IDS__IsProgressDlg_19  1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsProgressDlg_2   1033            0               -1021924763
-IDS__IsProgressDlg_3   1033    < &Back 0               -1021924763
-IDS__IsProgressDlg_4   1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsProgressDlg_5   1033    InstallShield   0               -1021924763
-IDS__IsProgressDlg_6   1033    Cancel  0               -1021924763
-IDS__IsProgressDlg_7   1033    The program features you selected are being 
installed.  0               -1021924763
-IDS__IsProgressDlg_8   1033    Please wait while the InstallShield Wizard 
installs [ProductName]. This may take several minutes.       0               
-1021924763
-IDS__IsProgressDlg_9   1033    {&MSSansBold8}Installing [ProductName]  0       
        -1021924763
-IDS__IsReadmeDlg_0     1033    {&MSSansBold8}Readme Information        0       
        -1021924763
-IDS__IsReadmeDlg_1     1033    Please read the following readme information 
carefully. 0               -1021924763
-IDS__IsReadmeDlg_2     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsReadmeDlg_3     1033    < &Back 0               -1021924763
-IDS__IsReadmeDlg_4     1033    &Next > 0               -1021924763
-IDS__IsReadmeDlg_5     1033    &Cancel 0               -1021924763
-IDS__IsReadmeDlg_6     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsReadmeDlg_7     1033    InstallShield   0               -1021924763
-IDS__IsReadmeDlg_8     1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsRegisterUserDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsRegisterUserDlg_1       1033    < &Back 0               -1021924763
-IDS__IsRegisterUserDlg_10      1033    {\Tahoma8}{50}  0               
-1021924763
-IDS__IsRegisterUserDlg_11      1033    &User Name:     0               
-1021924763
-IDS__IsRegisterUserDlg_12      1033    &Next > 0               -1021924763
-IDS__IsRegisterUserDlg_13      1033    Install the help documentation for:     
0               -1021924763
-IDS__IsRegisterUserDlg_14      1033    &Anyone who uses this computer (all 
users)      0               -1021924763
-IDS__IsRegisterUserDlg_15      1033    Only for &me ([USERNAME])       0       
        -1021924763
-IDS__IsRegisterUserDlg_16      1033            0               -1021924763
-IDS__IsRegisterUserDlg_17      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsRegisterUserDlg_18      1033    &Serial Number: 0               
-1021924763
-IDS__IsRegisterUserDlg_19      1033    &Other...       0               
-602530036
-IDS__IsRegisterUserDlg_2       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsRegisterUserDlg_20      1033    Install [ProductName] to:       0       
        -602530036
-IDS__IsRegisterUserDlg_21      1033    WARNING: You must choose the Apache 
root directory above.  (This root contains the directories bin, htdocs, etc...) 
    0               -602534547
-IDS__IsRegisterUserDlg_3       1033    InstallShield   0               
-1021924763
-IDS__IsRegisterUserDlg_4       1033    Cancel  0               -1021924763
-IDS__IsRegisterUserDlg_5       1033    {\Tahoma8}{80}  0               
-1021924763
-IDS__IsRegisterUserDlg_6       1033    &Organization:  0               
-1021924763
-IDS__IsRegisterUserDlg_7       1033    The options below must correspond to 
your exiting Apache httpd Web Server installation. 0               -1021924763
-IDS__IsRegisterUserDlg_8       1033    Please enter your name and 
organization.        0               -1021924763
-IDS__IsRegisterUserDlg_9       1033    {&MSSansBold8}Installation Options      
0               -1021924763
-IDS__IsReinstallDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsReinstallDlg_1  1033    < &Back 0               -1021924763
-IDS__IsReinstallDlg_10 1033    &Complete       0               -1021924763
-IDS__IsReinstallDlg_11 1033            0               -1021924763
-IDS__IsReinstallDlg_12 1033    Replace all files whose versions differ from 
that required by the program and all registry entries and shortcuts required by 
the program.       0               -1021924763
-IDS__IsReinstallDlg_13 1033    Replace only missing program files and registry 
entries for installed features. 0               -1021924763
-IDS__IsReinstallDlg_14 1033    Replace all files, registry entries, and 
shortcuts required by the program.     0               -1021924763
-IDS__IsReinstallDlg_2  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsReinstallDlg_3  1033    InstallShield   0               -1021924763
-IDS__IsReinstallDlg_4  1033    Cancel  0               -1021924763
-IDS__IsReinstallDlg_5  1033    Select how you want the program elements 
reinstalled.   0               -1021924763
-IDS__IsReinstallDlg_6  1033    {&MSSansBold8}Reinstallation Mode       0       
        -1021924763
-IDS__IsReinstallDlg_7  1033    &Next > 0               -1021924763
-IDS__IsReinstallDlg_8  1033    No&rmal 0               -1021924763
-IDS__IsReinstallDlg_9  1033    &Minimal        0               -1021924763
-IDS__IsResumeDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsResumeDlg_1     1033    < &Back 0               -1021924763
-IDS__IsResumeDlg_2     1033    Cancel  0               -1021924763
-IDS__IsResumeDlg_3     1033    &Next > 0               -1021924763
-IDS__IsResumeDlg_4     1033    The InstallShield(R) Wizard will complete the 
installation of [ProductName] on your computer. To continue, click Next.  0     
          -1021924763
-IDS__IsResumeDlg_5     1033    The InstallShield(R) Wizard will complete the 
suspended installation of [ProductName] on your computer. To continue, click 
Next.        0               -1021924763
-IDS__IsResumeDlg_6     1033    {&TahomaBold10}Resuming the InstallShield 
Wizard for [ProductName]      0               -1021924763
-IDS__IsResumeDlg_7     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsSetupTypeMinDlg_1       1033    < &Back 0               -1021924763
-IDS__IsSetupTypeMinDlg_10      1033    &Next > 0               -1021924763
-IDS__IsSetupTypeMinDlg_11      1033    {&MSSansBold8}&Complete 0               
-1021924763
-IDS__IsSetupTypeMinDlg_12      1033    {&MSSansBold8}Cu&stom   0               
-1021924763
-IDS__IsSetupTypeMinDlg_13      1033            0               -1021924763
-IDS__IsSetupTypeMinDlg_14      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_15      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_16      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CompleteSetupIco.ibd       0               
-1021924763
-IDS__IsSetupTypeMinDlg_17      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
-IDS__IsSetupTypeMinDlg_18      1033    Minimum required features will be 
installed.    0               -1021924763
-IDS__IsSetupTypeMinDlg_19      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_2       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsSetupTypeMinDlg_20      1033    {&MSSansBold8}&Minimal  0               
-1021924763
-IDS__IsSetupTypeMinDlg_21      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_22      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CompleteSetupIco.ibd       0               
-1021924763
-IDS__IsSetupTypeMinDlg_23      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsSetupTypeMinDlg_24      1033    {&MSSansBold8}&Typical  0               
-1021924763
-IDS__IsSetupTypeMinDlg_3       1033    InstallShield   0               
-1021924763
-IDS__IsSetupTypeMinDlg_4       1033    Cancel  0               -1021924763
-IDS__IsSetupTypeMinDlg_5       1033    All program features will be installed. 
(Requires the most disk space.) 0               -1021924763
-IDS__IsSetupTypeMinDlg_6       1033    Choose which program features you want 
installed and where they will be installed. Recommended for advanced users.     
 0               -1021924763
-IDS__IsSetupTypeMinDlg_7       1033    Choose the setup type that best suits 
your needs.       0               -1021924763
-IDS__IsSetupTypeMinDlg_8       1033    Please select a setup type.     0       
        -1021924763
-IDS__IsSetupTypeMinDlg_9       1033    {&MSSansBold8}Setup Type        0       
        -1021924763
-IDS__IsStartCopyDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsStartCopyDlg_1  1033    < &Back 0               -1021924763
-IDS__IsStartCopyDlg_2  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS__IsStartCopyDlg_3  1033    InstallShield   0               -1021924763
-IDS__IsStartCopyDlg_4  1033    Cancel  0               -1021924763
-IDS__IsStartCopyDlg_5  1033    The wizard is ready to begin installation.      
0               -1021924763
-IDS__IsStartCopyDlg_6  1033    Click Next to begin the installation.   0       
        -1021924763
-IDS__IsStartCopyDlg_7  1033    If you want to review or change any of your 
installation settings, click Back. Click Cancel to exit the wizard. 0           
    -1021924763
-IDS__IsStartCopyDlg_8  1033    {&MSSansBold8}Ready to Install  0               
-1021924763
-IDS__IsStartCopyDlg_9  1033    &Next > 0               -1021924763
-IDS__IsUserExit_0      1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsUserExit_1      1033    < &Back 0               -1021924763
-IDS__IsUserExit_10     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsUserExit_2      1033    Cancel  0               -1021924763
-IDS__IsUserExit_3      1033    &Finish 0               -1021924763
-IDS__IsUserExit_4      1033    Your system has not been modified. To install 
this program at a later time, please run the installation again.  0             
  -1021924763
-IDS__IsUserExit_5      1033    Click Finish to exit the wizard.        0       
        -1021924763
-IDS__IsUserExit_6      1033    You can either keep any existing installed 
elements on your system to continue this installation at a later time or you 
can restore your system to its original state prior to the installation.        
0               -1021924763
-IDS__IsUserExit_7      1033    Click Restore or Continue Later to exit the 
wizard.     0               -1021924763
-IDS__IsUserExit_8      1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
-IDS__IsUserExit_9      1033    The wizard was interrupted before [ProductName] 
could be completely installed.  0               -1021924763
-IDS__IsVerifyReadyDlg_0        1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsVerifyReadyDlg_1        1033    < &Back 0               -1021924763
-IDS__IsVerifyReadyDlg_10       1033    {&MSSansBold8}Ready to Repair the 
Program       0               -1021924763
-IDS__IsVerifyReadyDlg_11       1033    {&MSSansBold8}Ready to Install the 
Program      0               -1021924763
-IDS__IsVerifyReadyDlg_12       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsVerifyReadyDlg_13       1033    Serial: [SERIALNUMBER]  0               
-1021924763
-IDS__IsVerifyReadyDlg_13X      1033    Serial: [ISX_SERIALNUM] 0               
-1021924763
-IDS__IsVerifyReadyDlg_14       1033    Company: [COMPANYNAME]  0               
-1021924763
-IDS__IsVerifyReadyDlg_15       1033    Name: [USERNAME]        0               
-1021924763
-IDS__IsVerifyReadyDlg_16       1033    User Information:       0               
-1021924763
-IDS__IsVerifyReadyDlg_17       1033    [INSTALLDIR]    0               
-1021924763
-IDS__IsVerifyReadyDlg_18       1033    Destination Folder:     0               
-1021924763
-IDS__IsVerifyReadyDlg_19       1033    [SelectedSetupType]     0               
-1021924763
-IDS__IsVerifyReadyDlg_2        1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsVerifyReadyDlg_20       1033    Setup Type:     0               
-1021924763
-IDS__IsVerifyReadyDlg_21       1033    Current Settings:       0               
-1021924763
-IDS__IsVerifyReadyDlg_22       1033    [ProductName] will be installed to 
[INSTALLDIR] 0               1553390316
-IDS__IsVerifyReadyDlg_3        1033    InstallShield   0               
-1021924763
-IDS__IsVerifyReadyDlg_4        1033    Cancel  0               -1021924763
-IDS__IsVerifyReadyDlg_5        1033    The wizard is ready to begin 
installation.      0               -1021924763
-IDS__IsVerifyReadyDlg_6        1033    Click Install to begin the 
installation.        0               -1021924763
-IDS__IsVerifyReadyDlg_7        1033    If you want to review or change any of 
your installation settings, click Back. Click Cancel to exit the wizard. 0      
         -1021924763
-IDS__IsVerifyReadyDlg_8        1033    {&MSSansBold8}Ready to Modify the 
Program       0               -1021924763
-IDS__IsVerifyReadyDlg_9        1033    &Install        0               
-1021924763
-IDS__IsVerifyRemoveAllDlg_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
-IDS__IsVerifyRemoveAllDlg_1    1033    < &Back 0               -1021924763
-IDS__IsVerifyRemoveAllDlg_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS__IsVerifyRemoveAllDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
-IDS__IsVerifyRemoveAllDlg_3    1033    InstallShield   0               
-1021924763
-IDS__IsVerifyRemoveAllDlg_4    1033    Cancel  0               -1021924763
-IDS__IsVerifyRemoveAllDlg_5    1033    You have chosen to remove the program 
from your system. 0               -1021924763
-IDS__IsVerifyRemoveAllDlg_6    1033    Click Remove to remove [ProductName] 
from your computer. After removal, this program will no longer be available for 
use.       0               -1021924763
-IDS__IsVerifyRemoveAllDlg_7    1033    If you want to review or change any 
settings, click Back.       0               -1021924763
-IDS__IsVerifyRemoveAllDlg_8    1033    {&MSSansBold8}Remove the Program        
0               -1021924763
-IDS__IsVerifyRemoveAllDlg_9    1033    &Remove 0               -1021924763
-IDS__IsWelcomeDlg_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__IsWelcomeDlg_1    1033    < &Back 0               -1021924763
-IDS__IsWelcomeDlg_2    1033    Cancel  0               -1021924763
-IDS__IsWelcomeDlg_3    1033    &Next > 0               -1021924763
-IDS__IsWelcomeDlg_4    1033    {&TahomaBold10}Welcome to the InstallShield 
Wizard for [ProductName]    0               -1021924763
-IDS__IsWelcomeDlg_5    1033    The InstallShield(R) Wizard will install 
[ProductName] on your computer. To continue, click Next.       0               
-1021924763
-IDS__IsWelcomeDlg_6    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
-IDS__IsWelcomeDlg_7    1033    WARNING: This program is protected by copyright 
law and international treaties. 0               -1021924763
-IDS__SetupTips_0       1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
-IDS__TargetReq_DESC_COLOR      1033    The color settings of your system are 
not adequate for running [ProductName].   0               -1021924763
-IDS__TargetReq_DESC_OS 1033    The operating system is not adequate for 
running [ProductName]. 0               -1021924763
-IDS__TargetReq_DESC_PROCESSOR  1033    The processor is not adequate for 
running [ProductName].        0               -1021924763
-IDS__TargetReq_DESC_RAM        1033    The amount of RAM is not adequate for 
running [ProductName].    0               -1021924763
-IDS__TargetReq_DESC_RESOLUTION 1033    The screen resolution is not adequate 
for running [ProductName].        0               -1021924763
-IDS_ACTIONTEXT_1       1033    Advertising application 0               
-1021924763
-IDS_ACTIONTEXT_10      1033    Computing space requirements    0               
-1021924763
-IDS_ACTIONTEXT_100     1033    MIME Content Type: [1], Extension: [2]  0       
        -1021924763
-IDS_ACTIONTEXT_101     1033    Unregistering program identifiers       0       
        -1021924763
-IDS_ACTIONTEXT_102     1033    ProgID: [1]     0               -1021924763
-IDS_ACTIONTEXT_103     1033    Unregistering type libraries    0               
-1021924763
-IDS_ACTIONTEXT_104     1033    LibID: [1]      0               -1021924763
-IDS_ACTIONTEXT_105     1033    Updating environment strings    0               
-1021924763
-IDS_ACTIONTEXT_106     1033    Name: [1], Value: [2], Action [3]       0       
        -1021924763
-IDS_ACTIONTEXT_107     1033    Writing INI file values 0               
-1021924763
-IDS_ACTIONTEXT_108     1033    File: [1],  Section: [2],  Key: [3], Value: [4] 
0               -1021924763
-IDS_ACTIONTEXT_109     1033    Writing system registry values  0               
-1021924763
-IDS_ACTIONTEXT_11      1033    Creating folders        0               
-1021924763
-IDS_ACTIONTEXT_110     1033    Key: [1], Name: [2], Value: [3] 0               
-1021924763
-IDS_ACTIONTEXT_111     1033    Registering COM+ Applications and Components    
0               -1021924763
-IDS_ACTIONTEXT_112     1033    AppId: [1]{{, AppType: [2], Users: [3], RSN: 
[4]}}      0               -1021924763
-IDS_ACTIONTEXT_113     1033    Unregistering COM+ Applications and Components  
0               -1021924763
-IDS_ACTIONTEXT_114     1033    AppId: [1]{{, AppType: [2]}}    0               
-1021924763
-IDS_ACTIONTEXT_115     1033    Searching for related applications      0       
        -1021924763
-IDS_ACTIONTEXT_116     1033    Found application: [1]  0               
-1021924763
-IDS_ACTIONTEXT_117     1033    Migrating feature states from related 
applications      0               -1021924763
-IDS_ACTIONTEXT_118     1033    Application: [1]        0               
-1021924763
-IDS_ACTIONTEXT_119     1033    Removing applications   0               
-1021924763
-IDS_ACTIONTEXT_12      1033    Folder: [1]     0               -1021924763
-IDS_ACTIONTEXT_120     1033    Application: [1], Command line: [2]     0       
        -1021924763
-IDS_ACTIONTEXT_121     1033    Installing system catalog       0               
-1021924763
-IDS_ACTIONTEXT_122     1033    File: [1],  Dependencies: [2]   0               
-1021924763
-IDS_ACTIONTEXT_123     1033    Creating IIS Virtual Roots...   0               
-1021924763
-IDS_ACTIONTEXT_124     1033    Removing IIS Virtual Roots...   0               
-1021924763
-IDS_ACTIONTEXT_13      1033    Creating shortcuts      0               
-1021924763
-IDS_ACTIONTEXT_14      1033    Shortcut: [1]   0               -1021924763
-IDS_ACTIONTEXT_15      1033    Deleting services       0               
-1021924763
-IDS_ACTIONTEXT_16      1033    Service: [1]    0               -1021924763
-IDS_ACTIONTEXT_17      1033    Creating duplicate files        0               
-1021924763
-IDS_ACTIONTEXT_18      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
-IDS_ACTIONTEXT_19      1033    Computing space requirements    0               
-1021924763
-IDS_ACTIONTEXT_2       1033    Allocating registry space       0               
-1021924763
-IDS_ACTIONTEXT_20      1033    Generating script operations for action:        
0               -1021924763
-IDS_ACTIONTEXT_21      1033    [1]     0               -1021924763
-IDS_ACTIONTEXT_22      1033    Copying files to the network    0               
-1021924763
-IDS_ACTIONTEXT_23      1033    File: [1], Directory: [9], Size: [6]    0       
        -1021924763
-IDS_ACTIONTEXT_24      1033    Copying new files       0               
-1021924763
-IDS_ACTIONTEXT_25      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
-IDS_ACTIONTEXT_26      1033    Installing ODBC components      0               
-1021924763
-IDS_ACTIONTEXT_27      1033    Installing new services 0               
-1021924763
-IDS_ACTIONTEXT_28      1033    Service: [2]    0               -1021924763
-IDS_ACTIONTEXT_29      1033    Validating install      0               
-1021924763
-IDS_ACTIONTEXT_3       1033    Free space: [1] 0               -1021924763
-IDS_ACTIONTEXT_30      1033    Evaluating launch conditions    0               
-1021924763
-IDS_ACTIONTEXT_31      1033    Moving files    0               -1021924763
-IDS_ACTIONTEXT_32      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
-IDS_ACTIONTEXT_33      1033    Patching files  0               -1021924763
-IDS_ACTIONTEXT_34      1033    File: [1],  Directory: [2],  Size: [3]  0       
        -1021924763
-IDS_ACTIONTEXT_35      1033    Updating component registration 0               
-1021924763
-IDS_ACTIONTEXT_36      1033    Publishing qualified components 0               
-1021924763
-IDS_ACTIONTEXT_37      1033    Component ID: [1], Qualifier: [2]       0       
        -1021924763
-IDS_ACTIONTEXT_38      1033    Publishing product features     0               
-1021924763
-IDS_ACTIONTEXT_39      1033    Feature: [1]    0               -1021924763
-IDS_ACTIONTEXT_4       1033    Searching for installed applications    0       
        -1021924763
-IDS_ACTIONTEXT_40      1033    Publishing product information  0               
-1021924763
-IDS_ACTIONTEXT_41      1033    Registering class servers       0               
-1021924763
-IDS_ACTIONTEXT_42      1033    Class ID: [1]   0               -1021924763
-IDS_ACTIONTEXT_43      1033    Registering extension servers   0               
-1021924763
-IDS_ACTIONTEXT_44      1033    Extension: [1]  0               -1021924763
-IDS_ACTIONTEXT_45      1033    Registering fonts       0               
-1021924763
-IDS_ACTIONTEXT_46      1033    Font: [1]       0               -1021924763
-IDS_ACTIONTEXT_47      1033    Registering MIME info   0               
-1021924763
-IDS_ACTIONTEXT_48      1033    MIME Content Type: [1], Extension: [2]  0       
        -1021924763
-IDS_ACTIONTEXT_49      1033    Registering product     0               
-1021924763
-IDS_ACTIONTEXT_5       1033    Property: [1], Signature: [2]   0               
-1021924763
-IDS_ACTIONTEXT_50      1033    [1]     0               -1021924763
-IDS_ACTIONTEXT_51      1033    Registering program identifiers 0               
-1021924763
-IDS_ACTIONTEXT_52      1033    ProgID: [1]     0               -1021924763
-IDS_ACTIONTEXT_53      1033    Registering type libraries      0               
-1021924763
-IDS_ACTIONTEXT_54      1033    LibID: [1]      0               -1021924763
-IDS_ACTIONTEXT_55      1033    Registering user        0               
-1021924763
-IDS_ACTIONTEXT_56      1033    [1]     0               -1021924763
-IDS_ACTIONTEXT_57      1033    Removing duplicated files       0               
-1021924763
-IDS_ACTIONTEXT_58      1033    File: [1], Directory: [9]       0               
-1021924763
-IDS_ACTIONTEXT_59      1033    Updating environment strings    0               
-1021924763
-IDS_ACTIONTEXT_6       1033    Binding executables     0               
-1021924763
-IDS_ACTIONTEXT_60      1033    Name: [1], Value: [2], Action [3]       0       
        -1021924763
-IDS_ACTIONTEXT_61      1033    Removing files  0               -1021924763
-IDS_ACTIONTEXT_62      1033    File: [1], Directory: [9]       0               
-1021924763
-IDS_ACTIONTEXT_63      1033    Removing folders        0               
-1021924763
-IDS_ACTIONTEXT_64      1033    Folder: [1]     0               -1021924763
-IDS_ACTIONTEXT_65      1033    Removing INI file entries       0               
-1021924763
-IDS_ACTIONTEXT_66      1033    File: [1],  Section: [2],  Key: [3], Value: [4] 
0               -1021924763
-IDS_ACTIONTEXT_67      1033    Removing ODBC components        0               
-1021924763
-IDS_ACTIONTEXT_68      1033    Removing system registry values 0               
-1021924763
-IDS_ACTIONTEXT_69      1033    Key: [1], Name: [2]     0               
-1021924763
-IDS_ACTIONTEXT_7       1033    File: [1]       0               -1021924763
-IDS_ACTIONTEXT_70      1033    Removing shortcuts      0               
-1021924763
-IDS_ACTIONTEXT_71      1033    Shortcut: [1]   0               -1021924763
-IDS_ACTIONTEXT_72      1033    Searching for qualifying products       0       
        -1021924763
-IDS_ACTIONTEXT_73      1033    Rolling back action:    0               
-1021924763
-IDS_ACTIONTEXT_74      1033    [1]     0               -1021924763
-IDS_ACTIONTEXT_75      1033    Removing backup files   0               
-1021924763
-IDS_ACTIONTEXT_76      1033    File: [1]       0               -1021924763
-IDS_ACTIONTEXT_77      1033    Registering modules     0               
-1021924763
-IDS_ACTIONTEXT_78      1033    File: [1], Folder: [2]  0               
-1021924763
-IDS_ACTIONTEXT_79      1033    Unregistering modules   0               
-1021924763
-IDS_ACTIONTEXT_8       1033    Searching for qualifying products       0       
        -1021924763
-IDS_ACTIONTEXT_80      1033    File: [1], Folder: [2]  0               
-1021924763
-IDS_ACTIONTEXT_81      1033    Initializing ODBC directories   0               
-1021924763
-IDS_ACTIONTEXT_82      1033    Starting services       0               
-1021924763
-IDS_ACTIONTEXT_83      1033    Service: [1]    0               -1021924763
-IDS_ACTIONTEXT_84      1033    Stopping services       0               
-1021924763
-IDS_ACTIONTEXT_85      1033    Service: [1]    0               -1021924763
-IDS_ACTIONTEXT_86      1033    Removing moved files    0               
-1021924763
-IDS_ACTIONTEXT_87      1033    File: [1], Directory: [9]       0               
-1021924763
-IDS_ACTIONTEXT_88      1033    Unpublishing Qualified Components       0       
        -1021924763
-IDS_ACTIONTEXT_89      1033    Component ID: [1], Qualifier: [2]       0       
        -1021924763
-IDS_ACTIONTEXT_9       1033    Computing space requirements    0               
-1021924763
-IDS_ACTIONTEXT_90      1033    Unpublishing product features   0               
-1021924763
-IDS_ACTIONTEXT_91      1033    Feature: [1]    0               -1021924763
-IDS_ACTIONTEXT_92      1033    Unpublishing product information        0       
        -1021924763
-IDS_ACTIONTEXT_93      1033    Unregister class servers        0               
-1021924763
-IDS_ACTIONTEXT_94      1033    Class ID: [1]   0               -1021924763
-IDS_ACTIONTEXT_95      1033    Unregistering extension servers 0               
-1021924763
-IDS_ACTIONTEXT_96      1033    Extension: [1]  0               -1021924763
-IDS_ACTIONTEXT_97      1033    Unregistering fonts     0               
-1021924763
-IDS_ACTIONTEXT_98      1033    Font: [1]       0               -1021924763
-IDS_ACTIONTEXT_99      1033    Unregistering MIME info 0               
-1021924763
-IDS_ERROR_0    1033    {{Fatal error: }}       0               -1021924763
-IDS_ERROR_1    1033    Error [1].      0               -1021924763
-IDS_ERROR_10   1033    === Logging started: [Date]  [Time] === 0               
-1021924763
-IDS_ERROR_100  1033    Could not remove shortcut [2]. Verify that the shortcut 
file exists and that you can access it. 0               -1021924763
-IDS_ERROR_101  1033    Could not register type library for file [2].  Contact 
your support personnel.  0               -1021924763
-IDS_ERROR_102  1033    Could not unregister type library for file [2].  
Contact your support personnel.        0               -1021924763
-IDS_ERROR_103  1033    Could not update the INI file [2][3].  Verify that the 
file exists and that you can access it.  0               -1021924763
-IDS_ERROR_104  1033    Could not schedule file [2] to replace file [3] on 
reboot.  Verify that you have write permissions to file [3]. 0               
-1021924763
-IDS_ERROR_105  1033    Error removing ODBC driver manager, ODBC error [2]: 
[3]. Contact your support personnel.        0               -1021924763
-IDS_ERROR_106  1033    Error installing ODBC driver manager, ODBC error [2]: 
[3]. Contact your support personnel.      0               -1021924763
-IDS_ERROR_107  1033    Error removing ODBC driver [4], ODBC error [2]: [3]. 
Verify that you have sufficient privileges to remove ODBC drivers. 0            
   -1021924763
-IDS_ERROR_108  1033    Error installing ODBC driver [4], ODBC error [2]: [3]. 
Verify that the file [4] exists and that you can access it.      0              
 -1021924763
-IDS_ERROR_109  1033    Error configuring ODBC data source [4], ODBC error [2]: 
[3]. Verify that the file [4] exists and that you can access it.        0       
        -1021924763
-IDS_ERROR_11   1033    === Logging stopped: [Date]  [Time] === 0               
-1021924763
-IDS_ERROR_110  1033    Service [2] ([3]) failed to start.  Verify that you 
have sufficient privileges to start system services.        0               
-1021924763
-IDS_ERROR_111  1033    Service [2] ([3]) could not be stopped.  Verify that 
you have sufficient privileges to stop system services.    0               
-1021924763
-IDS_ERROR_112  1033    Service [2] ([3]) could not be deleted.  Verify that 
you have sufficient privileges to remove system services.  0               
-1021924763
-IDS_ERROR_113  1033    Service [2] ([3]) could not be installed.  Verify that 
you have sufficient privileges to install system services.       0              
 -1021924763
-IDS_ERROR_114  1033    Could not update environment variable [2].  Verify that 
you have sufficient privileges to modify environment variables. 0               
-1021924763
-IDS_ERROR_115  1033    You do not have sufficient privileges to complete this 
installation for all users of the machine.  Log on as an administrator and then 
retry this installation. 0               -1021924763
-IDS_ERROR_116  1033    Could not set file security for file [3]. Error: [2].  
Verify that you have sufficient privileges to modify the security permissions 
for this file.     0               -1021924763
-IDS_ERROR_117  1033    Component Services (COM+ 1.0) are not installed on this 
computer.  This installation requires Component Services in order to complete 
successfully.  Component Services are available on Windows 2000.  0             
  -1021924763
-IDS_ERROR_118  1033    Error registering COM+ application.  Contact your 
support personnel for more information.       0               -1021924763
-IDS_ERROR_119  1033    Error unregistering COM+ application.  Contact your 
support personnel for more information.     0               -1021924763
-IDS_ERROR_12   1033    Action start [Time]: [1].       0               
-1021924763
-IDS_ERROR_120  1033    Removing older versions of this application     0       
        -1021924763
-IDS_ERROR_121  1033    Preparing to remove older versions of this application  
0               -1021924763
-IDS_ERROR_122  1033    Error applying patch to file [2].  It has probably been 
updated by other means, and can no longer be modified by this patch.  For more 
information contact your patch vendor.  {{System Error: [3]}}    0              
 -1021924763
-IDS_ERROR_123  1033    [2] cannot install one of its required products. 
Contact your technical support group.  {{System Error: [3].}}  0               
-1021924763
-IDS_ERROR_124  1033    The older version of [2] cannot be removed.  Contact 
your technical support group.  {{System Error [3].}}       0               
-1021924763
-IDS_ERROR_125  1033    The description for service '[2]' ([3]) could not be 
changed.   0               -1021924763
-IDS_ERROR_126  1033    The Windows Installer service cannot update the system 
file [2] because the file is protected by Windows.  You may need to update your 
operating system for this program to work correctly. {{Package version: [3], OS 
Protected version: [4]}} 0               -1021924763
-IDS_ERROR_127  1033    The Windows Installer service cannot update the 
protected Windows file [2]. {{Package version: [3], OS Protected version: [4], 
SFP Error: [5]}} 0               -1021924763
-IDS_ERROR_128  1033    This setup requires Internet Information Server 4.0 or 
higher for configuring IIS Virtual Roots. Please make sure that you have IIS 
4.0 or higher.      0               -1021924763
-IDS_ERROR_129  1033    This setup requires Administrator privileges for 
configuring IIS Virtual Roots. 0               -1021924763
-IDS_ERROR_13   1033    Action ended [Time]: [1]. Return value [2].     0       
        -1021924763
-IDS_ERROR_14   1033    Time remaining: {[1] minutes }{[2] seconds}     0       
        -1021924763
-IDS_ERROR_15   1033    Out of memory. Shut down other applications before 
retrying.    0               -1021924763
-IDS_ERROR_16   1033    Installer is no longer responding.      0               
-1021924763
-IDS_ERROR_17   1033    Installer terminated prematurely.       0               
-1021924763
-IDS_ERROR_18   1033    Please wait while Windows configures [ProductName]      
0               -1021924763
-IDS_ERROR_19   1033    Gathering required information...       0               
-1021924763
-IDS_ERROR_2    1033    Warning [1].    0               -1021924763
-IDS_ERROR_20   1033    {[ProductName] }Setup completed successfully.   0       
        -1021924763
-IDS_ERROR_21   1033    {[ProductName] }Setup failed.   0               
-1021924763
-IDS_ERROR_22   1033    Error reading from file: [2]. {{ System error [3].}}  
Verify that the file exists and that you can access it.   0               
-1021924763
-IDS_ERROR_23   1033    Cannot create the file [3].  A directory with this name 
already exists.  Cancel the installation and try installing to a different 
location.    0               -1021924763
-IDS_ERROR_24   1033    Please insert the disk: [2]     0               
-1021924763
-IDS_ERROR_25   1033    The installer has insufficient privileges to access 
this directory: [2].  The installation cannot continue.  Log on as an 
administrator or contact your system administrator.   0               
-1021924763
-IDS_ERROR_26   1033    Error writing to file [2].  Verify that you have access 
to that directory.      0               -1021924763
-IDS_ERROR_27   1033    Error reading from file [2].  Verify that the file 
exists and that you can access it.   0               -1021924763
-IDS_ERROR_28   1033    Another application has exclusive access to the file 
[2].  Please shut down all other applications, then click Retry.   0            
   -1021924763
-IDS_ERROR_29   1033    There is not enough disk space to install thi file [2]. 
 Free some disk space and click Retry, or click Cancel to exit. 0               
-1021924763
-IDS_ERROR_3    1033    Info [1].       0               -1021924763
-IDS_ERROR_30   1033    Source file not found: [2].  Verify that the file 
exists and that you can access it.    0               -1021924763
-IDS_ERROR_31   1033    Error reading from file: [3]. {{ System error [2].}}  
Verify that the file exists and that you can access it.   0               
-1021924763
-IDS_ERROR_32   1033    Error writing to file: [3]. {{ System error [2].}}  
Verify that you have access to that directory.      0               -1021924763
-IDS_ERROR_33   1033    Source file not found{{(cabinet)}}: [2].  Verify that 
the file exists and that you can access it.       0               -1021924763
-IDS_ERROR_34   1033    Cannot create the directory [2].  A file with this name 
already exists.  Please rename or remove the file and click Retry, or click 
Cancel to exit.     0               -1021924763
-IDS_ERROR_35   1033    The volume [2] is currently unavailable.  Please select 
another.        0               -1021924763
-IDS_ERROR_36   1033    The specified path [2] is unavailable.  0               
-1021924763
-IDS_ERROR_37   1033    Unable to write to the specified folder [2].    0       
        -1021924763
-IDS_ERROR_38   1033    A network error occurred while attempting to read from 
the file [2]     0               -1021924763
-IDS_ERROR_39   1033    An error occurred while attempting to create the 
directory [2]  0               -1021924763
-IDS_ERROR_4    1033    Internal Error [1]. [2]{, [3]}{, [4]}   0               
-1021924763
-IDS_ERROR_40   1033    A network error occurred while attempting to create the 
directory [2]   0               -1021924763
-IDS_ERROR_41   1033    A network error occurred while attempting to open the 
source file cabinet [2].  0               -1021924763
-IDS_ERROR_42   1033    The specified path is too long [2].     0               
-1021924763
-IDS_ERROR_43   1033    The Installer has insufficient privileges to modify the 
file [2].       0               -1021924763
-IDS_ERROR_44   1033    A portion of the path [2] exceeds the length allowed by 
the system.     0               -1021924763
-IDS_ERROR_45   1033    The path [2] contains words that are not valid in 
folders.      0               -1021924763
-IDS_ERROR_46   1033    The path [2] contains an invalid character.     0       
        -1021924763
-IDS_ERROR_47   1033    [2] is not a valid short file name.     0               
-1021924763
-IDS_ERROR_48   1033    Error getting file security: [3] GetLastError: [2]      
0               -1021924763
-IDS_ERROR_49   1033    Invalid Drive: [2]      0               -1021924763
-IDS_ERROR_5    1033    {{Disk full: }} 0               -1021924763
-IDS_ERROR_50   1033    Could not create key [2]. {{ System error [3].}}  
Verify that you have sufficient access to that key, or contact your support 
personnel.        0               -1021924763
-IDS_ERROR_51   1033    Could not open key: [2]. {{ System error [3].}}  Verify 
that you have sufficient access to that key, or contact your support personnel. 
0               -1021924763
-IDS_ERROR_52   1033    Could not delete value [2] from key [3]. {{ System 
error [4].}}  Verify that you have sufficient access to that key, or contact 
your support personnel. 0               -1021924763
-IDS_ERROR_53   1033    Could not delete key [2]. {{ System error [3].}}  
Verify that you have sufficient access to that key, or contact your support 
personnel.        0               -1021924763
-IDS_ERROR_54   1033    Could not read value [2] from key [3]. {{ System error 
[4].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.   0               -1021924763
-IDS_ERROR_55   1033    Could not write value [2] to key [3]. {{ System error 
[4].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.    0               -1021924763
-IDS_ERROR_56   1033    Could not get value names for key [2]. {{ System error 
[3].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.   0               -1021924763
-IDS_ERROR_57   1033    Could not get sub key names for key [2]. {{ System 
error [3].}}  Verify that you have sufficient access to that key, or contact 
your support personnel. 0               -1021924763
-IDS_ERROR_58   1033    Could not read security information for key [2]. {{ 
System error [3].}}  Verify that you have sufficient access to that key, or 
contact your support personnel. 0               -1021924763
-IDS_ERROR_59   1033    Could not increase the available registry space. [2] KB 
of free registry space is required for the installation of this application.    
0               -1021924763
-IDS_ERROR_6    1033    Action [Time]: [1]. [2] 0               -1021924763
-IDS_ERROR_60   1033    Another installation is in progress. You must complete 
that installation before continuing this one.    0               -1021924763
-IDS_ERROR_61   1033    Error accessing secured data. Please make sure the 
Windows Installer is configured properly and try the installation again.     0  
             -1021924763
-IDS_ERROR_62   1033    User [2] has previously initiated an installation for 
product [3].  That user will need to run that installation again before using 
that product.  Your current installation will now continue. 0               
-1021924763
-IDS_ERROR_63   1033    User [2] has previously initiated an installation for 
product [3].  That user will need to run that installation again before using 
that product.       0               -1021924763
-IDS_ERROR_64   1033    Out of disk space -- Volume: '[2]'; required space: [3] 
KB; available space: [4] KB.  Free some disk space and retry.   0               
-1021924763
-IDS_ERROR_65   1033    Are you sure you want to cancel?        0               
-1021924763
-IDS_ERROR_66   1033    The file [2][3] is being held in use{ by the following 
process: Name: [4], ID: [5], Window Title: [6]}.  Close that application and 
retry.      0               -1021924763
-IDS_ERROR_67   1033    The product [2] is already installed, preventing the 
installation of this product.  The two products are incompatible.  0            
   -1021924763
-IDS_ERROR_68   1033    Out of disk space -- Volume: [2]; required space: [3] 
KB; available space: [4] KB.  If rollback is disabled, enough space is 
available. Click Cancel to quit, Retry to check available disk space again, or 
Ignore to continue without rollback.        0               -1021924763
-IDS_ERROR_69   1033    Could not access network location [2].  0               
-1021924763
-IDS_ERROR_7    1033    [ProductName]   0               -1021924763
-IDS_ERROR_70   1033    The following applications should be closed before 
continuing the installation: 0               -1021924763
-IDS_ERROR_71   1033    Could not find any previously installed compliant 
products on the machine for installing this product.  0               
-1021924763
-IDS_ERROR_72   1033    The key [2] is not valid.  Verify that you entered the 
correct key.     0               -1021924763
-IDS_ERROR_73   1033    The installer must restart your system before 
configuration of [2] can continue.  Click Yes to restart now or No if you plan 
to restart later.  0               -1021924763
-IDS_ERROR_74   1033    You must restart your system for the configuration 
changes made to [2] to take effect. Click Yes to restart now or No if you plan 
to restart later.     0               -1021924763
-IDS_ERROR_75   1033    An installation for [2] is currently suspended.  You 
must undo the changes made by that installation to continue.  Do you want to 
undo those changes?   0               -1021924763
-IDS_ERROR_76   1033    A previous installation for this product is in 
progress.  You must undo the changes made by that installation to continue.  Do 
you want to undo those changes?  0               -1021924763
-IDS_ERROR_77   1033    No valid source could be found for product [2].  The 
Windows Installer cannot continue. 0               -1021924763
-IDS_ERROR_78   1033    Installation operation completed successfully.  0       
        -1021924763
-IDS_ERROR_79   1033    Installation operation failed.  0               
-1021924763
-IDS_ERROR_8    1033    {[2]}{, [3]}{, [4]}     0               -1021924763
-IDS_ERROR_80   1033    Product: [2] -- [3]     0               -1021924763
-IDS_ERROR_81   1033    You may either restore your computer to its previous 
state or continue the installation later. Would you like to restore?       0    
           -1021924763
-IDS_ERROR_82   1033    An error occurred while writing installation 
information to disk.  Check to make sure enough disk space is available, and 
click Retry, or Cancel to end the installation.       0               
-1021924763
-IDS_ERROR_83   1033    One or more of the files required to restore your 
computer to its previous state could not be found.  Restoration will not be 
possible. 0               -1021924763
-IDS_ERROR_84   1033    The path [2] is not valid.  Please specify a valid 
path.        0               -1021924763
-IDS_ERROR_85   1033    Out of memory. Shut down other applications before 
retrying.    0               -1021924763
-IDS_ERROR_86   1033    There is no disk in drive [2]. Please insert one and 
click Retry, or click Cancel to go back to the previously selected volume. 0    
           -1021924763
-IDS_ERROR_87   1033    There is no disk in drive [2]. Please insert one and 
click Retry, or click Cancel to return to the browse dialog and select a 
different volume. 0               -1021924763
-IDS_ERROR_88   1033    The folder [2] does not exist.  Please enter a path to 
an existing folder.      0               -1021924763
-IDS_ERROR_89   1033    You have insufficient privileges to read this folder.   
0               -1021924763
-IDS_ERROR_9    1033    Message type: [1], Argument: [2]        0               
-1021924763
-IDS_ERROR_90   1033    A valid destination folder for the installation could 
not be determined.        0               -1021924763
-IDS_ERROR_91   1033    Error attempting to read from the source installation 
database: [2].    0               -1021924763
-IDS_ERROR_92   1033    Scheduling reboot operation: Renaming file [2] to [3]. 
Must reboot to complete operation.       0               -1021924763
-IDS_ERROR_93   1033    Scheduling reboot operation: Deleting file [2]. Must 
reboot to complete operation.      0               -1021924763
-IDS_ERROR_94   1033    Module [2] failed to register.  HRESULT [3].  Contact 
your support personnel.   0               -1021924763
-IDS_ERROR_95   1033    Module [2] failed to unregister.  HRESULT [3].  Contact 
your support personnel. 0               -1021924763
-IDS_ERROR_96   1033    Failed to cache package [2]. Error: [3]. Contact your 
support personnel.        0               -1021924763
-IDS_ERROR_97   1033    Could not register font [2].  Verify that you have 
sufficient permissions to install fonts, and that the system supports this 
font.     0               -1021924763
-IDS_ERROR_98   1033    Could not unregister font [2]. Verify that you have 
sufficient permissions to remove fonts.     0               -1021924763
-IDS_ERROR_99   1033    Could not create shortcut [2]. Verify that the 
destination folder exists and that you can access it.    0               
-1021924763
-IDS_ERROR_SN_INVALID   1033    The serial number is invalid.   0               
-1021924763
-IDS_ISSCRIPT_VERSION_MISSING   1033    The InstallScript engine is missing 
from this machine.  If available, please run ISScript.msi, or contact your 
support personnel for further assistance.        0               -1021924763
-IDS_ISSCRIPT_VERSION_OLD       1033    The InstallScript engine on this 
machine is older than the version required to run this setup.  If available, 
please install the latest version of ISScript.msi, or contact your support 
personnel for further assistance.      0               -1021924763
-IDS_PRODUCT_DEFAULT_1  1033    Your Product Name       0       
SYSTEM_GENERATED        -1021924763
-IDS_SetupTips_1        1033    OK      0               -1021924763
-IDS_SetupTips_10       1033    Will be installed on first use. (Available only 
if the feature supports this option.)   0               -1021924763
-IDS_SetupTips_11       1033    Will be installed to run from the network. 
(Available only if the feature supports this option.)        0               
-1021924763
-IDS_SetupTips_12       1033    This install state means the feature... 0       
        -1021924763
-IDS_SetupTips_13       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
-IDS_SetupTips_14       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\NetworkInstall.ico 0               -1021924763
-IDS_SetupTips_15       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Install.ico        0               -1021924763
-IDS_SetupTips_16       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallFirstUse.ico        0               
-1021924763
-IDS_SetupTips_17       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallPartial.ico 0               -1021924763
-IDS_SetupTips_18       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DontInstall.ico    0               -1021924763
-IDS_SetupTips_19       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallStateMenu.ico       0               
-1021924763
-IDS_SetupTips_2        1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
-IDS_SetupTips_3        1033    InstallShield   0               -1021924763
-IDS_SetupTips_4        1033    Custom Setup allows you to selectively install 
program features.        0               -1021924763
-IDS_SetupTips_5        1033    {&MSSansBold8}Custom Setup Tips 0               
-1021924763
-IDS_SetupTips_6        1033    Will not be installed.  0               
-1021924763
-IDS_SetupTips_7        1033    Will have some subfeatures installed to the 
local hard drive. (Available only if the feature has subfeatures.)  0           
    -1021924763
-IDS_SetupTips_8        1033    Will be completely installed to the local hard 
drive.   0               -1021924763
-IDS_SetupTips_9        1033    The icon next to the feature name indicates the 
install state of the feature. Click the icon to drop down the install state 
menu for each feature.      0               -1021924763
-IDS_STANDARD_USE_SETUPEXE      1033    This installation cannot be run by 
directly launching the MSI package. You must run setup.exe.  0               
-1021924763
-IDS_UITEXT_0   1033    bytes   0               -1021924763
-IDS_UITEXT_1   1033    GB      0               -1021924763
-IDS_UITEXT_10  1033    This feature will remain uninstalled.   0               
-1021924763
-IDS_UITEXT_11  1033    This feature will be set to be installed when required. 
0               -1021924763
-IDS_UITEXT_12  1033    This feature will be installed to run from CD.  0       
        -1021924763
-IDS_UITEXT_13  1033    This feature will be installed on the local hard drive. 
0               -1021924763
-IDS_UITEXT_14  1033    This feature will be installed to run from the network. 
0               -1021924763
-IDS_UITEXT_15  1033    This feature will become unavailable.   0               
-1021924763
-IDS_UITEXT_16  1033    Will be installed when required.        0               
-1021924763
-IDS_UITEXT_17  1033    This feature will be available to run from CD.  0       
        -1021924763
-IDS_UITEXT_18  1033    This feature will be installed on your local hard 
drive.        0               -1021924763
-IDS_UITEXT_19  1033    This feature will be available to run from the network. 
0               -1021924763
-IDS_UITEXT_2   1033    KB      0               -1021924763
-IDS_UITEXT_20  1033    This feature will be uninstalled completely, and you 
won't be able to run it from CD.   0               -1021924763
-IDS_UITEXT_21  1033    This feature was run from the CD but will be set to be 
installed when required. 0               -1021924763
-IDS_UITEXT_22  1033    This feature will continue to be run from the CD        
0               -1021924763
-IDS_UITEXT_23  1033    This feature was run from the CD but will be installed 
on the local hard drive. 0               -1021924763
-IDS_UITEXT_24  1033    This feature frees up [1] on your hard drive.   0       
        -1021924763
-IDS_UITEXT_25  1033    This feature requires [1] on your hard drive.   0       
        -1021924763
-IDS_UITEXT_26  1033    Compiling cost for this feature...      0               
-1021924763
-IDS_UITEXT_27  1033    This feature will be completely removed.        0       
        -1021924763
-IDS_UITEXT_28  1033    This feature will be removed from your local hard drive 
but will be set to be installed when required.  0               -1021924763
-IDS_UITEXT_29  1033    This feature will be removed from your local hard drive 
but will still be available to run from CD.     0               -1021924763
-IDS_UITEXT_3   1033    MB      0               -1021924763
-IDS_UITEXT_30  1033    This feature will remain on your local hard drive.      
0               -1021924763
-IDS_UITEXT_31  1033    This feature will be removed from your local hard 
drive, but will be still available to run from the network.   0               
-1021924763
-IDS_UITEXT_32  1033    This feature will be uninstalled completely, and you 
won't be able to run it from the network.  0               -1021924763
-IDS_UITEXT_33  1033    This feature was run from the network but will be 
installed when required.      0               -1021924763
-IDS_UITEXT_34  1033    This feature was run from the network but will be 
installed on the local hard drive.    0               -1021924763
-IDS_UITEXT_35  1033    This feature will continue to be run from the network   
0               -1021924763
-IDS_UITEXT_36  1033    This feature frees up [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures free up [4] on your hard 
drive.   0               -1021924763
-IDS_UITEXT_37  1033    This feature frees up [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures require [4] on your hard 
drive.   0               -1021924763
-IDS_UITEXT_38  1033    This feature requires [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures free up [4] on your hard 
drive.   0               -1021924763
-IDS_UITEXT_39  1033    This feature requires [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures require [4] on your hard 
drive.   0               -1021924763
-IDS_UITEXT_4   1033    This feature will not be available.     0               
-1021924763
-IDS_UITEXT_40  1033    Time remaining: {[1] min }[2] sec       0               
-1021924763
-IDS_UITEXT_41  1033    Available       0               -1021924763
-IDS_UITEXT_42  1033    Differences     0               -1021924763
-IDS_UITEXT_43  1033    Required        0               -1021924763
-IDS_UITEXT_44  1033    Disk Size       0               -1021924763
-IDS_UITEXT_45  1033    Volume  0               -1021924763
-IDS_UITEXT_46  1033    This feature, and all subfeatures, will be installed to 
run from the network.   0               -1021924763
-IDS_UITEXT_47  1033    This feature, and all subfeatures, will be installed to 
run from the CD.        0               -1021924763
-IDS_UITEXT_48  1033    This feature, and all subfeatures, will be installed on 
local hard drive.       0               -1021924763
-IDS_UITEXT_5   1033    This feature will be installed when required.   0       
        -1021924763
-IDS_UITEXT_6   1033    This feature will be installed to run from CD.  0       
        -1021924763
-IDS_UITEXT_7   1033    This feature will be installed on local hard drive.     
0               -1021924763
-IDS_UITEXT_8   1033    This feature will be installed to run from network.     
0               -1021924763
-IDS_UITEXT_9   1033    Fldr|New Folder 0               -1021924763
-NEW_STRING1    1033    [ProductName] Installer Information     0               
1687606380
-NEW_STRING6    1033    [INSTALLDIR] is not a valid path to an installed 
instance of Apache.    0               1687569580
-NEW_STRING9    1033    &Retry  0               1687571628
+ISString       ISLanguage_     Value   Encoded Comment TimeStamp
+s255   s50     S0      I2      S0      I4
+ISString       ISString        ISLanguage_
+COMPANY_NAME   1033    The Apache Software Foundation  0               
-1021924763
+COMPANY_URI    1033    http://httpd.apache.org/        0               
605450580
+DN_AlwaysInstall       1033    Always Install  0               -1021924763
+FEATURE_DESC   1033    Microsoft ASP.NET support module for Apache httpd Web 
Server    0               739664554
+FEATURE_NAME   1033    Apache mod_aspdotnet    0               605430132
+ID_STRING1     1033    No comment      0               0
+ID_STRING2     1033    The install path must be an installed Apache httpd Web 
Server path. [1] was not a valid path to Apache. 0               1687578668
+IDPROP_ARPCOMMENTS     1033    Your Comments   0               -1021924763
+IDPROP_ARPCONTACT      1033    Customer Support Department     0               
-1021924763
+IDPROP_ARPHELPLINK     1033    http://www.yourcompany.com/help 0               
-1021924763
+IDPROP_ARPHELPTELEPHONE        1033    1-555-555-4505  0               
-1021924763
+IDPROP_ARPURLINFOABOUT 1033    http://www.yourcompany.com      0               
-1021924763
+IDPROP_ARPURLUPDATEINFO        1033    http://www.yourcompany.com/updateinfo   
0               -1021924763
+IDPROP_EXPRESS_LAUNCH_CONDITION_COLOR  1033    The color settings of your 
system are not adequate for running [ProductName].   0               -1021924763
+IDPROP_EXPRESS_LAUNCH_CONDITION_OS     1033    The operating system is not 
adequate for running [ProductName]. 0               -1021924763
+IDPROP_EXPRESS_LAUNCH_CONDITION_PROCESSOR      1033    The processor is not 
adequate for running [ProductName].        0               -1021924763
+IDPROP_EXPRESS_LAUNCH_CONDITION_RAM    1033    The amount of RAM is not 
adequate for running [ProductName].    0               -1021924763
+IDPROP_EXPRESS_LAUNCH_CONDITION_SCREEN 1033    The screen resolution is not 
adequate for running [ProductName].        0               -1021924763
+IDPROP_SETUPTYPE_COMPACT       1033    Compact 0               -1021924763
+IDPROP_SETUPTYPE_COMPACT_DESC  1033    Compact Description     0               
-1021924763
+IDPROP_SETUPTYPE_CUSTOM        1033    Custom  0               -1021924763
+IDPROP_SETUPTYPE_CUSTOM_DESC   1033    Custom Description      0               
-1021924763
+IDPROP_SETUPTYPE_TYPICAL       1033    Typical 0               -1021924763
+IDPROP_SETUPTYPE_TYPICAL_DESC  1033    Typical Description     0               
-1021924763
+IDS__AgreeToLicense_0  1033    I &do not accept the terms in the license 
agreement     0               -1021924763
+IDS__AgreeToLicense_1  1033    I &accept the terms in the license agreement    
0               -1021924763
+IDS__DatabaseFolder_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__DatabaseFolder_1  1033    Cancel  0               -1021924763
+IDS__DatabaseFolder_10 1033    Install [ProductName] database to:      0       
        -1021924763
+IDS__DatabaseFolder_11 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__DatabaseFolder_12 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
+IDS__DatabaseFolder_2  1033    InstallShield   0               -1021924763
+IDS__DatabaseFolder_3  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__DatabaseFolder_4  1033    Click Next to install to this folder, or click 
Change to install to a different folder. 0               -1021924763
+IDS__DatabaseFolder_5  1033    {&MSSansBold8}Database Folder   0               
-1021924763
+IDS__DatabaseFolder_6  1033    < &Back 0               -1021924763
+IDS__DatabaseFolder_7  1033    &Next > 0               -1021924763
+IDS__DatabaseFolder_8  1033    &Change...      0               -1021924763
+IDS__DatabaseFolder_9  1033    [DATABASEDIR]   0               -1021924763
+IDS__DestinationFolder_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__DestinationFolder_1       1033    Cancel  0               -1021924763
+IDS__DestinationFolder_10      1033    Install [ProductName] to:       0       
        -1021924763
+IDS__DestinationFolder_11      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__DestinationFolder_12      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
+IDS__DestinationFolder_2       1033    InstallShield   0               
-1021924763
+IDS__DestinationFolder_3       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__DestinationFolder_4       1033    Click Next to install to this folder, 
or click Change to install to a different folder. 0               -1021924763
+IDS__DestinationFolder_5       1033    {&MSSansBold8}Destination Folder        
0               -1021924763
+IDS__DestinationFolder_6       1033    < &Back 0               -1021924763
+IDS__DestinationFolder_7       1033    &Next > 0               -1021924763
+IDS__DestinationFolder_8       1033    &Change...      0               
-1021924763
+IDS__DestinationFolder_9       1033    [INSTALLDIR]    0               
-1021924763
+IDS__DisplayName_Custom        1033    Custom  0               -1021924763
+IDS__DisplayName_Minimal       1033    Minimal 0               -1021924763
+IDS__DisplayName_Typical       1033    Typical 0               -1021924763
+IDS__IsAdminInstallBrowse_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsAdminInstallBrowse_1    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsAdminInstallBrowse_10   1033    OK      0               -1021924763
+IDS__IsAdminInstallBrowse_11   1033            0               -1021924763
+IDS__IsAdminInstallBrowse_12   1033    &Folder name:   0               
-1021924763
+IDS__IsAdminInstallBrowse_13   1033    Up one level|   0               
-1021924763
+IDS__IsAdminInstallBrowse_14   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsAdminInstallBrowse_15   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\New.ibd    0               -1021924763
+IDS__IsAdminInstallBrowse_16   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Up.ibd     0               -1021924763
+IDS__IsAdminInstallBrowse_2    1033    InstallShield   0               
-1021924763
+IDS__IsAdminInstallBrowse_3    1033    Cancel  0               -1021924763
+IDS__IsAdminInstallBrowse_4    1033            0               -1021924763
+IDS__IsAdminInstallBrowse_5    1033    &Look in:       0               
-1021924763
+IDS__IsAdminInstallBrowse_6    1033    Browse to the destination folder.       
0               -1021924763
+IDS__IsAdminInstallBrowse_7    1033    {&MSSansBold8}Change Current 
Destination Folder 0               -1021924763
+IDS__IsAdminInstallBrowse_8    1033            0               -1021924763
+IDS__IsAdminInstallBrowse_9    1033    Create new folder|      0               
-1021924763
+IDS__IsAdminInstallPoint_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsAdminInstallPoint_1     1033    < &Back 0               -1021924763
+IDS__IsAdminInstallPoint_10    1033    &Network location:      0               
-1021924763
+IDS__IsAdminInstallPoint_11    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsAdminInstallPoint_2     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsAdminInstallPoint_3     1033    InstallShield   0               
-1021924763
+IDS__IsAdminInstallPoint_4     1033    &Change...      0               
-1021924763
+IDS__IsAdminInstallPoint_5     1033    Cancel  0               -1021924763
+IDS__IsAdminInstallPoint_6     1033    Specify a network location for the 
server image of the product. 0               -1021924763
+IDS__IsAdminInstallPoint_7     1033    Enter the network location or click 
Change to browse to a location.  Click Install to create a server image of 
[ProductName] at the specified network location or click Cancel to exit the 
wizard.      0               -1021924763
+IDS__IsAdminInstallPoint_8     1033    {&MSSansBold8}Network Location  0       
        -1021924763
+IDS__IsAdminInstallPoint_9     1033    &Install        0               
-1021924763
+IDS__IsAdminInstallPointWelcome_0      1033    [ProductName] - InstallShield 
Wizard    0               -1021924763
+IDS__IsAdminInstallPointWelcome_1      1033    < &Back 0               
-1021924763
+IDS__IsAdminInstallPointWelcome_2      1033    Cancel  0               
-1021924763
+IDS__IsAdminInstallPointWelcome_3      1033    &Next > 0               
-1021924763
+IDS__IsAdminInstallPointWelcome_4      1033    {&TahomaBold10}Welcome to the 
InstallShield Wizard for [ProductName]    0               -1021924763
+IDS__IsAdminInstallPointWelcome_5      1033    The InstallShield(R) Wizard 
will create a server image of [ProductName] at a specified network location. To 
continue, click Next.       0               -1021924763
+IDS__IsAdminInstallPointWelcome_6      1033    
<ISProductFolder>\Redist\Language Independent\OS Independent\IsDialogBitmap.ibd 
0               -1021924763
+IDS__IsBitmapDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsBitmapDlg_1     1033    < &Back 0               -1021924763
+IDS__IsBitmapDlg_2     1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsBitmapDlg_3     1033    InstallShield   0               -1021924763
+IDS__IsBitmapDlg_4     1033    Cancel  0               -1021924763
+IDS__IsBitmapDlg_5     1033    &Next > 0               -1021924763
+IDS__IsBitmapDlg_6     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsBrowseFolderDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsBrowseFolderDlg_1       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsBrowseFolderDlg_10      1033    OK      0               -1021924763
+IDS__IsBrowseFolderDlg_11      1033            0               -1021924763
+IDS__IsBrowseFolderDlg_12      1033    &Folder name:   0               
-1021924763
+IDS__IsBrowseFolderDlg_13      1033    Up One Level|   0               
-1021924763
+IDS__IsBrowseFolderDlg_14      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsBrowseFolderDlg_15      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\New.ibd    0               -1021924763
+IDS__IsBrowseFolderDlg_16      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Up.ibd     0               -1021924763
+IDS__IsBrowseFolderDlg_2       1033    InstallShield   0               
-1021924763
+IDS__IsBrowseFolderDlg_3       1033    Cancel  0               -1021924763
+IDS__IsBrowseFolderDlg_4       1033            0               -1021924763
+IDS__IsBrowseFolderDlg_5       1033    &Look in:       0               
-1021924763
+IDS__IsBrowseFolderDlg_6       1033    Browse to the destination folder.       
0               -1021924763
+IDS__IsBrowseFolderDlg_7       1033    {&MSSansBold8}Change Current 
Destination Folder 0               -1021924763
+IDS__IsBrowseFolderDlg_8       1033            0               -1021924763
+IDS__IsBrowseFolderDlg_9       1033    Create New Folder|      0               
-1021924763
+IDS__IsCancelDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsCancelDlg_1     1033    Information icon|       0               
-1021924763
+IDS__IsCancelDlg_2     1033    InstallShield   0               -1021924763
+IDS__IsCancelDlg_3     1033    Are you sure you want to cancel the 
installation?       0               -1021924763
+IDS__IsCancelDlg_4     1033    Are you sure you want to cancel [ProductName] 
installation?     0               -1021924763
+IDS__IsCancelDlg_5     1033    {&MSSansBold8}Cancel Setup      0               
-1021924763
+IDS__IsCancelDlg_6     1033    &No     0               -1021924763
+IDS__IsCancelDlg_7     1033    To continue installing [ProductName], click 
Resume. To exit the installation, click Exit.       0               -1021924763
+IDS__IsCancelDlg_8     1033    &Yes    0               -1021924763
+IDS__IsCancelDlg_9     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\WarningIcon.ibd    0               -1021924763
+IDS__IsCustomSelectionDlg_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsCustomSelectionDlg_1    1033    < &Back 0               -1021924763
+IDS__IsCustomSelectionDlg_10   1033    Feature Description:    0               
-1021924763
+IDS__IsCustomSelectionDlg_11   1033    &Next > 0               -1021924763
+IDS__IsCustomSelectionDlg_12   1033    Feature size    0               
-1021924763
+IDS__IsCustomSelectionDlg_13   1033    &Help   0               -1021924763
+IDS__IsCustomSelectionDlg_14   1033    Multiline description of the currently 
selected item    0               -1021924763
+IDS__IsCustomSelectionDlg_15   1033    Feature Description     0               
-1021924763
+IDS__IsCustomSelectionDlg_16   1033    &Change...      0               
-1021924763
+IDS__IsCustomSelectionDlg_17   1033    <selected feature path> 0               
-1021924763
+IDS__IsCustomSelectionDlg_18   1033    Install to:     0               
-1021924763
+IDS__IsCustomSelectionDlg_19   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsCustomSelectionDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsCustomSelectionDlg_3    1033    InstallShield   0               
-1021924763
+IDS__IsCustomSelectionDlg_4    1033    Cancel  0               -1021924763
+IDS__IsCustomSelectionDlg_5    1033    &Space  0               -1021924763
+IDS__IsCustomSelectionDlg_6    1033    Select the program features you want 
installed. 0               -1021924763
+IDS__IsCustomSelectionDlg_7    1033    Click on an icon in the list below to 
change how a feature is installed.        0               -1021924763
+IDS__IsCustomSelectionDlg_8    1033    {&MSSansBold8}Custom Setup      0       
        -1021924763
+IDS__IsCustomSelectionDlg_9    1033    Multiline description of the currently 
selected item    0               -1021924763
+IDS__IsDatabaseLocation_1      1033    InstallShield   0               
-1021924763
+IDS__IsDatabaseLocation_10     1033    [DATABASEDIR]   0               
-1021924763
+IDS__IsDatabaseLocation_11     1033    Install Application Database to:        
0               -1021924763
+IDS__IsDatabaseLocation_12     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsDatabaseLocation_13     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsDatabaseLocation_2      1033    2       0               -1021924763
+IDS__IsDatabaseLocation_3      1033    Cancel  0               -1021924763
+IDS__IsDatabaseLocation_4      1033    4       0               -1021924763
+IDS__IsDatabaseLocation_5      1033    Click next to install the application's 
database to this folder, or click change to install it to a different folder.   
0               -1021924763
+IDS__IsDatabaseLocation_6      1033    {&MSSansBold8}Database Destination 
Folder       0               -1021924763
+IDS__IsDatabaseLocation_7      1033    < &Back 0               -1021924763
+IDS__IsDatabaseLocation_8      1033    &Next > 0               -1021924763
+IDS__IsDatabaseLocation_9      1033    &Change...      0               
-1021924763
+IDS__IsDiskSpaceDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsDiskSpaceDlg_1  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsDiskSpaceDlg_10 1033    OK      0               -1021924763
+IDS__IsDiskSpaceDlg_11 1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsDiskSpaceDlg_2  1033    InstallShield   0               -1021924763
+IDS__IsDiskSpaceDlg_3  1033    &Disk Cleanup   0               -1021924763
+IDS__IsDiskSpaceDlg_4  1033    Disk space required for the installation 
exceeds available disk space.  0               -1021924763
+IDS__IsDiskSpaceDlg_5  1033    The highlighted volumes do not have enough disk 
space available for the currently selected features. You can remove files from 
the highlighted volumes, choose to install less features onto local drives, or 
select different destination drives.      0               -1021924763
+IDS__IsDiskSpaceDlg_6  1033    {&MSSansBold8}Out of Disk Space 0               
-1021924763
+IDS__IsDiskSpaceDlg_7  1033    &Exit   0               -1021924763
+IDS__IsDiskSpaceDlg_8  1033    Use disk cleanup to free more disk space by 
removing unneeded files.    0               -1021924763
+IDS__IsDiskSpaceDlg_9  1033    {120}{70}{70}{70}{70}   0               
-1021924763
+IDS__IsErrorDlg_0      1033    [ProductName] Installer Information     0       
        -1021924763
+IDS__IsErrorDlg_1      1033    &Abort  0               -1021924763
+IDS__IsErrorDlg_2      1033    &Cancel 0               -1021924763
+IDS__IsErrorDlg_3      1033    <error text goes here><error text goes 
here><error text goes here><error text goes here><error text goes here><error 
text goes here><error text goes here><error text goes here><error text goes 
here><error text goes here><error text goes here>      0               
-1021924763
+IDS__IsErrorDlg_4      1033    &Ignore 0               -1021924763
+IDS__IsErrorDlg_5      1033    &No     0               -1021924763
+IDS__IsErrorDlg_6      1033    &OK     0               -1021924763
+IDS__IsErrorDlg_7      1033    &Retry  0               -1021924763
+IDS__IsErrorDlg_8      1033    &Yes    0               -1021924763
+IDS__IsErrorDlg_9      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\WarningIcon.ibd    0               -1021924763
+IDS__IsExitDialog_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsExitDialog_1    1033    < &Back 0               -1021924763
+IDS__IsExitDialog_2    1033    Cancel  0               -1021924763
+IDS__IsExitDialog_3    1033    &Finish 0               -1021924763
+IDS__IsExitDialog_4    1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
+IDS__IsExitDialog_5    1033    The InstallShield Wizard has successfully 
installed [ProductName]. Click Finish to exit the wizard.     0               
-1021924763
+IDS__IsExitDialog_6    1033    The InstallShield Wizard has successfully 
uninstalled [ProductName]. Click Finish to exit the wizard.   0               
-1021924763
+IDS__IsExitDialog_7    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsExitDialog_8    1033    Show the readme file    0               
-1021924763
+IDS__IsExitDialog_9    1033    Launch the program      0               
-1021924763
+IDS__IsExitDialog_Update_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsExitDialog_Update_1     1033    < &Back 0               -1021924763
+IDS__IsExitDialog_Update_2     1033    Cancel  0               -1021924763
+IDS__IsExitDialog_Update_3     1033    &Finish 0               -1021924763
+IDS__IsExitDialog_Update_4     1033    Setup has finished installing 
[ProductName].    0               -1021924763
+IDS__IsExitDialog_Update_5     1033    Some program files might have been 
updated since you purchased your copy of [ProductName].      0               
-1021924763
+IDS__IsExitDialog_Update_6     1033    Your Internet connection can be used to 
make sure that you have the latest updates.     0               -1021924763
+IDS__IsExitDialog_Update_7     1033    &Yes, check for program updates 
(Recommended) after the setup completes.        0               -1021924763
+IDS__IsFatalError_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsFatalError_1    1033    < &Back 0               -1021924763
+IDS__IsFatalError_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsFatalError_2    1033    Cancel  0               -1021924763
+IDS__IsFatalError_3    1033    &Finish 0               -1021924763
+IDS__IsFatalError_4    1033    Your system has not been modified. To complete 
installation at another time, please run setup again.    0               
-1021924763
+IDS__IsFatalError_5    1033    Click Finish to exit the wizard.        0       
        -1021924763
+IDS__IsFatalError_6    1033    You can either keep any existing installed 
elements on your system to continue this installation at a later time or you 
can restore your system to its original state prior to the installation.        
0               -1021924763
+IDS__IsFatalError_7    1033    Click Restore or Continue Later to exit the 
wizard.     0               -1021924763
+IDS__IsFatalError_8    1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
+IDS__IsFatalError_9    1033    The wizard was interrupted before [ProductName] 
could be completely installed.  0               -1021924763
+IDS__IsFeatureDetailsDlg_0     1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsFeatureDetailsDlg_1     1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsFeatureDetailsDlg_10    1033    Use disk cleanup to free more disk 
space by removing unneeded files.    0               -1021924763
+IDS__IsFeatureDetailsDlg_11    1033    Install to:     0               
-1021924763
+IDS__IsFeatureDetailsDlg_12    1033    Total disk space required:      0       
        -1021924763
+IDS__IsFeatureDetailsDlg_13    1033    {120}{70}{70}{70}{70}   0               
-1021924763
+IDS__IsFeatureDetailsDlg_14    1033    OK      0               -1021924763
+IDS__IsFeatureDetailsDlg_15    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsFeatureDetailsDlg_2     1033    InstallShield   0               
-1021924763
+IDS__IsFeatureDetailsDlg_3     1033    &Change...      0               
-1021924763
+IDS__IsFeatureDetailsDlg_4     1033    Cancel  0               -1021924763
+IDS__IsFeatureDetailsDlg_5     1033    &Disk Cleanup   0               
-1021924763
+IDS__IsFeatureDetailsDlg_6     1033    The disk space required for the 
installation of the selected features.  0               -1021924763
+IDS__IsFeatureDetailsDlg_7     1033    The highlighted volumes do not have 
enough disk space available for the currently selected features. You can remove 
files from the highlighted volumes, choose to install less features onto local 
drives, or select different destination drives.      0               -1021924763
+IDS__IsFeatureDetailsDlg_8     1033    {&MSSansBold8}Disk Space Requirements   
0               -1021924763
+IDS__IsFeatureDetailsDlg_9     1033            0               -1021924763
+IDS__IsFilesInUse_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsFilesInUse_1    1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsFilesInUse_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsFilesInUse_2    1033    InstallShield   0               -1021924763
+IDS__IsFilesInUse_3    1033    Some files that need to be updated are 
currently in use.        0               -1021924763
+IDS__IsFilesInUse_4    1033    The following applications are using files that 
need to be updated by this setup. Close these applications and click Retry to 
continue. 0               -1021924763
+IDS__IsFilesInUse_5    1033    {&MSSansBold8}Files in Use      0               
-1021924763
+IDS__IsFilesInUse_6    1033    &Exit   0               -1021924763
+IDS__IsFilesInUse_7    1033    &Ignore 0               -1021924763
+IDS__IsFilesInUse_8    1033    &Retry  0               -1021924763
+IDS__IsFilesInUse_9    1033            0               -1021924763
+IDS__IsInitDlg_0       1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsInitDlg_1       1033            0               -1021924763
+IDS__IsInitDlg_2       1033            0               -1021924763
+IDS__IsInitDlg_3       1033    < &Back 0               -1021924763
+IDS__IsInitDlg_4       1033    Cancel  0               -1021924763
+IDS__IsInitDlg_5       1033    &Next > 0               -1021924763
+IDS__IsInitDlg_6       1033    {&TahomaBold10}Welcome to the InstallShield 
Wizard for [ProductName]    0               -1021924763
+IDS__IsInitDlg_7       1033    [ProductName] Setup is preparing the 
InstallShield Wizard which will guide you through the program setup process.  
Please wait. 0               -1021924763
+IDS__IsInitDlg_8       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsLicenseDlg_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsLicenseDlg_1    1033    < &Back 0               -1021924763
+IDS__IsLicenseDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsLicenseDlg_3    1033    InstallShield   0               -1021924763
+IDS__IsLicenseDlg_4    1033    Cancel  0               -1021924763
+IDS__IsLicenseDlg_5    1033    Please read the following license agreement 
carefully.  0               -1021924763
+IDS__IsLicenseDlg_6    1033    Click Accept to accept the terms of this 
agreement, or click Decline to exit the wizard.        0               
-1021924763
+IDS__IsLicenseDlg_7    1033    {&MSSansBold8}License Agreement 0               
-1021924763
+IDS__IsLicenseDlg_8    1033    &Next > 0               -1021924763
+IDS__IsLicenseDlg_9    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsLicenseDlg_EULA 1033    <ISProductFolder>\Redist\0409\Eula.rtf  0       
        -1021924763
+IDS__IsMaintenanceDlg_0        1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsMaintenanceDlg_1        1033    < &Back 0               -1021924763
+IDS__IsMaintenanceDlg_10       1033    {&MSSansBold8}&Remove   0               
-1021924763
+IDS__IsMaintenanceDlg_11       1033            0               -1021924763
+IDS__IsMaintenanceDlg_12       1033    Change which program features are 
installed. This option displays the Custom Selection dialog in which you can 
change the way features are installed.   0               -1021924763
+IDS__IsMaintenanceDlg_13       1033    Repair installation errors in the 
program. This option fixes missing or corrupt files, shortcuts, and registry 
entries. 0               -1021924763
+IDS__IsMaintenanceDlg_14       1033    Remove [ProductName] from your 
computer.        0               -1021924763
+IDS__IsMaintenanceDlg_15       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsMaintenanceDlg_16       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\RemoveIco.ibd      0               -1021924763
+IDS__IsMaintenanceDlg_17       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\ReinstIco.ibd      0               -1021924763
+IDS__IsMaintenanceDlg_18       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
+IDS__IsMaintenanceDlg_2        1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsMaintenanceDlg_3        1033    InstallShield   0               
-1021924763
+IDS__IsMaintenanceDlg_4        1033    Cancel  0               -1021924763
+IDS__IsMaintenanceDlg_5        1033    Modify, repair, or remove the program.  
0               -1021924763
+IDS__IsMaintenanceDlg_6        1033    {&MSSansBold8}Program Maintenance       
0               -1021924763
+IDS__IsMaintenanceDlg_7        1033    &Next > 0               -1021924763
+IDS__IsMaintenanceDlg_8        1033    {&MSSansBold8}&Modify   0               
-1021924763
+IDS__IsMaintenanceDlg_9        1033    {&MSSansBold8}Re&pair   0               
-1021924763
+IDS__IsMaintenanceWelcome_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsMaintenanceWelcome_1    1033    < &Back 0               -1021924763
+IDS__IsMaintenanceWelcome_2    1033    Cancel  0               -1021924763
+IDS__IsMaintenanceWelcome_3    1033    &Next > 0               -1021924763
+IDS__IsMaintenanceWelcome_4    1033    {&TahomaBold10}Welcome to the 
InstallShield Wizard for [ProductName]    0               -1021924763
+IDS__IsMaintenanceWelcome_5    1033    The InstallShield(R) Wizard will allow 
you to modify, repair, or remove [ProductName]. To continue, click Next. 0      
         -1021924763
+IDS__IsMaintenanceWelcome_6    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsPatchDlg_0      1033    [ProductName] Patch - InstallShield Wizard      
0               -1021924763
+IDS__IsPatchDlg_1      1033    {&TahomaBold10}Welcome to the Patch for 
[ProductName]   0               -1021924763
+IDS__IsPatchDlg_2      1033    The InstallShield(R) Wizard will install the 
Patch for [ProductName] on your computer.  To continue, click Update.      0    
           -1021924763
+IDS__IsPatchDlg_3      1033    Cancel  0               -1021924763
+IDS__IsPatchDlg_4      1033    < &Back 0               -1021924763
+IDS__IsPatchDlg_5      1033    &Update >       0               -1021924763
+IDS__IsPatchDlg_6      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsProgressDlg_0   1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsProgressDlg_1   1033    Progress done   0               -1021924763
+IDS__IsProgressDlg_10  1033    (Hidden for now)Sec.    0               
-1021924763
+IDS__IsProgressDlg_11  1033    Status: 0               -1021924763
+IDS__IsProgressDlg_12  1033    &Next > 0               -1021924763
+IDS__IsProgressDlg_13  1033    (Hidden for now)        0               
-1021924763
+IDS__IsProgressDlg_14  1033    )Hidden for now)Estimated time remaining:       
0               -1021924763
+IDS__IsProgressDlg_15  1033    {&MSSansBold8}Uninstalling [ProductName]        
0               -1021924763
+IDS__IsProgressDlg_16  1033    The program features you selected are being 
uninstalled.        0               -1021924763
+IDS__IsProgressDlg_17  1033    Please wait while the InstallShield Wizard 
uninstalls [ProductName]. This may take several minutes.     0               
-1021924763
+IDS__IsProgressDlg_18  1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\SetupIcon.ibd      0               -1021924763
+IDS__IsProgressDlg_19  1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsProgressDlg_2   1033            0               -1021924763
+IDS__IsProgressDlg_3   1033    < &Back 0               -1021924763
+IDS__IsProgressDlg_4   1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsProgressDlg_5   1033    InstallShield   0               -1021924763
+IDS__IsProgressDlg_6   1033    Cancel  0               -1021924763
+IDS__IsProgressDlg_7   1033    The program features you selected are being 
installed.  0               -1021924763
+IDS__IsProgressDlg_8   1033    Please wait while the InstallShield Wizard 
installs [ProductName]. This may take several minutes.       0               
-1021924763
+IDS__IsProgressDlg_9   1033    {&MSSansBold8}Installing [ProductName]  0       
        -1021924763
+IDS__IsReadmeDlg_0     1033    {&MSSansBold8}Readme Information        0       
        -1021924763
+IDS__IsReadmeDlg_1     1033    Please read the following readme information 
carefully. 0               -1021924763
+IDS__IsReadmeDlg_2     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsReadmeDlg_3     1033    < &Back 0               -1021924763
+IDS__IsReadmeDlg_4     1033    &Next > 0               -1021924763
+IDS__IsReadmeDlg_5     1033    &Cancel 0               -1021924763
+IDS__IsReadmeDlg_6     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsReadmeDlg_7     1033    InstallShield   0               -1021924763
+IDS__IsReadmeDlg_8     1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsRegisterUserDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsRegisterUserDlg_1       1033    < &Back 0               -1021924763
+IDS__IsRegisterUserDlg_10      1033    {\Tahoma8}{50}  0               
-1021924763
+IDS__IsRegisterUserDlg_11      1033    &User Name:     0               
-1021924763
+IDS__IsRegisterUserDlg_12      1033    &Next > 0               -1021924763
+IDS__IsRegisterUserDlg_13      1033    Install the help documentation for:     
0               -1021924763
+IDS__IsRegisterUserDlg_14      1033    &Anyone who uses this computer (all 
users)      0               -1021924763
+IDS__IsRegisterUserDlg_15      1033    Only for &me ([USERNAME])       0       
        -1021924763
+IDS__IsRegisterUserDlg_16      1033            0               -1021924763
+IDS__IsRegisterUserDlg_17      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsRegisterUserDlg_18      1033    &Serial Number: 0               
-1021924763
+IDS__IsRegisterUserDlg_19      1033    &Other...       0               
-602530036
+IDS__IsRegisterUserDlg_2       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsRegisterUserDlg_20      1033    Install [ProductName] to:       0       
        -602530036
+IDS__IsRegisterUserDlg_21      1033    WARNING: You must choose the Apache 
root directory above.  (This root contains the directories bin, htdocs, etc...) 
    0               -602534547
+IDS__IsRegisterUserDlg_3       1033    InstallShield   0               
-1021924763
+IDS__IsRegisterUserDlg_4       1033    Cancel  0               -1021924763
+IDS__IsRegisterUserDlg_5       1033    {\Tahoma8}{80}  0               
-1021924763
+IDS__IsRegisterUserDlg_6       1033    &Organization:  0               
-1021924763
+IDS__IsRegisterUserDlg_7       1033    The options below must correspond to 
your exiting Apache httpd Web Server installation. 0               -1021924763
+IDS__IsRegisterUserDlg_8       1033    Please enter your name and 
organization.        0               -1021924763
+IDS__IsRegisterUserDlg_9       1033    {&MSSansBold8}Installation Options      
0               -1021924763
+IDS__IsReinstallDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsReinstallDlg_1  1033    < &Back 0               -1021924763
+IDS__IsReinstallDlg_10 1033    &Complete       0               -1021924763
+IDS__IsReinstallDlg_11 1033            0               -1021924763
+IDS__IsReinstallDlg_12 1033    Replace all files whose versions differ from 
that required by the program and all registry entries and shortcuts required by 
the program.       0               -1021924763
+IDS__IsReinstallDlg_13 1033    Replace only missing program files and registry 
entries for installed features. 0               -1021924763
+IDS__IsReinstallDlg_14 1033    Replace all files, registry entries, and 
shortcuts required by the program.     0               -1021924763
+IDS__IsReinstallDlg_2  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsReinstallDlg_3  1033    InstallShield   0               -1021924763
+IDS__IsReinstallDlg_4  1033    Cancel  0               -1021924763
+IDS__IsReinstallDlg_5  1033    Select how you want the program elements 
reinstalled.   0               -1021924763
+IDS__IsReinstallDlg_6  1033    {&MSSansBold8}Reinstallation Mode       0       
        -1021924763
+IDS__IsReinstallDlg_7  1033    &Next > 0               -1021924763
+IDS__IsReinstallDlg_8  1033    No&rmal 0               -1021924763
+IDS__IsReinstallDlg_9  1033    &Minimal        0               -1021924763
+IDS__IsResumeDlg_0     1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsResumeDlg_1     1033    < &Back 0               -1021924763
+IDS__IsResumeDlg_2     1033    Cancel  0               -1021924763
+IDS__IsResumeDlg_3     1033    &Next > 0               -1021924763
+IDS__IsResumeDlg_4     1033    The InstallShield(R) Wizard will complete the 
installation of [ProductName] on your computer. To continue, click Next.  0     
          -1021924763
+IDS__IsResumeDlg_5     1033    The InstallShield(R) Wizard will complete the 
suspended installation of [ProductName] on your computer. To continue, click 
Next.        0               -1021924763
+IDS__IsResumeDlg_6     1033    {&TahomaBold10}Resuming the InstallShield 
Wizard for [ProductName]      0               -1021924763
+IDS__IsResumeDlg_7     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_0       1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsSetupTypeMinDlg_1       1033    < &Back 0               -1021924763
+IDS__IsSetupTypeMinDlg_10      1033    &Next > 0               -1021924763
+IDS__IsSetupTypeMinDlg_11      1033    {&MSSansBold8}&Complete 0               
-1021924763
+IDS__IsSetupTypeMinDlg_12      1033    {&MSSansBold8}Cu&stom   0               
-1021924763
+IDS__IsSetupTypeMinDlg_13      1033            0               -1021924763
+IDS__IsSetupTypeMinDlg_14      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_15      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_16      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CompleteSetupIco.ibd       0               
-1021924763
+IDS__IsSetupTypeMinDlg_17      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DestIcon.ibd       0               -1021924763
+IDS__IsSetupTypeMinDlg_18      1033    Minimum required features will be 
installed.    0               -1021924763
+IDS__IsSetupTypeMinDlg_19      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_2       1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsSetupTypeMinDlg_20      1033    {&MSSansBold8}&Minimal  0               
-1021924763
+IDS__IsSetupTypeMinDlg_21      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CustomSetupIco.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_22      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\CompleteSetupIco.ibd       0               
-1021924763
+IDS__IsSetupTypeMinDlg_23      1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsSetupTypeMinDlg_24      1033    {&MSSansBold8}&Typical  0               
-1021924763
+IDS__IsSetupTypeMinDlg_3       1033    InstallShield   0               
-1021924763
+IDS__IsSetupTypeMinDlg_4       1033    Cancel  0               -1021924763
+IDS__IsSetupTypeMinDlg_5       1033    All program features will be installed. 
(Requires the most disk space.) 0               -1021924763
+IDS__IsSetupTypeMinDlg_6       1033    Choose which program features you want 
installed and where they will be installed. Recommended for advanced users.     
 0               -1021924763
+IDS__IsSetupTypeMinDlg_7       1033    Choose the setup type that best suits 
your needs.       0               -1021924763
+IDS__IsSetupTypeMinDlg_8       1033    Please select a setup type.     0       
        -1021924763
+IDS__IsSetupTypeMinDlg_9       1033    {&MSSansBold8}Setup Type        0       
        -1021924763
+IDS__IsStartCopyDlg_0  1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsStartCopyDlg_1  1033    < &Back 0               -1021924763
+IDS__IsStartCopyDlg_2  1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS__IsStartCopyDlg_3  1033    InstallShield   0               -1021924763
+IDS__IsStartCopyDlg_4  1033    Cancel  0               -1021924763
+IDS__IsStartCopyDlg_5  1033    The wizard is ready to begin installation.      
0               -1021924763
+IDS__IsStartCopyDlg_6  1033    Click Next to begin the installation.   0       
        -1021924763
+IDS__IsStartCopyDlg_7  1033    If you want to review or change any of your 
installation settings, click Back. Click Cancel to exit the wizard. 0           
    -1021924763
+IDS__IsStartCopyDlg_8  1033    {&MSSansBold8}Ready to Install  0               
-1021924763
+IDS__IsStartCopyDlg_9  1033    &Next > 0               -1021924763
+IDS__IsUserExit_0      1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsUserExit_1      1033    < &Back 0               -1021924763
+IDS__IsUserExit_10     1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsUserExit_2      1033    Cancel  0               -1021924763
+IDS__IsUserExit_3      1033    &Finish 0               -1021924763
+IDS__IsUserExit_4      1033    Your system has not been modified. To install 
this program at a later time, please run the installation again.  0             
  -1021924763
+IDS__IsUserExit_5      1033    Click Finish to exit the wizard.        0       
        -1021924763
+IDS__IsUserExit_6      1033    You can either keep any existing installed 
elements on your system to continue this installation at a later time or you 
can restore your system to its original state prior to the installation.        
0               -1021924763
+IDS__IsUserExit_7      1033    Click Restore or Continue Later to exit the 
wizard.     0               -1021924763
+IDS__IsUserExit_8      1033    {&TahomaBold10}InstallShield Wizard Completed   
0               -1021924763
+IDS__IsUserExit_9      1033    The wizard was interrupted before [ProductName] 
could be completely installed.  0               -1021924763
+IDS__IsVerifyReadyDlg_0        1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsVerifyReadyDlg_1        1033    < &Back 0               -1021924763
+IDS__IsVerifyReadyDlg_10       1033    {&MSSansBold8}Ready to Repair the 
Program       0               -1021924763
+IDS__IsVerifyReadyDlg_11       1033    {&MSSansBold8}Ready to Install the 
Program      0               -1021924763
+IDS__IsVerifyReadyDlg_12       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsVerifyReadyDlg_13       1033    Serial: [SERIALNUMBER]  0               
-1021924763
+IDS__IsVerifyReadyDlg_13X      1033    Serial: [ISX_SERIALNUM] 0               
-1021924763
+IDS__IsVerifyReadyDlg_14       1033    Company: [COMPANYNAME]  0               
-1021924763
+IDS__IsVerifyReadyDlg_15       1033    Name: [USERNAME]        0               
-1021924763
+IDS__IsVerifyReadyDlg_16       1033    User Information:       0               
-1021924763
+IDS__IsVerifyReadyDlg_17       1033    [INSTALLDIR]    0               
-1021924763
+IDS__IsVerifyReadyDlg_18       1033    Destination Folder:     0               
-1021924763
+IDS__IsVerifyReadyDlg_19       1033    [SelectedSetupType]     0               
-1021924763
+IDS__IsVerifyReadyDlg_2        1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsVerifyReadyDlg_20       1033    Setup Type:     0               
-1021924763
+IDS__IsVerifyReadyDlg_21       1033    Current Settings:       0               
-1021924763
+IDS__IsVerifyReadyDlg_22       1033    [ProductName] will be installed to 
[INSTALLDIR] 0               1553390316
+IDS__IsVerifyReadyDlg_3        1033    InstallShield   0               
-1021924763
+IDS__IsVerifyReadyDlg_4        1033    Cancel  0               -1021924763
+IDS__IsVerifyReadyDlg_5        1033    The wizard is ready to begin 
installation.      0               -1021924763
+IDS__IsVerifyReadyDlg_6        1033    Click Install to begin the 
installation.        0               -1021924763
+IDS__IsVerifyReadyDlg_7        1033    If you want to review or change any of 
your installation settings, click Back. Click Cancel to exit the wizard. 0      
         -1021924763
+IDS__IsVerifyReadyDlg_8        1033    {&MSSansBold8}Ready to Modify the 
Program       0               -1021924763
+IDS__IsVerifyReadyDlg_9        1033    &Install        0               
-1021924763
+IDS__IsVerifyRemoveAllDlg_0    1033    [ProductName] - InstallShield Wizard    
0               -1021924763
+IDS__IsVerifyRemoveAllDlg_1    1033    < &Back 0               -1021924763
+IDS__IsVerifyRemoveAllDlg_10   1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS__IsVerifyRemoveAllDlg_2    1033    {&MSSWhiteSerif8}InstallShield  0       
        -1021924763
+IDS__IsVerifyRemoveAllDlg_3    1033    InstallShield   0               
-1021924763
+IDS__IsVerifyRemoveAllDlg_4    1033    Cancel  0               -1021924763
+IDS__IsVerifyRemoveAllDlg_5    1033    You have chosen to remove the program 
from your system. 0               -1021924763
+IDS__IsVerifyRemoveAllDlg_6    1033    Click Remove to remove [ProductName] 
from your computer. After removal, this program will no longer be available for 
use.       0               -1021924763
+IDS__IsVerifyRemoveAllDlg_7    1033    If you want to review or change any 
settings, click Back.       0               -1021924763
+IDS__IsVerifyRemoveAllDlg_8    1033    {&MSSansBold8}Remove the Program        
0               -1021924763
+IDS__IsVerifyRemoveAllDlg_9    1033    &Remove 0               -1021924763
+IDS__IsWelcomeDlg_0    1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__IsWelcomeDlg_1    1033    < &Back 0               -1021924763
+IDS__IsWelcomeDlg_2    1033    Cancel  0               -1021924763
+IDS__IsWelcomeDlg_3    1033    &Next > 0               -1021924763
+IDS__IsWelcomeDlg_4    1033    {&TahomaBold10}Welcome to the InstallShield 
Wizard for [ProductName]    0               -1021924763
+IDS__IsWelcomeDlg_5    1033    The InstallShield(R) Wizard will install 
[ProductName] on your computer. To continue, click Next.       0               
-1021924763
+IDS__IsWelcomeDlg_6    1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBitmap.ibd 0               -1021924763
+IDS__IsWelcomeDlg_7    1033    WARNING: This program is protected by copyright 
law and international treaties. 0               -1021924763
+IDS__SetupTips_0       1033    [ProductName] - InstallShield Wizard    0       
        -1021924763
+IDS__TargetReq_DESC_COLOR      1033    The color settings of your system are 
not adequate for running [ProductName].   0               -1021924763
+IDS__TargetReq_DESC_OS 1033    The operating system is not adequate for 
running [ProductName]. 0               -1021924763
+IDS__TargetReq_DESC_PROCESSOR  1033    The processor is not adequate for 
running [ProductName].        0               -1021924763
+IDS__TargetReq_DESC_RAM        1033    The amount of RAM is not adequate for 
running [ProductName].    0               -1021924763
+IDS__TargetReq_DESC_RESOLUTION 1033    The screen resolution is not adequate 
for running [ProductName].        0               -1021924763
+IDS_ACTIONTEXT_1       1033    Advertising application 0               
-1021924763
+IDS_ACTIONTEXT_10      1033    Computing space requirements    0               
-1021924763
+IDS_ACTIONTEXT_100     1033    MIME Content Type: [1], Extension: [2]  0       
        -1021924763
+IDS_ACTIONTEXT_101     1033    Unregistering program identifiers       0       
        -1021924763
+IDS_ACTIONTEXT_102     1033    ProgID: [1]     0               -1021924763
+IDS_ACTIONTEXT_103     1033    Unregistering type libraries    0               
-1021924763
+IDS_ACTIONTEXT_104     1033    LibID: [1]      0               -1021924763
+IDS_ACTIONTEXT_105     1033    Updating environment strings    0               
-1021924763
+IDS_ACTIONTEXT_106     1033    Name: [1], Value: [2], Action [3]       0       
        -1021924763
+IDS_ACTIONTEXT_107     1033    Writing INI file values 0               
-1021924763
+IDS_ACTIONTEXT_108     1033    File: [1],  Section: [2],  Key: [3], Value: [4] 
0               -1021924763
+IDS_ACTIONTEXT_109     1033    Writing system registry values  0               
-1021924763
+IDS_ACTIONTEXT_11      1033    Creating folders        0               
-1021924763
+IDS_ACTIONTEXT_110     1033    Key: [1], Name: [2], Value: [3] 0               
-1021924763
+IDS_ACTIONTEXT_111     1033    Registering COM+ Applications and Components    
0               -1021924763
+IDS_ACTIONTEXT_112     1033    AppId: [1]{{, AppType: [2], Users: [3], RSN: 
[4]}}      0               -1021924763
+IDS_ACTIONTEXT_113     1033    Unregistering COM+ Applications and Components  
0               -1021924763
+IDS_ACTIONTEXT_114     1033    AppId: [1]{{, AppType: [2]}}    0               
-1021924763
+IDS_ACTIONTEXT_115     1033    Searching for related applications      0       
        -1021924763
+IDS_ACTIONTEXT_116     1033    Found application: [1]  0               
-1021924763
+IDS_ACTIONTEXT_117     1033    Migrating feature states from related 
applications      0               -1021924763
+IDS_ACTIONTEXT_118     1033    Application: [1]        0               
-1021924763
+IDS_ACTIONTEXT_119     1033    Removing applications   0               
-1021924763
+IDS_ACTIONTEXT_12      1033    Folder: [1]     0               -1021924763
+IDS_ACTIONTEXT_120     1033    Application: [1], Command line: [2]     0       
        -1021924763
+IDS_ACTIONTEXT_121     1033    Installing system catalog       0               
-1021924763
+IDS_ACTIONTEXT_122     1033    File: [1],  Dependencies: [2]   0               
-1021924763
+IDS_ACTIONTEXT_123     1033    Creating IIS Virtual Roots...   0               
-1021924763
+IDS_ACTIONTEXT_124     1033    Removing IIS Virtual Roots...   0               
-1021924763
+IDS_ACTIONTEXT_13      1033    Creating shortcuts      0               
-1021924763
+IDS_ACTIONTEXT_14      1033    Shortcut: [1]   0               -1021924763
+IDS_ACTIONTEXT_15      1033    Deleting services       0               
-1021924763
+IDS_ACTIONTEXT_16      1033    Service: [1]    0               -1021924763
+IDS_ACTIONTEXT_17      1033    Creating duplicate files        0               
-1021924763
+IDS_ACTIONTEXT_18      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
+IDS_ACTIONTEXT_19      1033    Computing space requirements    0               
-1021924763
+IDS_ACTIONTEXT_2       1033    Allocating registry space       0               
-1021924763
+IDS_ACTIONTEXT_20      1033    Generating script operations for action:        
0               -1021924763
+IDS_ACTIONTEXT_21      1033    [1]     0               -1021924763
+IDS_ACTIONTEXT_22      1033    Copying files to the network    0               
-1021924763
+IDS_ACTIONTEXT_23      1033    File: [1], Directory: [9], Size: [6]    0       
        -1021924763
+IDS_ACTIONTEXT_24      1033    Copying new files       0               
-1021924763
+IDS_ACTIONTEXT_25      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
+IDS_ACTIONTEXT_26      1033    Installing ODBC components      0               
-1021924763
+IDS_ACTIONTEXT_27      1033    Installing new services 0               
-1021924763
+IDS_ACTIONTEXT_28      1033    Service: [2]    0               -1021924763
+IDS_ACTIONTEXT_29      1033    Validating install      0               
-1021924763
+IDS_ACTIONTEXT_3       1033    Free space: [1] 0               -1021924763
+IDS_ACTIONTEXT_30      1033    Evaluating launch conditions    0               
-1021924763
+IDS_ACTIONTEXT_31      1033    Moving files    0               -1021924763
+IDS_ACTIONTEXT_32      1033    File: [1],  Directory: [9],  Size: [6]  0       
        -1021924763
+IDS_ACTIONTEXT_33      1033    Patching files  0               -1021924763
+IDS_ACTIONTEXT_34      1033    File: [1],  Directory: [2],  Size: [3]  0       
        -1021924763
+IDS_ACTIONTEXT_35      1033    Updating component registration 0               
-1021924763
+IDS_ACTIONTEXT_36      1033    Publishing qualified components 0               
-1021924763
+IDS_ACTIONTEXT_37      1033    Component ID: [1], Qualifier: [2]       0       
        -1021924763
+IDS_ACTIONTEXT_38      1033    Publishing product features     0               
-1021924763
+IDS_ACTIONTEXT_39      1033    Feature: [1]    0               -1021924763
+IDS_ACTIONTEXT_4       1033    Searching for installed applications    0       
        -1021924763
+IDS_ACTIONTEXT_40      1033    Publishing product information  0               
-1021924763
+IDS_ACTIONTEXT_41      1033    Registering class servers       0               
-1021924763
+IDS_ACTIONTEXT_42      1033    Class ID: [1]   0               -1021924763
+IDS_ACTIONTEXT_43      1033    Registering extension servers   0               
-1021924763
+IDS_ACTIONTEXT_44      1033    Extension: [1]  0               -1021924763
+IDS_ACTIONTEXT_45      1033    Registering fonts       0               
-1021924763
+IDS_ACTIONTEXT_46      1033    Font: [1]       0               -1021924763
+IDS_ACTIONTEXT_47      1033    Registering MIME info   0               
-1021924763
+IDS_ACTIONTEXT_48      1033    MIME Content Type: [1], Extension: [2]  0       
        -1021924763
+IDS_ACTIONTEXT_49      1033    Registering product     0               
-1021924763
+IDS_ACTIONTEXT_5       1033    Property: [1], Signature: [2]   0               
-1021924763
+IDS_ACTIONTEXT_50      1033    [1]     0               -1021924763
+IDS_ACTIONTEXT_51      1033    Registering program identifiers 0               
-1021924763
+IDS_ACTIONTEXT_52      1033    ProgID: [1]     0               -1021924763
+IDS_ACTIONTEXT_53      1033    Registering type libraries      0               
-1021924763
+IDS_ACTIONTEXT_54      1033    LibID: [1]      0               -1021924763
+IDS_ACTIONTEXT_55      1033    Registering user        0               
-1021924763
+IDS_ACTIONTEXT_56      1033    [1]     0               -1021924763
+IDS_ACTIONTEXT_57      1033    Removing duplicated files       0               
-1021924763
+IDS_ACTIONTEXT_58      1033    File: [1], Directory: [9]       0               
-1021924763
+IDS_ACTIONTEXT_59      1033    Updating environment strings    0               
-1021924763
+IDS_ACTIONTEXT_6       1033    Binding executables     0               
-1021924763
+IDS_ACTIONTEXT_60      1033    Name: [1], Value: [2], Action [3]       0       
        -1021924763
+IDS_ACTIONTEXT_61      1033    Removing files  0               -1021924763
+IDS_ACTIONTEXT_62      1033    File: [1], Directory: [9]       0               
-1021924763
+IDS_ACTIONTEXT_63      1033    Removing folders        0               
-1021924763
+IDS_ACTIONTEXT_64      1033    Folder: [1]     0               -1021924763
+IDS_ACTIONTEXT_65      1033    Removing INI file entries       0               
-1021924763
+IDS_ACTIONTEXT_66      1033    File: [1],  Section: [2],  Key: [3], Value: [4] 
0               -1021924763
+IDS_ACTIONTEXT_67      1033    Removing ODBC components        0               
-1021924763
+IDS_ACTIONTEXT_68      1033    Removing system registry values 0               
-1021924763
+IDS_ACTIONTEXT_69      1033    Key: [1], Name: [2]     0               
-1021924763
+IDS_ACTIONTEXT_7       1033    File: [1]       0               -1021924763
+IDS_ACTIONTEXT_70      1033    Removing shortcuts      0               
-1021924763
+IDS_ACTIONTEXT_71      1033    Shortcut: [1]   0               -1021924763
+IDS_ACTIONTEXT_72      1033    Searching for qualifying products       0       
        -1021924763
+IDS_ACTIONTEXT_73      1033    Rolling back action:    0               
-1021924763
+IDS_ACTIONTEXT_74      1033    [1]     0               -1021924763
+IDS_ACTIONTEXT_75      1033    Removing backup files   0               
-1021924763
+IDS_ACTIONTEXT_76      1033    File: [1]       0               -1021924763
+IDS_ACTIONTEXT_77      1033    Registering modules     0               
-1021924763
+IDS_ACTIONTEXT_78      1033    File: [1], Folder: [2]  0               
-1021924763
+IDS_ACTIONTEXT_79      1033    Unregistering modules   0               
-1021924763
+IDS_ACTIONTEXT_8       1033    Searching for qualifying products       0       
        -1021924763
+IDS_ACTIONTEXT_80      1033    File: [1], Folder: [2]  0               
-1021924763
+IDS_ACTIONTEXT_81      1033    Initializing ODBC directories   0               
-1021924763
+IDS_ACTIONTEXT_82      1033    Starting services       0               
-1021924763
+IDS_ACTIONTEXT_83      1033    Service: [1]    0               -1021924763
+IDS_ACTIONTEXT_84      1033    Stopping services       0               
-1021924763
+IDS_ACTIONTEXT_85      1033    Service: [1]    0               -1021924763
+IDS_ACTIONTEXT_86      1033    Removing moved files    0               
-1021924763
+IDS_ACTIONTEXT_87      1033    File: [1], Directory: [9]       0               
-1021924763
+IDS_ACTIONTEXT_88      1033    Unpublishing Qualified Components       0       
        -1021924763
+IDS_ACTIONTEXT_89      1033    Component ID: [1], Qualifier: [2]       0       
        -1021924763
+IDS_ACTIONTEXT_9       1033    Computing space requirements    0               
-1021924763
+IDS_ACTIONTEXT_90      1033    Unpublishing product features   0               
-1021924763
+IDS_ACTIONTEXT_91      1033    Feature: [1]    0               -1021924763
+IDS_ACTIONTEXT_92      1033    Unpublishing product information        0       
        -1021924763
+IDS_ACTIONTEXT_93      1033    Unregister class servers        0               
-1021924763
+IDS_ACTIONTEXT_94      1033    Class ID: [1]   0               -1021924763
+IDS_ACTIONTEXT_95      1033    Unregistering extension servers 0               
-1021924763
+IDS_ACTIONTEXT_96      1033    Extension: [1]  0               -1021924763
+IDS_ACTIONTEXT_97      1033    Unregistering fonts     0               
-1021924763
+IDS_ACTIONTEXT_98      1033    Font: [1]       0               -1021924763
+IDS_ACTIONTEXT_99      1033    Unregistering MIME info 0               
-1021924763
+IDS_ERROR_0    1033    {{Fatal error: }}       0               -1021924763
+IDS_ERROR_1    1033    Error [1].      0               -1021924763
+IDS_ERROR_10   1033    === Logging started: [Date]  [Time] === 0               
-1021924763
+IDS_ERROR_100  1033    Could not remove shortcut [2]. Verify that the shortcut 
file exists and that you can access it. 0               -1021924763
+IDS_ERROR_101  1033    Could not register type library for file [2].  Contact 
your support personnel.  0               -1021924763
+IDS_ERROR_102  1033    Could not unregister type library for file [2].  
Contact your support personnel.        0               -1021924763
+IDS_ERROR_103  1033    Could not update the INI file [2][3].  Verify that the 
file exists and that you can access it.  0               -1021924763
+IDS_ERROR_104  1033    Could not schedule file [2] to replace file [3] on 
reboot.  Verify that you have write permissions to file [3]. 0               
-1021924763
+IDS_ERROR_105  1033    Error removing ODBC driver manager, ODBC error [2]: 
[3]. Contact your support personnel.        0               -1021924763
+IDS_ERROR_106  1033    Error installing ODBC driver manager, ODBC error [2]: 
[3]. Contact your support personnel.      0               -1021924763
+IDS_ERROR_107  1033    Error removing ODBC driver [4], ODBC error [2]: [3]. 
Verify that you have sufficient privileges to remove ODBC drivers. 0            
   -1021924763
+IDS_ERROR_108  1033    Error installing ODBC driver [4], ODBC error [2]: [3]. 
Verify that the file [4] exists and that you can access it.      0              
 -1021924763
+IDS_ERROR_109  1033    Error configuring ODBC data source [4], ODBC error [2]: 
[3]. Verify that the file [4] exists and that you can access it.        0       
        -1021924763
+IDS_ERROR_11   1033    === Logging stopped: [Date]  [Time] === 0               
-1021924763
+IDS_ERROR_110  1033    Service [2] ([3]) failed to start.  Verify that you 
have sufficient privileges to start system services.        0               
-1021924763
+IDS_ERROR_111  1033    Service [2] ([3]) could not be stopped.  Verify that 
you have sufficient privileges to stop system services.    0               
-1021924763
+IDS_ERROR_112  1033    Service [2] ([3]) could not be deleted.  Verify that 
you have sufficient privileges to remove system services.  0               
-1021924763
+IDS_ERROR_113  1033    Service [2] ([3]) could not be installed.  Verify that 
you have sufficient privileges to install system services.       0              
 -1021924763
+IDS_ERROR_114  1033    Could not update environment variable [2].  Verify that 
you have sufficient privileges to modify environment variables. 0               
-1021924763
+IDS_ERROR_115  1033    You do not have sufficient privileges to complete this 
installation for all users of the machine.  Log on as an administrator and then 
retry this installation. 0               -1021924763
+IDS_ERROR_116  1033    Could not set file security for file [3]. Error: [2].  
Verify that you have sufficient privileges to modify the security permissions 
for this file.     0               -1021924763
+IDS_ERROR_117  1033    Component Services (COM+ 1.0) are not installed on this 
computer.  This installation requires Component Services in order to complete 
successfully.  Component Services are available on Windows 2000.  0             
  -1021924763
+IDS_ERROR_118  1033    Error registering COM+ application.  Contact your 
support personnel for more information.       0               -1021924763
+IDS_ERROR_119  1033    Error unregistering COM+ application.  Contact your 
support personnel for more information.     0               -1021924763
+IDS_ERROR_12   1033    Action start [Time]: [1].       0               
-1021924763
+IDS_ERROR_120  1033    Removing older versions of this application     0       
        -1021924763
+IDS_ERROR_121  1033    Preparing to remove older versions of this application  
0               -1021924763
+IDS_ERROR_122  1033    Error applying patch to file [2].  It has probably been 
updated by other means, and can no longer be modified by this patch.  For more 
information contact your patch vendor.  {{System Error: [3]}}    0              
 -1021924763
+IDS_ERROR_123  1033    [2] cannot install one of its required products. 
Contact your technical support group.  {{System Error: [3].}}  0               
-1021924763
+IDS_ERROR_124  1033    The older version of [2] cannot be removed.  Contact 
your technical support group.  {{System Error [3].}}       0               
-1021924763
+IDS_ERROR_125  1033    The description for service '[2]' ([3]) could not be 
changed.   0               -1021924763
+IDS_ERROR_126  1033    The Windows Installer service cannot update the system 
file [2] because the file is protected by Windows.  You may need to update your 
operating system for this program to work correctly. {{Package version: [3], OS 
Protected version: [4]}} 0               -1021924763
+IDS_ERROR_127  1033    The Windows Installer service cannot update the 
protected Windows file [2]. {{Package version: [3], OS Protected version: [4], 
SFP Error: [5]}} 0               -1021924763
+IDS_ERROR_128  1033    This setup requires Internet Information Server 4.0 or 
higher for configuring IIS Virtual Roots. Please make sure that you have IIS 
4.0 or higher.      0               -1021924763
+IDS_ERROR_129  1033    This setup requires Administrator privileges for 
configuring IIS Virtual Roots. 0               -1021924763
+IDS_ERROR_13   1033    Action ended [Time]: [1]. Return value [2].     0       
        -1021924763
+IDS_ERROR_14   1033    Time remaining: {[1] minutes }{[2] seconds}     0       
        -1021924763
+IDS_ERROR_15   1033    Out of memory. Shut down other applications before 
retrying.    0               -1021924763
+IDS_ERROR_16   1033    Installer is no longer responding.      0               
-1021924763
+IDS_ERROR_17   1033    Installer terminated prematurely.       0               
-1021924763
+IDS_ERROR_18   1033    Please wait while Windows configures [ProductName]      
0               -1021924763
+IDS_ERROR_19   1033    Gathering required information...       0               
-1021924763
+IDS_ERROR_2    1033    Warning [1].    0               -1021924763
+IDS_ERROR_20   1033    {[ProductName] }Setup completed successfully.   0       
        -1021924763
+IDS_ERROR_21   1033    {[ProductName] }Setup failed.   0               
-1021924763
+IDS_ERROR_22   1033    Error reading from file: [2]. {{ System error [3].}}  
Verify that the file exists and that you can access it.   0               
-1021924763
+IDS_ERROR_23   1033    Cannot create the file [3].  A directory with this name 
already exists.  Cancel the installation and try installing to a different 
location.    0               -1021924763
+IDS_ERROR_24   1033    Please insert the disk: [2]     0               
-1021924763
+IDS_ERROR_25   1033    The installer has insufficient privileges to access 
this directory: [2].  The installation cannot continue.  Log on as an 
administrator or contact your system administrator.   0               
-1021924763
+IDS_ERROR_26   1033    Error writing to file [2].  Verify that you have access 
to that directory.      0               -1021924763
+IDS_ERROR_27   1033    Error reading from file [2].  Verify that the file 
exists and that you can access it.   0               -1021924763
+IDS_ERROR_28   1033    Another application has exclusive access to the file 
[2].  Please shut down all other applications, then click Retry.   0            
   -1021924763
+IDS_ERROR_29   1033    There is not enough disk space to install thi file [2]. 
 Free some disk space and click Retry, or click Cancel to exit. 0               
-1021924763
+IDS_ERROR_3    1033    Info [1].       0               -1021924763
+IDS_ERROR_30   1033    Source file not found: [2].  Verify that the file 
exists and that you can access it.    0               -1021924763
+IDS_ERROR_31   1033    Error reading from file: [3]. {{ System error [2].}}  
Verify that the file exists and that you can access it.   0               
-1021924763
+IDS_ERROR_32   1033    Error writing to file: [3]. {{ System error [2].}}  
Verify that you have access to that directory.      0               -1021924763
+IDS_ERROR_33   1033    Source file not found{{(cabinet)}}: [2].  Verify that 
the file exists and that you can access it.       0               -1021924763
+IDS_ERROR_34   1033    Cannot create the directory [2].  A file with this name 
already exists.  Please rename or remove the file and click Retry, or click 
Cancel to exit.     0               -1021924763
+IDS_ERROR_35   1033    The volume [2] is currently unavailable.  Please select 
another.        0               -1021924763
+IDS_ERROR_36   1033    The specified path [2] is unavailable.  0               
-1021924763
+IDS_ERROR_37   1033    Unable to write to the specified folder [2].    0       
        -1021924763
+IDS_ERROR_38   1033    A network error occurred while attempting to read from 
the file [2]     0               -1021924763
+IDS_ERROR_39   1033    An error occurred while attempting to create the 
directory [2]  0               -1021924763
+IDS_ERROR_4    1033    Internal Error [1]. [2]{, [3]}{, [4]}   0               
-1021924763
+IDS_ERROR_40   1033    A network error occurred while attempting to create the 
directory [2]   0               -1021924763
+IDS_ERROR_41   1033    A network error occurred while attempting to open the 
source file cabinet [2].  0               -1021924763
+IDS_ERROR_42   1033    The specified path is too long [2].     0               
-1021924763
+IDS_ERROR_43   1033    The Installer has insufficient privileges to modify the 
file [2].       0               -1021924763
+IDS_ERROR_44   1033    A portion of the path [2] exceeds the length allowed by 
the system.     0               -1021924763
+IDS_ERROR_45   1033    The path [2] contains words that are not valid in 
folders.      0               -1021924763
+IDS_ERROR_46   1033    The path [2] contains an invalid character.     0       
        -1021924763
+IDS_ERROR_47   1033    [2] is not a valid short file name.     0               
-1021924763
+IDS_ERROR_48   1033    Error getting file security: [3] GetLastError: [2]      
0               -1021924763
+IDS_ERROR_49   1033    Invalid Drive: [2]      0               -1021924763
+IDS_ERROR_5    1033    {{Disk full: }} 0               -1021924763
+IDS_ERROR_50   1033    Could not create key [2]. {{ System error [3].}}  
Verify that you have sufficient access to that key, or contact your support 
personnel.        0               -1021924763
+IDS_ERROR_51   1033    Could not open key: [2]. {{ System error [3].}}  Verify 
that you have sufficient access to that key, or contact your support personnel. 
0               -1021924763
+IDS_ERROR_52   1033    Could not delete value [2] from key [3]. {{ System 
error [4].}}  Verify that you have sufficient access to that key, or contact 
your support personnel. 0               -1021924763
+IDS_ERROR_53   1033    Could not delete key [2]. {{ System error [3].}}  
Verify that you have sufficient access to that key, or contact your support 
personnel.        0               -1021924763
+IDS_ERROR_54   1033    Could not read value [2] from key [3]. {{ System error 
[4].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.   0               -1021924763
+IDS_ERROR_55   1033    Could not write value [2] to key [3]. {{ System error 
[4].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.    0               -1021924763
+IDS_ERROR_56   1033    Could not get value names for key [2]. {{ System error 
[3].}}  Verify that you have sufficient access to that key, or contact your 
support personnel.   0               -1021924763
+IDS_ERROR_57   1033    Could not get sub key names for key [2]. {{ System 
error [3].}}  Verify that you have sufficient access to that key, or contact 
your support personnel. 0               -1021924763
+IDS_ERROR_58   1033    Could not read security information for key [2]. {{ 
System error [3].}}  Verify that you have sufficient access to that key, or 
contact your support personnel. 0               -1021924763
+IDS_ERROR_59   1033    Could not increase the available registry space. [2] KB 
of free registry space is required for the installation of this application.    
0               -1021924763
+IDS_ERROR_6    1033    Action [Time]: [1]. [2] 0               -1021924763
+IDS_ERROR_60   1033    Another installation is in progress. You must complete 
that installation before continuing this one.    0               -1021924763
+IDS_ERROR_61   1033    Error accessing secured data. Please make sure the 
Windows Installer is configured properly and try the installation again.     0  
             -1021924763
+IDS_ERROR_62   1033    User [2] has previously initiated an installation for 
product [3].  That user will need to run that installation again before using 
that product.  Your current installation will now continue. 0               
-1021924763
+IDS_ERROR_63   1033    User [2] has previously initiated an installation for 
product [3].  That user will need to run that installation again before using 
that product.       0               -1021924763
+IDS_ERROR_64   1033    Out of disk space -- Volume: '[2]'; required space: [3] 
KB; available space: [4] KB.  Free some disk space and retry.   0               
-1021924763
+IDS_ERROR_65   1033    Are you sure you want to cancel?        0               
-1021924763
+IDS_ERROR_66   1033    The file [2][3] is being held in use{ by the following 
process: Name: [4], ID: [5], Window Title: [6]}.  Close that application and 
retry.      0               -1021924763
+IDS_ERROR_67   1033    The product [2] is already installed, preventing the 
installation of this product.  The two products are incompatible.  0            
   -1021924763
+IDS_ERROR_68   1033    Out of disk space -- Volume: [2]; required space: [3] 
KB; available space: [4] KB.  If rollback is disabled, enough space is 
available. Click Cancel to quit, Retry to check available disk space again, or 
Ignore to continue without rollback.        0               -1021924763
+IDS_ERROR_69   1033    Could not access network location [2].  0               
-1021924763
+IDS_ERROR_7    1033    [ProductName]   0               -1021924763
+IDS_ERROR_70   1033    The following applications should be closed before 
continuing the installation: 0               -1021924763
+IDS_ERROR_71   1033    Could not find any previously installed compliant 
products on the machine for installing this product.  0               
-1021924763
+IDS_ERROR_72   1033    The key [2] is not valid.  Verify that you entered the 
correct key.     0               -1021924763
+IDS_ERROR_73   1033    The installer must restart your system before 
configuration of [2] can continue.  Click Yes to restart now or No if you plan 
to restart later.  0               -1021924763
+IDS_ERROR_74   1033    You must restart your system for the configuration 
changes made to [2] to take effect. Click Yes to restart now or No if you plan 
to restart later.     0               -1021924763
+IDS_ERROR_75   1033    An installation for [2] is currently suspended.  You 
must undo the changes made by that installation to continue.  Do you want to 
undo those changes?   0               -1021924763
+IDS_ERROR_76   1033    A previous installation for this product is in 
progress.  You must undo the changes made by that installation to continue.  Do 
you want to undo those changes?  0               -1021924763
+IDS_ERROR_77   1033    No valid source could be found for product [2].  The 
Windows Installer cannot continue. 0               -1021924763
+IDS_ERROR_78   1033    Installation operation completed successfully.  0       
        -1021924763
+IDS_ERROR_79   1033    Installation operation failed.  0               
-1021924763
+IDS_ERROR_8    1033    {[2]}{, [3]}{, [4]}     0               -1021924763
+IDS_ERROR_80   1033    Product: [2] -- [3]     0               -1021924763
+IDS_ERROR_81   1033    You may either restore your computer to its previous 
state or continue the installation later. Would you like to restore?       0    
           -1021924763
+IDS_ERROR_82   1033    An error occurred while writing installation 
information to disk.  Check to make sure enough disk space is available, and 
click Retry, or Cancel to end the installation.       0               
-1021924763
+IDS_ERROR_83   1033    One or more of the files required to restore your 
computer to its previous state could not be found.  Restoration will not be 
possible. 0               -1021924763
+IDS_ERROR_84   1033    The path [2] is not valid.  Please specify a valid 
path.        0               -1021924763
+IDS_ERROR_85   1033    Out of memory. Shut down other applications before 
retrying.    0               -1021924763
+IDS_ERROR_86   1033    There is no disk in drive [2]. Please insert one and 
click Retry, or click Cancel to go back to the previously selected volume. 0    
           -1021924763
+IDS_ERROR_87   1033    There is no disk in drive [2]. Please insert one and 
click Retry, or click Cancel to return to the browse dialog and select a 
different volume. 0               -1021924763
+IDS_ERROR_88   1033    The folder [2] does not exist.  Please enter a path to 
an existing folder.      0               -1021924763
+IDS_ERROR_89   1033    You have insufficient privileges to read this folder.   
0               -1021924763
+IDS_ERROR_9    1033    Message type: [1], Argument: [2]        0               
-1021924763
+IDS_ERROR_90   1033    A valid destination folder for the installation could 
not be determined.        0               -1021924763
+IDS_ERROR_91   1033    Error attempting to read from the source installation 
database: [2].    0               -1021924763
+IDS_ERROR_92   1033    Scheduling reboot operation: Renaming file [2] to [3]. 
Must reboot to complete operation.       0               -1021924763
+IDS_ERROR_93   1033    Scheduling reboot operation: Deleting file [2]. Must 
reboot to complete operation.      0               -1021924763
+IDS_ERROR_94   1033    Module [2] failed to register.  HRESULT [3].  Contact 
your support personnel.   0               -1021924763
+IDS_ERROR_95   1033    Module [2] failed to unregister.  HRESULT [3].  Contact 
your support personnel. 0               -1021924763
+IDS_ERROR_96   1033    Failed to cache package [2]. Error: [3]. Contact your 
support personnel.        0               -1021924763
+IDS_ERROR_97   1033    Could not register font [2].  Verify that you have 
sufficient permissions to install fonts, and that the system supports this 
font.     0               -1021924763
+IDS_ERROR_98   1033    Could not unregister font [2]. Verify that you have 
sufficient permissions to remove fonts.     0               -1021924763
+IDS_ERROR_99   1033    Could not create shortcut [2]. Verify that the 
destination folder exists and that you can access it.    0               
-1021924763
+IDS_ERROR_SN_INVALID   1033    The serial number is invalid.   0               
-1021924763
+IDS_ISSCRIPT_VERSION_MISSING   1033    The InstallScript engine is missing 
from this machine.  If available, please run ISScript.msi, or contact your 
support personnel for further assistance.        0               -1021924763
+IDS_ISSCRIPT_VERSION_OLD       1033    The InstallScript engine on this 
machine is older than the version required to run this setup.  If available, 
please install the latest version of ISScript.msi, or contact your support 
personnel for further assistance.      0               -1021924763
+IDS_PRODUCT_DEFAULT_1  1033    Your Product Name       0       
SYSTEM_GENERATED        -1021924763
+IDS_SetupTips_1        1033    OK      0               -1021924763
+IDS_SetupTips_10       1033    Will be installed on first use. (Available only 
if the feature supports this option.)   0               -1021924763
+IDS_SetupTips_11       1033    Will be installed to run from the network. 
(Available only if the feature supports this option.)        0               
-1021924763
+IDS_SetupTips_12       1033    This install state means the feature... 0       
        -1021924763
+IDS_SetupTips_13       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\IsDialogBanner.ibd 0               -1021924763
+IDS_SetupTips_14       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\NetworkInstall.ico 0               -1021924763
+IDS_SetupTips_15       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\Install.ico        0               -1021924763
+IDS_SetupTips_16       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallFirstUse.ico        0               
-1021924763
+IDS_SetupTips_17       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallPartial.ico 0               -1021924763
+IDS_SetupTips_18       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\DontInstall.ico    0               -1021924763
+IDS_SetupTips_19       1033    <ISProductFolder>\Redist\Language 
Independent\OS Independent\InstallStateMenu.ico       0               
-1021924763
+IDS_SetupTips_2        1033    {&MSSWhiteSerif8}InstallShield  0               
-1021924763
+IDS_SetupTips_3        1033    InstallShield   0               -1021924763
+IDS_SetupTips_4        1033    Custom Setup allows you to selectively install 
program features.        0               -1021924763
+IDS_SetupTips_5        1033    {&MSSansBold8}Custom Setup Tips 0               
-1021924763
+IDS_SetupTips_6        1033    Will not be installed.  0               
-1021924763
+IDS_SetupTips_7        1033    Will have some subfeatures installed to the 
local hard drive. (Available only if the feature has subfeatures.)  0           
    -1021924763
+IDS_SetupTips_8        1033    Will be completely installed to the local hard 
drive.   0               -1021924763
+IDS_SetupTips_9        1033    The icon next to the feature name indicates the 
install state of the feature. Click the icon to drop down the install state 
menu for each feature.      0               -1021924763
+IDS_STANDARD_USE_SETUPEXE      1033    This installation cannot be run by 
directly launching the MSI package. You must run setup.exe.  0               
-1021924763
+IDS_UITEXT_0   1033    bytes   0               -1021924763
+IDS_UITEXT_1   1033    GB      0               -1021924763
+IDS_UITEXT_10  1033    This feature will remain uninstalled.   0               
-1021924763
+IDS_UITEXT_11  1033    This feature will be set to be installed when required. 
0               -1021924763
+IDS_UITEXT_12  1033    This feature will be installed to run from CD.  0       
        -1021924763
+IDS_UITEXT_13  1033    This feature will be installed on the local hard drive. 
0               -1021924763
+IDS_UITEXT_14  1033    This feature will be installed to run from the network. 
0               -1021924763
+IDS_UITEXT_15  1033    This feature will become unavailable.   0               
-1021924763
+IDS_UITEXT_16  1033    Will be installed when required.        0               
-1021924763
+IDS_UITEXT_17  1033    This feature will be available to run from CD.  0       
        -1021924763
+IDS_UITEXT_18  1033    This feature will be installed on your local hard 
drive.        0               -1021924763
+IDS_UITEXT_19  1033    This feature will be available to run from the network. 
0               -1021924763
+IDS_UITEXT_2   1033    KB      0               -1021924763
+IDS_UITEXT_20  1033    This feature will be uninstalled completely, and you 
won't be able to run it from CD.   0               -1021924763
+IDS_UITEXT_21  1033    This feature was run from the CD but will be set to be 
installed when required. 0               -1021924763
+IDS_UITEXT_22  1033    This feature will continue to be run from the CD        
0               -1021924763
+IDS_UITEXT_23  1033    This feature was run from the CD but will be installed 
on the local hard drive. 0               -1021924763
+IDS_UITEXT_24  1033    This feature frees up [1] on your hard drive.   0       
        -1021924763
+IDS_UITEXT_25  1033    This feature requires [1] on your hard drive.   0       
        -1021924763
+IDS_UITEXT_26  1033    Compiling cost for this feature...      0               
-1021924763
+IDS_UITEXT_27  1033    This feature will be completely removed.        0       
        -1021924763
+IDS_UITEXT_28  1033    This feature will be removed from your local hard drive 
but will be set to be installed when required.  0               -1021924763
+IDS_UITEXT_29  1033    This feature will be removed from your local hard drive 
but will still be available to run from CD.     0               -1021924763
+IDS_UITEXT_3   1033    MB      0               -1021924763
+IDS_UITEXT_30  1033    This feature will remain on your local hard drive.      
0               -1021924763
+IDS_UITEXT_31  1033    This feature will be removed from your local hard 
drive, but will be still available to run from the network.   0               
-1021924763
+IDS_UITEXT_32  1033    This feature will be uninstalled completely, and you 
won't be able to run it from the network.  0               -1021924763
+IDS_UITEXT_33  1033    This feature was run from the network but will be 
installed when required.      0               -1021924763
+IDS_UITEXT_34  1033    This feature was run from the network but will be 
installed on the local hard drive.    0               -1021924763
+IDS_UITEXT_35  1033    This feature will continue to be run from the network   
0               -1021924763
+IDS_UITEXT_36  1033    This feature frees up [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures free up [4] on your hard 
drive.   0               -1021924763
+IDS_UITEXT_37  1033    This feature frees up [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures require [4] on your hard 
drive.   0               -1021924763
+IDS_UITEXT_38  1033    This feature requires [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures free up [4] on your hard 
drive.   0               -1021924763
+IDS_UITEXT_39  1033    This feature requires [1] on your hard drive. It has 
[2] of [3] subfeatures selected. The subfeatures require [4] on your hard 
drive.   0               -1021924763
+IDS_UITEXT_4   1033    This feature will not be available.     0               
-1021924763
+IDS_UITEXT_40  1033    Time remaining: {[1] min }[2] sec       0               
-1021924763
+IDS_UITEXT_41  1033    Available       0               -1021924763
+IDS_UITEXT_42  1033    Differences     0               -1021924763
+IDS_UITEXT_43  1033    Required        0               -1021924763
+IDS_UITEXT_44  1033    Disk Size       0               -1021924763
+IDS_UITEXT_45  1033    Volume  0               -1021924763
+IDS_UITEXT_46  1033    This feature, and all subfeatures, will be installed to 
run from the network.   0               -1021924763
+IDS_UITEXT_47  1033    This feature, and all subfeatures, will be installed to 
run from the CD.        0               -1021924763
+IDS_UITEXT_48  1033    This feature, and all subfeatures, will be installed on 
local hard drive.       0               -1021924763
+IDS_UITEXT_5   1033    This feature will be installed when required.   0       
        -1021924763
+IDS_UITEXT_6   1033    This feature will be installed to run from CD.  0       
        -1021924763
+IDS_UITEXT_7   1033    This feature will be installed on local hard drive.     
0               -1021924763
+IDS_UITEXT_8   1033    This feature will be installed to run from network.     
0               -1021924763
+IDS_UITEXT_9   1033    Fldr|New Folder 0               -1021924763
+NEW_STRING1    1033    [ProductName] Installer Information     0               
1687606380
+NEW_STRING6    1033    [INSTALLDIR] is not a valid path to an installed 
instance of Apache.    0               1687569580
+NEW_STRING9    1033    &Retry  0               1687571628

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRoot.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRoot.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRoot.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-VRootKey       VRootName       VRootDir        VRootProps      VRootAppName    
VRootDefDoc     Condition
-s50    l255    s50     i4      L255    L255    S255
-ISVRoot        VRootKey
+VRootKey       VRootName       VRootDir        VRootProps      VRootAppName    
VRootDefDoc     Condition
+s50    l255    s50     i4      L255    L255    S255
+ISVRoot        VRootKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRootAppMaps.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRootAppMaps.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ISVRootAppMaps.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-VRootKey       VRootAppMapKey  Extension       ExecPath        Verb    
AppMapProps
-s255   s255    l50     l255    l255    i4
-ISVRootAppMaps VRootKey        VRootAppMapKey
+VRootKey       VRootAppMapKey  Extension       ExecPath        Verb    
AppMapProps
+s255   s255    l50     l255    l255    i4
+ISVRootAppMaps VRootKey        VRootAppMapKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Icon.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Icon.idt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Icon.idt  Fri Jul 16 
09:27:17 2004
@@ -1,5 +1,5 @@
-Name   Data    ISBuildSourcePath       ISIconIndex
-s72    V0      S255    I2
-Icon   Name
-ARPPRODUCTICON.exe             <ISProjectFolder>\resource\apache.ico   0
-CheckforUpdates.exe            <ISProductFolder>\redist\Language 
Independent\OS Independent\UpdateService.ico  0
+Name   Data    ISBuildSourcePath       ISIconIndex
+s72    V0      S255    I2
+Icon   Name
+ARPPRODUCTICON.exe             <ISProjectFolder>\resource\apache.ico   0
+CheckforUpdates.exe            <ISProductFolder>\redist\Language 
Independent\OS Independent\UpdateService.ico  0

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniFile.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniFile.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-IniFile        FileName        DirProperty     Section Key     Value   Action  
Component_
-s72    l255    S72     l255    l128    s255    i2      s72
-IniFile        IniFile
+IniFile        FileName        DirProperty     Section Key     Value   Action  
Component_
+s72    l255    S72     l255    l128    s255    i2      s72
+IniFile        IniFile

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniLocator.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniLocator.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/IniLocator.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature_     FileName        Section Key     Field   Type
-s72    s255    s96     s128    I2      I2
-IniLocator     Signature_
+Signature_     FileName        Section Key     Field   Type
+s72    s255    s96     s128    I2      I2
+IniLocator     Signature_

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallExecuteSequence.idt
==============================================================================
--- 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallExecuteSequence.idt    
    (original)
+++ 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallExecuteSequence.idt    
    Fri Jul 16 09:27:17 2004
@@ -1,78 +1,78 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-InstallExecuteSequence Action
-AllocateRegistrySpace  NOT Installed   750     AllocateRegistrySpace   
-AppSearch              25      AppSearch       
-BindImage              2100    BindImage       
-CCPSearch      CCP_TEST        200     CCPSearch       
-CostFinalize           500     CostFinalize    
-CostInitialize         350     CostInitialize  
-CreateFolders          1850    CreateFolders   
-CreateShortcuts                2150    CreateShortcuts 
-DeleteServices VersionNT       1000    DeleteServices  
-DuplicateFiles         2050    DuplicateFiles  
-FileCost               400     FileCost        
-FindRelatedProducts    NOT ISSETUPDRIVEN       100     FindRelatedProducts     
-InstallFiles           1950    InstallFiles    
-InstallFinalize                3150    InstallFinalize 
-InstallInitialize              700     InstallInitialize       
-InstallODBC            2600    InstallODBC     
-InstallServices        VersionNT       2750    InstallServices 
-InstallValidate                650     InstallValidate 
-ISInitAllUsers VersionNT And NOT Installed     525     ISInitAllUsers  
-IsolateComponents              450     IsolateComponents       
-ISSelfRegisterCosting          701             
-ISSelfRegisterFiles            3149            
-ISSelfRegisterFinalize         3151            
-ISUnSelfRegisterFiles          702             
-LaunchConditions               50      LaunchConditions        
-MigrateFeatureStates           600     MigrateFeatureStates    
-MoveFiles              1900    MoveFiles       
-MsiPublishAssemblies           3025    MsiPublishAssemblies    
-MsiUnpublishAssemblies         875     MsiUnpublishAssemblies  
-PatchFiles             2000    PatchFiles      
-ProcessComponents              800     ProcessComponents       
-PublishComponents              3000    PublishComponents       
-PublishFeatures                3050    PublishFeatures 
-PublishProduct         3100    PublishProduct  
-RegisterClassInfo              2200    RegisterClassInfo       
-RegisterComPlus                2700    RegisterComPlus 
-RegisterExtensionInfo          2250    RegisterExtensionInfo   
-RegisterFonts          2550    RegisterFonts   
-RegisterMIMEInfo               2350    RegisterMIMEInfo        
-RegisterProduct                2950    RegisterProduct 
-RegisterProgIdInfo             2300    RegisterProgIdInfo      
-RegisterTypeLibraries          2650    RegisterTypeLibraries   
-RegisterUser           2900    RegisterUser    
-RemoveDuplicateFiles           1700    RemoveDuplicateFiles    
-RemoveEnvironmentStrings               1650    RemoveEnvironmentStrings        
-RemoveExistingProducts         675     RemoveExistingProducts  
-RemoveFiles            1750    RemoveFiles     
-RemoveFolders          1800    RemoveFolders   
-RemoveIniValues                1550    RemoveIniValues 
-RemoveODBC             1200    RemoveODBC      
-RemoveRegistryValues           1300    RemoveRegistryValues    
-RemoveShortcuts                1600    RemoveShortcuts 
-RMCCPSearch    Not CCP_SUCCESS And CCP_TEST    250     RMCCPSearch     
-ScheduleReboot ISSCHEDULEREBOOT        3125    ScheduleReboot  
-SelfRegModules         2850    SelfRegModules  
-SelfUnregModules               1100    SelfUnregModules        
-setAllUsersProfile2K   VersionNT >= 500        330             
-SetAllUsersProfileNT   VersionNT = 400 320             
-SetODBCFolders         550     SetODBCFolders  
-setUserProfileNT       VersionNT       310             
-StartServices  VersionNT       2800    StartServices   
-StopServices   VersionNT       950     StopServices    
-UnpublishComponents            850     UnpublishComponents     
-UnpublishFeatures              900     UnpublishFeatures       
-UnregisterClassInfo            1350    UnregisterClassInfo     
-UnregisterComPlus              1050    UnregisterComPlus       
-UnregisterExtensionInfo                1400    UnregisterExtensionInfo 
-UnregisterFonts                1250    UnregisterFonts 
-UnregisterMIMEInfo             1500    UnregisterMIMEInfo      
-UnregisterProgIdInfo           1450    UnregisterProgIdInfo    
-UnregisterTypeLibraries                1150    UnregisterTypeLibraries 
-ValidateProductID              300     ValidateProductID       
-WriteEnvironmentStrings                2500    WriteEnvironmentStrings 
-WriteIniValues         2450    WriteIniValues  
-WriteRegistryValues            2400    WriteRegistryValues     
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+InstallExecuteSequence Action
+AllocateRegistrySpace  NOT Installed   750     AllocateRegistrySpace   
+AppSearch              25      AppSearch       
+BindImage              2100    BindImage       
+CCPSearch      CCP_TEST        200     CCPSearch       
+CostFinalize           500     CostFinalize    
+CostInitialize         350     CostInitialize  
+CreateFolders          1850    CreateFolders   
+CreateShortcuts                2150    CreateShortcuts 
+DeleteServices VersionNT       1000    DeleteServices  
+DuplicateFiles         2050    DuplicateFiles  
+FileCost               400     FileCost        
+FindRelatedProducts    NOT ISSETUPDRIVEN       100     FindRelatedProducts     
+InstallFiles           1950    InstallFiles    
+InstallFinalize                3150    InstallFinalize 
+InstallInitialize              700     InstallInitialize       
+InstallODBC            2600    InstallODBC     
+InstallServices        VersionNT       2750    InstallServices 
+InstallValidate                650     InstallValidate 
+ISInitAllUsers VersionNT And NOT Installed     525     ISInitAllUsers  
+IsolateComponents              450     IsolateComponents       
+ISSelfRegisterCosting          701             
+ISSelfRegisterFiles            3149            
+ISSelfRegisterFinalize         3151            
+ISUnSelfRegisterFiles          702             
+LaunchConditions               50      LaunchConditions        
+MigrateFeatureStates           600     MigrateFeatureStates    
+MoveFiles              1900    MoveFiles       
+MsiPublishAssemblies           3025    MsiPublishAssemblies    
+MsiUnpublishAssemblies         875     MsiUnpublishAssemblies  
+PatchFiles             2000    PatchFiles      
+ProcessComponents              800     ProcessComponents       
+PublishComponents              3000    PublishComponents       
+PublishFeatures                3050    PublishFeatures 
+PublishProduct         3100    PublishProduct  
+RegisterClassInfo              2200    RegisterClassInfo       
+RegisterComPlus                2700    RegisterComPlus 
+RegisterExtensionInfo          2250    RegisterExtensionInfo   
+RegisterFonts          2550    RegisterFonts   
+RegisterMIMEInfo               2350    RegisterMIMEInfo        
+RegisterProduct                2950    RegisterProduct 
+RegisterProgIdInfo             2300    RegisterProgIdInfo      
+RegisterTypeLibraries          2650    RegisterTypeLibraries   
+RegisterUser           2900    RegisterUser    
+RemoveDuplicateFiles           1700    RemoveDuplicateFiles    
+RemoveEnvironmentStrings               1650    RemoveEnvironmentStrings        
+RemoveExistingProducts         675     RemoveExistingProducts  
+RemoveFiles            1750    RemoveFiles     
+RemoveFolders          1800    RemoveFolders   
+RemoveIniValues                1550    RemoveIniValues 
+RemoveODBC             1200    RemoveODBC      
+RemoveRegistryValues           1300    RemoveRegistryValues    
+RemoveShortcuts                1600    RemoveShortcuts 
+RMCCPSearch    Not CCP_SUCCESS And CCP_TEST    250     RMCCPSearch     
+ScheduleReboot ISSCHEDULEREBOOT        3125    ScheduleReboot  
+SelfRegModules         2850    SelfRegModules  
+SelfUnregModules               1100    SelfUnregModules        
+setAllUsersProfile2K   VersionNT >= 500        330             
+SetAllUsersProfileNT   VersionNT = 400 320             
+SetODBCFolders         550     SetODBCFolders  
+setUserProfileNT       VersionNT       310             
+StartServices  VersionNT       2800    StartServices   
+StopServices   VersionNT       950     StopServices    
+UnpublishComponents            850     UnpublishComponents     
+UnpublishFeatures              900     UnpublishFeatures       
+UnregisterClassInfo            1350    UnregisterClassInfo     
+UnregisterComPlus              1050    UnregisterComPlus       
+UnregisterExtensionInfo                1400    UnregisterExtensionInfo 
+UnregisterFonts                1250    UnregisterFonts 
+UnregisterMIMEInfo             1500    UnregisterMIMEInfo      
+UnregisterProgIdInfo           1450    UnregisterProgIdInfo    
+UnregisterTypeLibraries                1150    UnregisterTypeLibraries 
+ValidateProductID              300     ValidateProductID       
+WriteEnvironmentStrings                2500    WriteEnvironmentStrings 
+WriteIniValues         2450    WriteIniValues  
+WriteRegistryValues            2400    WriteRegistryValues     

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallShield.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallShield.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallShield.idt Fri Jul 
16 09:27:17 2004
@@ -1,24 +1,24 @@
-Property       Value
-s72    S0
-InstallShield  Property
-ActiveLanguage 1033
-Comments       
-CurrentMedia   x86-winntmod_aspdotnet
-DefaultProductConfiguration    mod_aspdotnet
-ISCompilerOption_Debug 1
-ISCompilerOption_IncludePath   
-ISCompilerOption_MaxErrors     50
-ISCompilerOption_MaxWarnings   50
-ISCompilerOption_OutputPath    <ISProjectFolder>
-ISCompilerOption_PreProcessor  
-ISCompilerOption_WarningLevel  3
-ISCompilerOption_WarningsAsErrors      1
-ISDialogLangID 
-MsiExecCmdLineOptions  
-MsiLogFile     
-OnUpgrade      1
-Owner  The Apache Software Foundation
-SccEnabled     0
-SccPath        
-SchemaVersion  751
-Type   MSI
+Property       Value
+s72    S0
+InstallShield  Property
+ActiveLanguage 1033
+Comments       
+CurrentMedia   x86-winntmod_aspdotnet
+DefaultProductConfiguration    mod_aspdotnet
+ISCompilerOption_Debug 1
+ISCompilerOption_IncludePath   
+ISCompilerOption_MaxErrors     50
+ISCompilerOption_MaxWarnings   50
+ISCompilerOption_OutputPath    <ISProjectFolder>
+ISCompilerOption_PreProcessor  
+ISCompilerOption_WarningLevel  3
+ISCompilerOption_WarningsAsErrors      1
+ISDialogLangID 
+MsiExecCmdLineOptions  
+MsiLogFile     
+OnUpgrade      1
+Owner  The Apache Software Foundation
+SccEnabled     0
+SccPath        
+SchemaVersion  751
+Type   MSI

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallUISequence.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallUISequence.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/InstallUISequence.idt     
Fri Jul 16 09:27:17 2004
@@ -1,27 +1,27 @@
-Action Condition       Sequence        ISComments      ISAttributes
-s72    S255    I2      S255    I4
-InstallUISequence      Action
-AppSearch              25      AppSearch       
-CCPSearch      CCP_TEST        250     CCPSearch       
-CostFinalize           550     CostFinalize    
-CostInitialize         400     CostInitialize  
-ExecuteAction          850     ExecuteAction   
-FileCost               450     FileCost        
-FindRelatedProducts            150     FindRelatedProducts     
-InstallWelcome Not Installed And Not PATCH     662             
-ISInitAllUsers VersionNT And NOT Installed     575     ISInitAllUsers  
-IsolateComponents              500     IsolateComponents       
-LaunchConditions               50      LaunchConditions        
-MaintenanceWelcome     Installed And Not RESUME And Not Preselected And Not 
PATCH      750     MaintenanceWelcome      
-MigrateFeatureStates           600     MigrateFeatureStates    
-PatchWelcome   PATCH   625     Patch Panel     
-ResolveApacheInstances         125     ResolveApacheInstances  
-ResolveSource  Not Installed   525     ResolveSource   
-RMCCPSearch    Not CCP_SUCCESS And CCP_TEST    300     RMCCPSearch     
-SetupCompleteError             -3      SetupCompleteError      
-SetupCompleteSuccess           -1      SetupCompleteSuccess    
-SetupInitialization            100     SetupInitialization     
-SetupInterrupted               -2      SetupInterrupted        
-SetupProgress          800     SetupProgress   
-SetupResume    Installed And (RESUME Or Preselected) And Not PATCH     700     
SetupResume     
-ValidateProductID              350     ValidateProductID       
+Action Condition       Sequence        ISComments      ISAttributes
+s72    S255    I2      S255    I4
+InstallUISequence      Action
+AppSearch              25      AppSearch       
+CCPSearch      CCP_TEST        250     CCPSearch       
+CostFinalize           550     CostFinalize    
+CostInitialize         400     CostInitialize  
+ExecuteAction          850     ExecuteAction   
+FileCost               450     FileCost        
+FindRelatedProducts            150     FindRelatedProducts     
+InstallWelcome Not Installed And Not PATCH     662             
+ISInitAllUsers VersionNT And NOT Installed     575     ISInitAllUsers  
+IsolateComponents              500     IsolateComponents       
+LaunchConditions               50      LaunchConditions        
+MaintenanceWelcome     Installed And Not RESUME And Not Preselected And Not 
PATCH      750     MaintenanceWelcome      
+MigrateFeatureStates           600     MigrateFeatureStates    
+PatchWelcome   PATCH   625     Patch Panel     
+ResolveApacheInstances         125     ResolveApacheInstances  
+ResolveSource  Not Installed   525     ResolveSource   
+RMCCPSearch    Not CCP_SUCCESS And CCP_TEST    300     RMCCPSearch     
+SetupCompleteError             -3      SetupCompleteError      
+SetupCompleteSuccess           -1      SetupCompleteSuccess    
+SetupInitialization            100     SetupInitialization     
+SetupInterrupted               -2      SetupInterrupted        
+SetupProgress          800     SetupProgress   
+SetupResume    Installed And (RESUME Or Preselected) And Not PATCH     700     
SetupResume     
+ValidateProductID              350     ValidateProductID       

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/IsolatedComponent.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/IsolatedComponent.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/IsolatedComponent.idt     
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Component_Shared       Component_Application
-s72    s72
-IsolatedComponent      Component_Shared        Component_Application
+Component_Shared       Component_Application
+s72    s72
+IsolatedComponent      Component_Shared        Component_Application

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/LaunchCondition.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/LaunchCondition.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/LaunchCondition.idt       
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Condition      Description
-s255   l255
-LaunchCondition        Condition
+Condition      Description
+s255   l255
+LaunchCondition        Condition

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListBox.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListBox.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListBox.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Property       Order   Value   Text
-s72    i2      s64     L64
-ListBox        Property        Order
+Property       Order   Value   Text
+s72    i2      s64     L64
+ListBox        Property        Order

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListView.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListView.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ListView.idt      Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Property       Order   Value   Text    Binary_
-s72    i2      s64     L64     S72
-ListView       Property        Order
+Property       Order   Value   Text    Binary_
+s72    i2      s64     L64     S72
+ListView       Property        Order

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/LockPermissions.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/LockPermissions.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/LockPermissions.idt       
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-LockObject     Table   Domain  User    Permission
-s72    s32     S255    s255    I4
-LockPermissions        LockObject      Table   Domain  User
+LockObject     Table   Domain  User    Permission
+s72    s32     S255    s255    I4
+LockPermissions        LockObject      Table   Domain  User

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/MIME.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MIME.idt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MIME.idt  Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-ContentType    Extension_      CLSID
-s64    s255    S38
-MIME   ContentType
+ContentType    Extension_      CLSID
+s64    s255    S38
+MIME   ContentType

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Media.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Media.idt (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Media.idt Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-DiskId LastSequence    DiskPrompt      Cabinet VolumeLabel     Source
-i2     i2      L64     S255    S32     S32
-Media  DiskId
+DiskId LastSequence    DiskPrompt      Cabinet VolumeLabel     Source
+i2     i2      L64     S255    S32     S32
+Media  DiskId

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/MoveFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MoveFile.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MoveFile.idt      Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-FileKey        Component_      SourceName      DestName        SourceFolder    
DestFolder      Options
-s72    s72     L255    L255    S72     s72     i2
-MoveFile       FileKey
+FileKey        Component_      SourceName      DestName        SourceFolder    
DestFolder      Options
+s72    s72     L255    L255    S72     s72     i2
+MoveFile       FileKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssembly.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssembly.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssembly.idt   Fri Jul 
16 09:27:17 2004
@@ -1,4 +1,4 @@
-Component_     Feature_        File_Manifest   File_Application        
Attributes
-s72    s38     S72     S72     I2
-MsiAssembly    Component_
-Apache.Web     mod_aspdotnet                   0
+Component_     Feature_        File_Manifest   File_Application        
Attributes
+s72    s38     S72     S72     I2
+MsiAssembly    Component_
+Apache.Web     mod_aspdotnet                   0

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssemblyName.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssemblyName.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiAssemblyName.idt       
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Component_     Name    Value
-s72    s255    s255
-MsiAssemblyName        Component_      Name
+Component_     Name    Value
+s72    s255    s255
+MsiAssemblyName        Component_      Name

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalCertificate.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalCertificate.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalCertificate.idt 
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-DigitalCertificate     CertData
-s72    v0
-MsiDigitalCertificate  DigitalCertificate
+DigitalCertificate     CertData
+s72    v0
+MsiDigitalCertificate  DigitalCertificate

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalSignature.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalSignature.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiDigitalSignature.idt   
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Table  SignObject      DigitalCertificate_     Hash
-s32    s72     s72     V0
-MsiDigitalSignature    Table   SignObject
+Table  SignObject      DigitalCertificate_     Hash
+s32    s72     s72     V0
+MsiDigitalSignature    Table   SignObject

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiFileHash.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiFileHash.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/MsiFileHash.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-File_  Options HashPart1       HashPart2       HashPart3       HashPart4
-s72    i2      i4      i4      i4      i4
-MsiFileHash    File_
+File_  Options HashPart1       HashPart2       HashPart3       HashPart4
+s72    i2      i4      i4      i4      i4
+MsiFileHash    File_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCAttribute.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCAttribute.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCAttribute.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Driver_        Attribute       Value
-s72    s40     S255
-ODBCAttribute  Driver_ Attribute
+Driver_        Attribute       Value
+s72    s40     S255
+ODBCAttribute  Driver_ Attribute

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDataSource.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDataSource.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDataSource.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-DataSource     Component_      Description     DriverDescription       
Registration
-s72    s72     s255    s255    i2
-ODBCDataSource DataSource
+DataSource     Component_      Description     DriverDescription       
Registration
+s72    s72     s255    s255    i2
+ODBCDataSource DataSource

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDriver.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDriver.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCDriver.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Driver Component_      Description     File_   File_Setup
-s72    s72     s255    s72     S72
-ODBCDriver     Driver
+Driver Component_      Description     File_   File_Setup
+s72    s72     s255    s72     S72
+ODBCDriver     Driver

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCSourceAttribute.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCSourceAttribute.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCSourceAttribute.idt   
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-DataSource_    Attribute       Value
-s72    s32     S255
-ODBCSourceAttribute    DataSource_     Attribute
+DataSource_    Attribute       Value
+s72    s32     S255
+ODBCSourceAttribute    DataSource_     Attribute

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCTranslator.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCTranslator.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ODBCTranslator.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-Translator     Component_      Description     File_   File_Setup
-s72    s72     s255    s72     S72
-ODBCTranslator Translator
+Translator     Component_      Description     File_   File_Setup
+s72    s72     s255    s72     S72
+ODBCTranslator Translator

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Patch.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Patch.idt (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Patch.idt Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-File_  Sequence        PatchSize       Attributes      Header  
ISBuildSourcePath
-s72    i2      i4      i2      V0      S255
-Patch  File_   Sequence
+File_  Sequence        PatchSize       Attributes      Header  
ISBuildSourcePath
+s72    i2      i4      i2      V0      S255
+Patch  File_   Sequence

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/PatchPackage.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/PatchPackage.idt  
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/PatchPackage.idt  Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-PatchId        Media_
-s38    i2
-PatchPackage   PatchId
+PatchId        Media_
+s38    i2
+PatchPackage   PatchId

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ProgId.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ProgId.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ProgId.idt        Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ProgId ProgId_Parent   Class_  Description     Icon_   IconIndex       
ISAttributes
-s255   S255    S38     L255    S72     I2      I4
-ProgId ProgId
+ProgId ProgId_Parent   Class_  Description     Icon_   IconIndex       
ISAttributes
+s255   S255    S38     L255    S72     I2      I4
+ProgId ProgId

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Property.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Property.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Property.idt      Fri Jul 
16 09:27:17 2004
@@ -1,48 +1,48 @@
-Property       Value   ISComments
-s72    L0      S255
-Property       Property
-_BrowseProperty        0       
-_IsMaintenance Repair  
-_IsSetupTypeMin        Typical 
-AgreeToLicense No      
-ApplicationUsers       AllUsers        
-ARPCOMMENTS    ##IDPROP_ARPCOMMENTS##  
-ARPCONTACT     ##IDPROP_ARPCONTACT##   
-ARPHELPLINK    ##IDPROP_ARPHELPLINK##  
-ARPHELPTELEPHONE       ##IDPROP_ARPHELPTELEPHONE##     
-ARPPRODUCTICON ARPPRODUCTICON.exe      
-ARPREADME              
-ARPURLINFOABOUT        ##IDPROP_ARPURLINFOABOUT##      
-ARPURLUPDATEINFO       ##IDPROP_ARPURLUPDATEINFO##     
-DefaultUIFont  Tahoma8 
-DialogCaption  InstallShield for Windows Installer     
-DiskPrompt     [1]     
-Display_IsBitmapDlg    1       
-DisplayNameCustom      ##IDS__DisplayName_Custom##     
-DisplayNameMinimal     ##IDS__DisplayName_Minimal##    
-DisplayNameTypical     ##IDS__DisplayName_Typical##    
-DWUSINTERVAL   30      
-ErrorDialog    SetupError      
-InstallChoice  AR      
-INSTALLLEVEL   100     
-ISCHECKFORPRODUCTUPDATES       0       
-ISENABLEDWUSFINISHDIALOG       0       
-ISSCRIPT_VERSION_MISSING       ##IDS_ISSCRIPT_VERSION_MISSING##        
-ISSCRIPT_VERSION_OLD   ##IDS_ISSCRIPT_VERSION_OLD##    
-Manufacturer   ##COMPANY_NAME##        
-NewProperty1   0       
-PIDTemplate    12345<###-%%%%%%%>@@@@@ 
-ProductCode    {18C26F50-5E08-4274-BC7B-430AF1FDD147}  
-ProductID      none    
-ProductLanguage        1033    
-ProductName    Apache mod_aspdotnet for Apache httpd Web Server        
-ProductVersion 2.3.2.1951      
-ProgressType0  install 
-ProgressType1  Installing      
-ProgressType2  installed       
-ProgressType3  installs        
-RebootYesNo    Yes     
-Registration   No      
-ReinstallModeText      omus    
-SetupType      Typical 
-UpgradeCode    {D7DEB71F-1CF3-4956-9AC9-2187FEE06F02}  
+Property       Value   ISComments
+s72    L0      S255
+Property       Property
+_BrowseProperty        0       
+_IsMaintenance Repair  
+_IsSetupTypeMin        Typical 
+AgreeToLicense No      
+ApplicationUsers       AllUsers        
+ARPCOMMENTS    ##IDPROP_ARPCOMMENTS##  
+ARPCONTACT     ##IDPROP_ARPCONTACT##   
+ARPHELPLINK    ##IDPROP_ARPHELPLINK##  
+ARPHELPTELEPHONE       ##IDPROP_ARPHELPTELEPHONE##     
+ARPPRODUCTICON ARPPRODUCTICON.exe      
+ARPREADME              
+ARPURLINFOABOUT        ##IDPROP_ARPURLINFOABOUT##      
+ARPURLUPDATEINFO       ##IDPROP_ARPURLUPDATEINFO##     
+DefaultUIFont  Tahoma8 
+DialogCaption  InstallShield for Windows Installer     
+DiskPrompt     [1]     
+Display_IsBitmapDlg    1       
+DisplayNameCustom      ##IDS__DisplayName_Custom##     
+DisplayNameMinimal     ##IDS__DisplayName_Minimal##    
+DisplayNameTypical     ##IDS__DisplayName_Typical##    
+DWUSINTERVAL   30      
+ErrorDialog    SetupError      
+InstallChoice  AR      
+INSTALLLEVEL   100     
+ISCHECKFORPRODUCTUPDATES       0       
+ISENABLEDWUSFINISHDIALOG       0       
+ISSCRIPT_VERSION_MISSING       ##IDS_ISSCRIPT_VERSION_MISSING##        
+ISSCRIPT_VERSION_OLD   ##IDS_ISSCRIPT_VERSION_OLD##    
+Manufacturer   ##COMPANY_NAME##        
+NewProperty1   0       
+PIDTemplate    12345<###-%%%%%%%>@@@@@ 
+ProductCode    {18C26F50-5E08-4274-BC7B-430AF1FDD147}  
+ProductID      none    
+ProductLanguage        1033    
+ProductName    Apache mod_aspdotnet for Apache httpd Web Server        
+ProductVersion 2.3.2.1951      
+ProgressType0  install 
+ProgressType1  Installing      
+ProgressType2  installed       
+ProgressType3  installs        
+RebootYesNo    Yes     
+Registration   No      
+ReinstallModeText      omus    
+SetupType      Typical 
+UpgradeCode    {D7DEB71F-1CF3-4956-9AC9-2187FEE06F02}  

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/PublishComponent.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/PublishComponent.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/PublishComponent.idt      
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ComponentId    Qualifier       Component_      AppData Feature_
-s38    s255    s72     L255    s38
-PublishComponent       ComponentId     Qualifier       Component_
+ComponentId    Qualifier       Component_      AppData Feature_
+s38    s255    s72     L255    s38
+PublishComponent       ComponentId     Qualifier       Component_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/RadioButton.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/RadioButton.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/RadioButton.idt   Fri Jul 
16 09:27:17 2004
@@ -1,11 +1,11 @@
-Property       Order   Value   X       Y       Width   Height  Text    Help
-s72    i2      s64     i2      i2      i2      i2      L64     L50
-RadioButton    Property        Order
-_IsMaintenance 2       Reinstall       0       0       290     14      
##IDS__IsMaintenanceDlg_9##     
-_IsMaintenance 3       Remove  0       60      290     14      
##IDS__IsMaintenanceDlg_10##    
-_IsSetupTypeMin        1       Typical 0       0       264     14      
##IDS__IsSetupTypeMinDlg_11##   
-_IsSetupTypeMin        2       Custom  0       60      264     14      
##IDS__IsSetupTypeMinDlg_12##   
-AgreeToLicense 1       No      0       15      295     15      
##IDS__AgreeToLicense_0##       
-AgreeToLicense 2       Yes     0       0       295     15      
##IDS__AgreeToLicense_1##       
-ApplicationUsers       1       AllUsers        1       6       290     14      
##IDS__IsRegisterUserDlg_14##   
-ApplicationUsers       2       OnlyCurrentUser 1       21      290     14      
##IDS__IsRegisterUserDlg_15##   
+Property       Order   Value   X       Y       Width   Height  Text    Help
+s72    i2      s64     i2      i2      i2      i2      L64     L50
+RadioButton    Property        Order
+_IsMaintenance 2       Reinstall       0       0       290     14      
##IDS__IsMaintenanceDlg_9##     
+_IsMaintenance 3       Remove  0       60      290     14      
##IDS__IsMaintenanceDlg_10##    
+_IsSetupTypeMin        1       Typical 0       0       264     14      
##IDS__IsSetupTypeMinDlg_11##   
+_IsSetupTypeMin        2       Custom  0       60      264     14      
##IDS__IsSetupTypeMinDlg_12##   
+AgreeToLicense 1       No      0       15      295     15      
##IDS__AgreeToLicense_0##       
+AgreeToLicense 2       Yes     0       0       295     15      
##IDS__AgreeToLicense_1##       
+ApplicationUsers       1       AllUsers        1       6       290     14      
##IDS__IsRegisterUserDlg_14##   
+ApplicationUsers       2       OnlyCurrentUser 1       21      290     14      
##IDS__IsRegisterUserDlg_15##   

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/RegLocator.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/RegLocator.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/RegLocator.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature_     Root    Key     Name    Type
-s72    i2      s255    S255    I2
-RegLocator     Signature_
+Signature_     Root    Key     Name    Type
+s72    i2      s255    S255    I2
+RegLocator     Signature_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Registry.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Registry.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Registry.idt      Fri Jul 
16 09:27:17 2004
@@ -1,9 +1,9 @@
-Registry       Root    Key     Name    Value   Component_      ISAttributes
-s72    i2      s255    S255    S0      s72     I4
-Registry       Registry
-Registry1      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288                 
Apache.Web      0
-Registry2      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 Path    
[WindowsFolder]Microsoft.NET\Framework\v1.0.3705        Apache.Web      0
-Registry3      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 DllFullPath     
[WindowsFolder]Microsoft.NET\Framework\v1.0.3705\aspnet_isapi.dll       
Apache.Web      0
-Registry4      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 DefaultDoc      
Default.aspx    Apache.Web      0
-Registry5      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 Mimemap 
.wsdl,text/xml,.disco,text/xml,.xsd,text/xml    Apache.Web      0
-Registry6      2       SOFTWARE\Microsoft\ASP.NET      RootVer 1.0.3705.0      
Apache.Web      0
+Registry       Root    Key     Name    Value   Component_      ISAttributes
+s72    i2      s255    S255    S0      s72     I4
+Registry       Registry
+Registry1      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288                 
Apache.Web      0
+Registry2      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 Path    
[WindowsFolder]Microsoft.NET\Framework\v1.0.3705        Apache.Web      0
+Registry3      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 DllFullPath     
[WindowsFolder]Microsoft.NET\Framework\v1.0.3705\aspnet_isapi.dll       
Apache.Web      0
+Registry4      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 DefaultDoc      
Default.aspx    Apache.Web      0
+Registry5      2       SOFTWARE\Microsoft\ASP.NET\1.0.3705.288 Mimemap 
.wsdl,text/xml,.disco,text/xml,.xsd,text/xml    Apache.Web      0
+Registry6      2       SOFTWARE\Microsoft\ASP.NET      RootVer 1.0.3705.0      
Apache.Web      0

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveFile.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveFile.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-FileKey        Component_      FileName        DirProperty     InstallMode
-s72    s72     L255    s72     i2
-RemoveFile     FileKey
+FileKey        Component_      FileName        DirProperty     InstallMode
+s72    s72     L255    s72     i2
+RemoveFile     FileKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveIniFile.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveIniFile.idt 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveIniFile.idt Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-RemoveIniFile  FileName        DirProperty     Section Key     Value   Action  
Component_
-s72    l255    S72     l96     l128    L255    i2      s72
-RemoveIniFile  RemoveIniFile
+RemoveIniFile  FileName        DirProperty     Section Key     Value   Action  
Component_
+s72    l255    S72     l96     l128    L255    i2      s72
+RemoveIniFile  RemoveIniFile

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveRegistry.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveRegistry.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/RemoveRegistry.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-RemoveRegistry Root    Key     Name    Component_
-s72    i2      l255    L255    s72
-RemoveRegistry RemoveRegistry
+RemoveRegistry Root    Key     Name    Component_
+s72    i2      l255    L255    s72
+RemoveRegistry RemoveRegistry

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ReserveCost.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ReserveCost.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ReserveCost.idt   Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-ReserveKey     Component_      ReserveFolder   ReserveLocal    ReserveSource
-s72    s72     S72     i4      i4
-ReserveCost    ReserveKey
+ReserveKey     Component_      ReserveFolder   ReserveLocal    ReserveSource
+s72    s72     S72     i4      i4
+ReserveCost    ReserveKey

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/SFPCatalog.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/SFPCatalog.idt    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/SFPCatalog.idt    Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-SFPCatalog     Catalog Dependency
-s255   V0      S0
-SFPCatalog     SFPCatalog
+SFPCatalog     Catalog Dependency
+s255   V0      S0
+SFPCatalog     SFPCatalog

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/SelfReg.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/SelfReg.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/SelfReg.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-File_  Cost
-s72    I2
-SelfReg        File_
+File_  Cost
+s72    I2
+SelfReg        File_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceControl.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceControl.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceControl.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ServiceControl Name    Event   Arguments       Wait    Component_
-s72    s255    i2      S255    I2      s72
-ServiceControl ServiceControl
+ServiceControl Name    Event   Arguments       Wait    Component_
+s72    s255    i2      S255    I2      s72
+ServiceControl ServiceControl

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceInstall.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceInstall.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/ServiceInstall.idt        
Fri Jul 16 09:27:17 2004
@@ -1,3 +1,3 @@
-ServiceInstall Name    DisplayName     ServiceType     StartType       
ErrorControl    LoadOrderGroup  Dependencies    StartName       Password        
Arguments       Component_      Description
-s72    s255    L255    i4      i4      i4      S255    S255    S255    S255    
S255    s72     L255
-ServiceInstall ServiceInstall
+ServiceInstall Name    DisplayName     ServiceType     StartType       
ErrorControl    LoadOrderGroup  Dependencies    StartName       Password        
Arguments       Component_      Description
+s72    s255    L255    i4      i4      i4      S255    S255    S255    S255    
S255    s72     L255
+ServiceInstall ServiceInstall

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Shortcut.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Shortcut.idt      
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Shortcut.idt      Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Shortcut       Directory_      Name    Component_      Target  Arguments       
Description     Hotkey  Icon_   IconIndex       ShowCmd WkDir   ISComments
-s72    s72     l128    s72     s255    S255    L255    I2      S72     I2      
I2      S72     S255
-Shortcut       Shortcut
+Shortcut       Directory_      Name    Component_      Target  Arguments       
Description     Hotkey  Icon_   IconIndex       ShowCmd WkDir   ISComments
+s72    s72     l128    s72     s255    S255    L255    I2      S72     I2      
I2      S72     S255
+Shortcut       Shortcut

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Signature.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Signature.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Signature.idt     Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-Signature      FileName        MinVersion      MaxVersion      MinSize MaxSize 
MinDate MaxDate Languages
-s72    s255    S20     S20     I4      I4      I4      I4      S255
-Signature      Signature
+Signature      FileName        MinVersion      MaxVersion      MinSize MaxSize 
MinDate MaxDate Languages
+s72    s255    S20     S20     I4      I4      I4      I4      S255
+Signature      Signature

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/TextStyle.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/TextStyle.idt     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/TextStyle.idt     Fri Jul 
16 09:27:17 2004
@@ -1,25 +1,25 @@
-TextStyle      FaceName        Size    Color   StyleBits
-s72    s32     i2      I4      I2
-TextStyle      TextStyle
-Arial8 Arial   8               
-Arial9 Arial   9               
-ArialBlue10    Arial   10      16711680        
-ArialBlueStrike10      Arial   10      16711680        8
-CourierNew8    Courier New     8               
-CourierNew9    Courier New     9               
-MSGothic9      MS Gothic       9               
-MSSansBold8    Tahoma  8               1
-MSSansSerif8   MS Sans Serif   8               
-MSSansSerif9   MS Sans Serif   9               
-MSSGreySerif8  MS Sans Serif   8       8421504 
-MSSWhiteSerif8 Tahoma  8       16777215        
-Tahoma10       Tahoma  10              
-Tahoma8        Tahoma  8               
-Tahoma9        Tahoma  9               
-TahomaBold10   Tahoma  10              1
-TahomaBold8    Tahoma  8               1
-Times8 Times New Roman 8               
-Times9 Times New Roman 9               
-TimesItalic12  Times New Roman 12              2
-TimesItalicBlue10      Times New Roman 10      16711680        2
-TimesRed16     Times New Roman 16      255     
+TextStyle      FaceName        Size    Color   StyleBits
+s72    s32     i2      I4      I2
+TextStyle      TextStyle
+Arial8 Arial   8               
+Arial9 Arial   9               
+ArialBlue10    Arial   10      16711680        
+ArialBlueStrike10      Arial   10      16711680        8
+CourierNew8    Courier New     8               
+CourierNew9    Courier New     9               
+MSGothic9      MS Gothic       9               
+MSSansBold8    Tahoma  8               1
+MSSansSerif8   MS Sans Serif   8               
+MSSansSerif9   MS Sans Serif   9               
+MSSGreySerif8  MS Sans Serif   8       8421504 
+MSSWhiteSerif8 Tahoma  8       16777215        
+Tahoma10       Tahoma  10              
+Tahoma8        Tahoma  8               
+Tahoma9        Tahoma  9               
+TahomaBold10   Tahoma  10              1
+TahomaBold8    Tahoma  8               1
+Times8 Times New Roman 8               
+Times9 Times New Roman 9               
+TimesItalic12  Times New Roman 12              2
+TimesItalicBlue10      Times New Roman 10      16711680        2
+TimesRed16     Times New Roman 16      255     

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/TypeLib.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/TypeLib.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/TypeLib.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-LibID  Language        Component_      Version Description     Directory_      
Feature_        Cost
-s38    i2      s72     I4      L128    S72     s38     I4
-TypeLib        LibID   Language        Component_
+LibID  Language        Component_      Version Description     Directory_      
Feature_        Cost
+s38    i2      s72     I4      L128    S72     s38     I4
+TypeLib        LibID   Language        Component_

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/UIText.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/UIText.idt        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/UIText.idt        Fri Jul 
16 09:27:17 2004
@@ -1,53 +1,53 @@
-Key    Text
-s72    L255
-UIText Key
-AbsentPath     
-bytes  ##IDS_UITEXT_0##
-GB     ##IDS_UITEXT_1##
-KB     ##IDS_UITEXT_2##
-MB     ##IDS_UITEXT_3##
-MenuAbsent     ##IDS_UITEXT_4##
-MenuAdvertise  ##IDS_UITEXT_5##
-MenuAllCD      ##IDS_UITEXT_47##
-MenuAllLocal   ##IDS_UITEXT_48##
-MenuAllNetwork ##IDS_UITEXT_46##
-MenuCD ##IDS_UITEXT_6##
-MenuLocal      ##IDS_UITEXT_7##
-MenuNetwork    ##IDS_UITEXT_8##
-NewFolder      ##IDS_UITEXT_9##
-SelAbsentAbsent        ##IDS_UITEXT_10##
-SelAbsentAdvertise     ##IDS_UITEXT_11##
-SelAbsentCD    ##IDS_UITEXT_12##
-SelAbsentLocal ##IDS_UITEXT_13##
-SelAbsentNetwork       ##IDS_UITEXT_14##
-SelAdvertiseAbsent     ##IDS_UITEXT_15##
-SelAdvertiseAdvertise  ##IDS_UITEXT_16##
-SelAdvertiseCD ##IDS_UITEXT_17##
-SelAdvertiseLocal      ##IDS_UITEXT_18##
-SelAdvertiseNetwork    ##IDS_UITEXT_19##
-SelCDAbsent    ##IDS_UITEXT_20##
-SelCDAdvertise ##IDS_UITEXT_21##
-SelCDCD        ##IDS_UITEXT_22##
-SelCDLocal     ##IDS_UITEXT_23##
-SelChildCostNeg        ##IDS_UITEXT_24##
-SelChildCostPos        ##IDS_UITEXT_25##
-SelCostPending ##IDS_UITEXT_26##
-SelLocalAbsent ##IDS_UITEXT_27##
-SelLocalAdvertise      ##IDS_UITEXT_28##
-SelLocalCD     ##IDS_UITEXT_29##
-SelLocalLocal  ##IDS_UITEXT_30##
-SelLocalNetwork        ##IDS_UITEXT_31##
-SelNetworkAbsent       ##IDS_UITEXT_32##
-SelNetworkAdvertise    ##IDS_UITEXT_33##
-SelNetworkLocal        ##IDS_UITEXT_34##
-SelNetworkNetwork      ##IDS_UITEXT_35##
-SelParentCostNegNeg    ##IDS_UITEXT_36##
-SelParentCostNegPos    ##IDS_UITEXT_37##
-SelParentCostPosNeg    ##IDS_UITEXT_38##
-SelParentCostPosPos    ##IDS_UITEXT_39##
-TimeRemaining  ##IDS_UITEXT_40##
-VolumeCostAvailable    ##IDS_UITEXT_41##
-VolumeCostDifference   ##IDS_UITEXT_42##
-VolumeCostRequired     ##IDS_UITEXT_43##
-VolumeCostSize ##IDS_UITEXT_44##
-VolumeCostVolume       ##IDS_UITEXT_45##
+Key    Text
+s72    L255
+UIText Key
+AbsentPath     
+bytes  ##IDS_UITEXT_0##
+GB     ##IDS_UITEXT_1##
+KB     ##IDS_UITEXT_2##
+MB     ##IDS_UITEXT_3##
+MenuAbsent     ##IDS_UITEXT_4##
+MenuAdvertise  ##IDS_UITEXT_5##
+MenuAllCD      ##IDS_UITEXT_47##
+MenuAllLocal   ##IDS_UITEXT_48##
+MenuAllNetwork ##IDS_UITEXT_46##
+MenuCD ##IDS_UITEXT_6##
+MenuLocal      ##IDS_UITEXT_7##
+MenuNetwork    ##IDS_UITEXT_8##
+NewFolder      ##IDS_UITEXT_9##
+SelAbsentAbsent        ##IDS_UITEXT_10##
+SelAbsentAdvertise     ##IDS_UITEXT_11##
+SelAbsentCD    ##IDS_UITEXT_12##
+SelAbsentLocal ##IDS_UITEXT_13##
+SelAbsentNetwork       ##IDS_UITEXT_14##
+SelAdvertiseAbsent     ##IDS_UITEXT_15##
+SelAdvertiseAdvertise  ##IDS_UITEXT_16##
+SelAdvertiseCD ##IDS_UITEXT_17##
+SelAdvertiseLocal      ##IDS_UITEXT_18##
+SelAdvertiseNetwork    ##IDS_UITEXT_19##
+SelCDAbsent    ##IDS_UITEXT_20##
+SelCDAdvertise ##IDS_UITEXT_21##
+SelCDCD        ##IDS_UITEXT_22##
+SelCDLocal     ##IDS_UITEXT_23##
+SelChildCostNeg        ##IDS_UITEXT_24##
+SelChildCostPos        ##IDS_UITEXT_25##
+SelCostPending ##IDS_UITEXT_26##
+SelLocalAbsent ##IDS_UITEXT_27##
+SelLocalAdvertise      ##IDS_UITEXT_28##
+SelLocalCD     ##IDS_UITEXT_29##
+SelLocalLocal  ##IDS_UITEXT_30##
+SelLocalNetwork        ##IDS_UITEXT_31##
+SelNetworkAbsent       ##IDS_UITEXT_32##
+SelNetworkAdvertise    ##IDS_UITEXT_33##
+SelNetworkLocal        ##IDS_UITEXT_34##
+SelNetworkNetwork      ##IDS_UITEXT_35##
+SelParentCostNegNeg    ##IDS_UITEXT_36##
+SelParentCostNegPos    ##IDS_UITEXT_37##
+SelParentCostPosNeg    ##IDS_UITEXT_38##
+SelParentCostPosPos    ##IDS_UITEXT_39##
+TimeRemaining  ##IDS_UITEXT_40##
+VolumeCostAvailable    ##IDS_UITEXT_41##
+VolumeCostDifference   ##IDS_UITEXT_42##
+VolumeCostRequired     ##IDS_UITEXT_43##
+VolumeCostSize ##IDS_UITEXT_44##
+VolumeCostVolume       ##IDS_UITEXT_45##

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Upgrade.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Upgrade.idt       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Upgrade.idt       Fri Jul 
16 09:27:17 2004
@@ -1,3 +1,3 @@
-UpgradeCode    VersionMin      VersionMax      Language        Attributes      
Remove  ActionProperty  ISDisplayName
-s38    S20     S20     S255    i4      S255    s72     S72
-Upgrade        UpgradeCode     VersionMin      VersionMax      Language        
Attributes
+UpgradeCode    VersionMin      VersionMax      Language        Attributes      
Remove  ActionProperty  ISDisplayName
+s38    S20     S20     S255    i4      S255    s72     S72
+Upgrade        UpgradeCode     VersionMin      VersionMax      Language        
Attributes

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/Verb.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/Verb.idt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/Verb.idt  Fri Jul 16 
09:27:17 2004
@@ -1,3 +1,3 @@
-Extension_     Verb    Sequence        Command Argument
-s255   s32     I2      L255    L255
-Verb   Extension_      Verb
+Extension_     Verb    Sequence        Command Argument
+s255   s32     I2      L255    L255
+Verb   Extension_      Verb

Modified: 
incubator/httpd/cli/trunk/mod_aspdotnet/installer/_SummaryInformation.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/_SummaryInformation.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/_SummaryInformation.idt   
Fri Jul 16 09:27:17 2004
@@ -1,18 +1,18 @@
-PropertyId     Value
-i2     l255
-_SummaryInformation    PropertyId
-1      1252
-2      Installation Database
-3      Apache mod_aspdotnet
-4      ##COMPANY_NAME##
-5      Installer,MSI,Database
-6      ##ID_STRING1##
-7      Intel;1033
-8      Administrator
-9      {F0A1AD16-6B9F-4DBD-AA5F-811B7F6F5337}
-12     1999/06/21 01:00:00
-13     2000/07/14 04:50:28
-14     200
-15     0
-18     InstallShield Developer
-19     1
+PropertyId     Value
+i2     l255
+_SummaryInformation    PropertyId
+1      1252
+2      Installation Database
+3      Apache mod_aspdotnet
+4      ##COMPANY_NAME##
+5      Installer,MSI,Database
+6      ##ID_STRING1##
+7      Intel;1033
+8      Administrator
+9      {F0A1AD16-6B9F-4DBD-AA5F-811B7F6F5337}
+12     1999/06/21 01:00:00
+13     2000/07/14 04:50:28
+14     200
+15     0
+18     InstallShield Developer
+19     1

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/installer/_Validation.idt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/installer/_Validation.idt   
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/installer/_Validation.idt   Fri Jul 
16 09:27:17 2004
@@ -1,609 +1,609 @@
-Table  Column  Nullable        MinValue        MaxValue        KeyTable        
KeyColumn       Category        Set     Description
-s32    s32     s4      I4      I4      S255    I2      S32     S255    S255
-1252   _Validation     Table   Column
-_Validation    Category        Y                                               
"Text";"Formatted";"Template";"Condition";"Guid";"Path";"Version";"Language";"Identifier";"Binary";"UpperCase";"LowerCase";"Filename";"Paths";"AnyPath";"WildCardFilename";"RegPath";"KeyFormatted";"CustomSource";"Property";"Cabinet";"Shortcut";"URL";"DefaultDir"
   String category
-_Validation    Column  N                                       Identifier      
        Name of column
-_Validation    Description     Y                                       Text    
        Description of column
-_Validation    KeyColumn       Y       1       32                              
        Column to which foreign key connects
-_Validation    KeyTable        Y                                       
Identifier              For foreign key, Name of table to which data must link
-_Validation    MaxValue        Y       -2147483647     2147483647              
                        Maximum value allowed
-_Validation    MinValue        Y       -2147483647     2147483647              
                        Minimum value allowed
-_Validation    Nullable        N                                               
Y;N;@   Whether the column is nullable
-_Validation    Set     Y                                       Text            
Set of values that are permitted
-_Validation    Table   N                                       Identifier      
        Name of table
-ActionText     Action  N                                       Identifier      
        Name of action to be described.
-ActionText     Description     Y                                       Text    
        Localized description displayed in progress dialog and log when action 
is executing.
-ActionText     Template        Y                                       
Template                Optional localized format template used to format 
action data records for display during action execution.
-AdminExecuteSequence   Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
-AdminExecuteSequence   Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
-AdminExecuteSequence   ISAttributes    Y                                       
                This is used to store MM Custom Action Types
-AdminExecuteSequence   ISComments      Y                                       
Text            Author’s comments on this Sequence.
-AdminExecuteSequence   Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
-AdminUISequence        Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
-AdminUISequence        Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
-AdminUISequence        ISAttributes    Y                                       
                This is used to store MM Custom Action Types
-AdminUISequence        ISComments      Y                                       
Text            Author’s comments on this Sequence.
-AdminUISequence        Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
-AdvtExecuteSequence    Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
-AdvtExecuteSequence    Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
-AdvtExecuteSequence    ISAttributes    Y                                       
                This is used to store MM Custom Action Types
-AdvtExecuteSequence    ISComments      Y                                       
Text            Author’s comments on this Sequence.
-AdvtExecuteSequence    Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
-AdvtUISequence Action  N                                       Identifier      
        Name of action to invoke, either in the engine or the handler DLL.
-AdvtUISequence Condition       Y                                       Text    
        Optional expression which skips the action if evaluates to expFalse.If 
the expression syntax is invalid, the engine will terminate, returning 
iesBadActionData.
-AdvtUISequence ISAttributes    Y                                               
        This is used to store MM Custom Action Types
-AdvtUISequence ISComments      Y                                       Text    
        Author’s comments on this Sequence.
-AdvtUISequence Sequence        Y       -4      32767                           
        Number that determines the sort order in which the actions are to be 
executed.  Leave blank to suppress action.
-AppId  ActivateAtStorage       Y       0       1                               
        
-AppId  AppId   N                                       Guid            
-AppId  DllSurrogate    Y                                       Text            
-AppId  LocalService    Y                                       Text            
-AppId  RemoteServerName        Y                                       
Formatted               
-AppId  RunAsInteractiveUser    Y       0       1                               
        
-AppId  ServiceParameters       Y                                       Text    
        
-AppSearch      Property        N                                       
Identifier              The property associated with a Signature
-AppSearch      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature,  RegLocator, IniLocator, CompLocator 
and the DrLocator tables.
-BBControl      Attributes      Y       0       2147483647                      
                A 32-bit word that specifies the attribute flags to be applied 
to this control.
-BBControl      BBControl       N                                       
Identifier              Name of the control. This name must be unique within a 
billboard, but can repeat on different billboard.
-BBControl      Billboard_      N                       Billboard       1       
Identifier              External key to the Billboard table, name of the 
billboard.
-BBControl      Height  N       0       32767                                   
Height of the bounding rectangle of the control.
-BBControl      Text    Y                                       Text            
A string used to set the initial text contained within a control (if 
appropriate).
-BBControl      Type    N                                       Identifier      
        The type of the control.
-BBControl      Width   N       0       32767                                   
Width of the bounding rectangle of the control.
-BBControl      X       N       0       32767                                   
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
-BBControl      Y       N       0       32767                                   
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
-Billboard      Action  Y                                       Identifier      
        The name of an action. The billboard is displayed during the progress 
messages received from this action.
-Billboard      Billboard       N                                       
Identifier              Name of the billboard.
-Billboard      Feature_        N                       Feature 1       
Identifier              An external key to the Feature Table. The billboard is 
shown only if this feature is being installed.
-Billboard      Ordering        Y       0       32767                           
        A positive integer. If there is more than one billboard corresponding 
to an action they will be shown in the order defined by this column.
-Binary Data    Y                                       Binary          Binary 
stream. The binary icon data in PE (.DLL or .EXE) or icon (.ICO) format.
-Binary ISBuildSourcePath       Y                                       Text    
        Full path to the ICO or EXE file.
-Binary Name    N                                       Identifier              
Unique key identifying the binary data.
-BindImage      File_   N                       File    1       Identifier      
        The index into the File table. This must be an executable file.
-BindImage      Path    Y                                       Paths           
A list of ;  delimited paths that represent the paths to be searched for the 
import DLLS. The list is usually a list of properties each enclosed within 
square brackets [] .
-CCPSearch      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature,  RegLocator, IniLocator, CompLocator 
and the DrLocator tables.
-CheckBox       Property        N                                       
Identifier              A named property to be tied to the item.
-CheckBox       Value   Y                                       Formatted       
        The value string associated with the item.
-Class  AppId_  Y                       AppId   1       Guid            
Optional AppID containing DCOM information for associated application (string 
GUID).
-Class  Argument        Y                                       Formatted       
        optional argument for LocalServers.
-Class  Attributes      Y               32767                                   
Class registration attributes.
-Class  CLSID   N                                       Guid            The 
CLSID of an OLE factory.
-Class  Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
-Class  Context N                                       Identifier              
The numeric server context for this server. CLSCTX_xxxx
-Class  DefInprocHandler        Y                                       Text    
1;2;3   Optional default inproc handler.  Only optionally provided if 
Context=CLSCTX_LOCAL_SERVER.  Typically "ole32.dll" or "mapi32.dll"
-Class  Description     Y                                       Text            
Localized description for the Class.
-Class  Feature_        N                       Feature 1       Identifier      
        Required foreign key into the Feature Table, specifying the feature to 
validate or install in order for the CLSID factory to be operational.
-Class  FileTypeMask    Y                                       Text            
Optional string containing information for the HKCRthis CLSID) key. If multiple 
patterns exist, they must be delimited by a semicolon, and numeric subkeys will 
be generated: 0,1,2...
-Class  Icon_   Y                       Icon    1       Identifier              
Optional foreign key into the Icon Table, specifying the icon file associated 
with this CLSID. Will be written under the DefaultIcon key.
-Class  IconIndex       Y       -32767  32767                                   
Optional icon index.
-Class  ProgId_Default  Y                       ProgId  1       Text            
Optional ProgId associated with this CLSID.
-ComboBox       Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list.The integers do not have to be consecutive.
-ComboBox       Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same combobox.
-ComboBox       Text    Y                                       Formatted       
        The visible text to be assigned to the item. Optional. If this entry or 
the entire column is missing, the text is the same as the value.
-ComboBox       Value   N                                       Formatted       
        The value string associated with this item. Selecting the line will set 
the associated property to this value.
-CompLocator    ComponentId     N                                       Guid    
        A string GUID unique to this component, version, and language.
-CompLocator    Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table.
-CompLocator    Type    Y       0       1                                       
A boolean value that determines if the registry value is a filename or a 
directory location.
-Complus        Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
ComPlus component.
-Complus        ExpType Y       0       32767                                   
ComPlus component attributes.
-Component      Attributes      N                                               
        Remote execution option, one of irsEnum
-Component      Component       N                                       
Identifier              Primary key used to identify a particular component 
record.
-Component      ComponentId     Y                                       Guid    
        A string GUID unique to this component, version, and language.
-Component      Condition       Y                                       
Condition               A conditional statement that will disable this 
component if the specified condition evaluates to the 'True' state. If a 
component is disabled, it will not be installed, regardless of the 'Action' 
state associated with the component.
-Component      Directory_      N                       Directory       1       
Identifier              Required key of a Directory table record. This is 
actually a property name whose value contains the actual path, set either by 
the AppSearch action or with the default setting obtained from the Directory 
table.
-Component      ISAttributes    Y                                               
        This is used to store Installshield custom properties of a component.
-Component      ISComments      Y                                       Text    
        User Comments.
-Component      ISRegFileToMergeAtBuild Y                                       
Text            Path and File name of a .REG file to merge into the component 
at build time.
-Component      ISScanAtBuildFile       Y                                       
Text            File used by the Dot Net scanner to populate dependant 
assemblies' File_Application field.
-Component      KeyPath Y                       File;ODBCDataSource;Registry    
1       Identifier              Either the primary key into the File table, 
Registry table, or ODBCDataSource table. This extract path is stored when the 
component is installed, and is used to detect the presence of the component and 
to return the path to it.
-Condition      Condition       Y                                       
Condition               Expression evaluated to determine if Level in the 
Feature table is to change.
-Condition      Feature_        N                       Feature 1       
Identifier              Reference to a Feature entry in Feature table.
-Condition      Level   N       0       32767                                   
New selection Level to set in Feature table if Condition evaluates to TRUE.
-Control        Attributes      Y       0       2147483647                      
                A 32-bit word that specifies the attribute flags to be applied 
to this control.
-Control        Binary_ Y                                       Identifier      
        External key to the Binary table.
-Control        Control N                                       Identifier      
        Name of the control. This name must be unique within a dialog, but can 
repeat on different dialogs. 
-Control        Control_Next    Y                       Control 2       
Identifier              The name of an other control on the same dialog. This 
link defines the tab order of the controls. The links have to form one or more 
cycles!
-Control        Dialog_ N                       Dialog  1       Identifier      
        External key to the Dialog table, name of the dialog.
-Control        Height  N       0       32767                                   
Height of the bounding rectangle of the control.
-Control        Help    Y                                       Text            
The help strings used with the button. The text is optional. 
-Control        ISBuildSourcePath       Y                                       
Text            Full path to .rtf file for scrollable text control
-Control        ISControlId     Y                                               
        A number used to represent the control ID of the Control, Used in 
Dialog export
-Control        ISWindowStyle   Y       0       2147483647                      
                A 32-bit word that specifies non-MSI window styles to be 
applied to this control.
-Control        Property        Y                                       
Identifier              The name of a defined property to be linked to this 
control. 
-Control        Text    Y                                       Formatted       
        A string used to set the initial text contained within a control (if 
appropriate).
-Control        Type    N                                       Identifier      
        The type of the control.
-Control        Width   N       0       32767                                   
Width of the bounding rectangle of the control.
-Control        X       N       0       32767                                   
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
-Control        Y       N       0       32767                                   
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
-ControlCondition       Action  N                                               
Default;Disable;Enable;Hide;Show        The desired action to be taken on the 
specified control.
-ControlCondition       Condition       N                                       
Condition               A standard conditional statement that specifies under 
which conditions the action should be triggered.
-ControlCondition       Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control.
-ControlCondition       Dialog_ N                       Dialog  1       
Identifier              A foreign key to the Dialog table, name of the dialog.
-ControlEvent   Argument        N                                       
Formatted               A value to be used as a modifier when triggering a 
particular event.
-ControlEvent   Condition       Y                                       
Condition               A standard conditional statement that specifies under 
which conditions an event should be triggered.
-ControlEvent   Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control
-ControlEvent   Dialog_ N                       Dialog  1       Identifier      
        A foreign key to the Dialog table, name of the dialog.
-ControlEvent   Event   N                                       Formatted       
        An identifier that specifies the type of the event that should take 
place when the user interacts with control specified by the first two entries.
-ControlEvent   Ordering        Y       0       2147483647                      
                An integer used to order several events tied to the same 
control. Can be left blank.
-CreateFolder   Component_      N                       Component       1       
Identifier              Foreign key into the Component table.
-CreateFolder   Directory_      N                       Directory       1       
Identifier              Primary key, could be foreign key into the Directory 
table.
-CustomAction   Action  N                                       Identifier      
        Primary key, name of action, normally appears in sequence table unless 
private use.
-CustomAction   ISComments      Y                                       Text    
        Author’s comments for this custom action.
-CustomAction   Source  Y                                       CustomSource    
        The table reference of the source of the code.
-CustomAction   Target  Y                       
ISDLLWrapper;ISInstallScriptAction      1       Formatted               
Excecution parameter, depends on the type of custom action
-CustomAction   Type    N       1       8191                                    
The numeric custom action type, consisting of source location, code type, 
entry, option flags.
-Dialog Attributes      Y       0       2147483647                              
        A 32-bit word that specifies the attribute flags to be applied to this 
dialog.
-Dialog Control_Cancel  Y                       Control 2       Identifier      
        Defines the cancel control. Hitting escape or clicking on the close 
icon on the dialog is equivalent to pushing this button.
-Dialog Control_Default Y                       Control 2       Identifier      
        Defines the default control. Hitting return is equivalent to pushing 
this button.
-Dialog Control_First   N                       Control 2       Identifier      
        Defines the control that has the focus when the dialog is created.
-Dialog Dialog  N                                       Identifier              
Name of the dialog.
-Dialog HCentering      N       0       100                                     
Horizontal position of the dialog on a 0-100 scale. 0 means left end, 100 means 
right end of the screen, 50 center.
-Dialog Height  N       0       32767                                   Height 
of the bounding rectangle of the dialog.
-Dialog ISComments      Y                                       Text            
Author’s comments for this dialog.
-Dialog ISResourceId    Y                                                       
A Number the Specifies the Dialog ID to be used in Dialog Export
-Dialog ISWindowStyle   Y                                                       
A 32-bit word that specifies non-MSI window styles to be applied to this 
control. This is only used in Script Based Setups.
-Dialog TextStyle_      Y                                       Identifier      
        Foreign Key into TextStyle table, only used in Script Based Projects.
-Dialog Title   Y                                       Formatted               
A text string specifying the title to be displayed in the title bar of the 
dialog's window.
-Dialog VCentering      N       0       100                                     
Vertical position of the dialog on a 0-100 scale. 0 means top end, 100 means 
bottom end of the screen, 50 center.
-Dialog Width   N       0       32767                                   Width 
of the bounding rectangle of the dialog.
-Directory      DefaultDir      N                                       Text    
        The default sub-path under parent's path.
-Directory      Directory       N                                       
Identifier              Unique identifier for directory entry, primary key. If 
a property by this name is defined, it contains the full path to the directory.
-Directory      Directory_Parent        Y                       Directory       
1       Identifier              Reference to the entry in this table specifying 
the default parent directory. A record parented to itself or with a Null parent 
represents a root of the install tree.
-Directory      ISAttributes    Y                                               
0;1;2;3 This is used to store Installshield custom properties of a directory.  
Currently the only one is Shortcut.
-Directory      ISDescription   Y                                       Text    
        Description of folder
-DrLocator      Depth   Y       0       32767                                   
The depth below the path to which the Signature_ is recursively searched. If 
absent, the depth is assumed to be 0.
-DrLocator      Parent  Y                                       Identifier      
        The parent file signature. It is also a foreign key in the Signature 
table. If null and the Path column does not expand to a full path, then all the 
fixed drives of the user system are searched using the Path.
-DrLocator      Path    Y                                       AnyPath         
The path on the user system. This is a either a subpath below the value of the 
Parent or a full path. The path may contain properties enclosed within [ ] that 
will be expanded.
-DrLocator      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature table.
-DuplicateFile  Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
duplicate file.
-DuplicateFile  DestFolder      Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full pathname to a destination folder.
-DuplicateFile  DestName        Y                                       Text    
        Filename to be given to the duplicate file.
-DuplicateFile  File_   N                       File    1       Identifier      
        Foreign key referencing the source file to be duplicated.
-DuplicateFile  FileKey N                                       Identifier      
        Primary key used to identify a particular file entry
-Environment    Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the environmental value.
-Environment    Environment     N                                       
Identifier              Unique identifier for the environmental variable setting
-Environment    Name    N                                       Text            
The name of the environmental value.
-Environment    Value   Y                                       Formatted       
        The value to set in the environmental settings.
-Error  Error   N       0       32767                                   Integer 
error number, obtained from header file IError(...) macros.
-Error  Message Y                                       Template                
Error formatting template, obtained from user ed. or localizers.
-EventMapping   Attribute       N                                       
Identifier              The name of the control attribute, that is set when 
this event is received.
-EventMapping   Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control.
-EventMapping   Dialog_ N                       Dialog  1       Identifier      
        A foreign key to the Dialog table, name of the Dialog.
-EventMapping   Event   N                                       Identifier      
        An identifier that specifies the type of the event that the control 
subscribes to.
-Extension      Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
-Extension      Extension       N                                       Text    
        The extension associated with the table row.
-Extension      Feature_        N                       Feature 1       
Identifier              Required foreign key into the Feature Table, specifying 
the feature to validate or install in order for the CLSID factory to be 
operational.
-Extension      MIME_   Y                       MIME    1       Text            
Optional Context identifier, typically "type/format" associated with the 
extension
-Extension      ProgId_ Y                       ProgId  1       Text            
Optional ProgId associated with this extension.
-Feature        Attributes      N                                               
0;1;2;4;5;6;8;9;10;16;17;18;20;21;22;24;25;26;32;33;34;36;37;38;48;49;50;52;53;54
       Feature attributes
-Feature        Description     Y                                       Text    
        Longer descriptive text describing a visible feature item.
-Feature        Directory_      Y                       Directory       1       
UpperCase               The name of the Directory that can be configured by the 
UI. A non-null value will enable the browse button.
-Feature        Display Y       0       32767                                   
Numeric sort order, used to force a specific display ordering.
-Feature        Feature N                                       Identifier      
        Primary key used to identify a particular feature record.
-Feature        Feature_Parent  Y                       Feature 1       
Identifier              Optional key of a parent record in the same table. If 
the parent is not selected, then the record will not be installed. Null 
indicates a root item.
-Feature        ISComments      Y                                               
        Comments
-Feature        ISReleaseFlags  Y                                               
        Release Flags that specify whether this  feature will be built in a 
particular release.
-Feature        Level   N       0       32767                                   
The install level at which record will be initially selected. An install level 
of 0 will disable an item and prevent its display.
-Feature        Title   Y                                       Text            
Short text identifying a visible feature item.
-FeatureComponents      Component_      N                       Component       
1       Identifier              Foreign key into Component table.
-FeatureComponents      Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
-File   Attributes      Y       0       32767                                   
Integer containing bit flags representing file attributes (with the decimal 
value of each bit position in parentheses)
-File   Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file.
-File   File    N                                       Identifier              
Primary key, non-localized token, must match identifier in cabinet.  For 
uncompressed files, this field is ignored.
-File   FileName        N                                       Text            
File name used for installation.  This may contain a "short name|long name" 
pair.  It may be just a long name, hence it cannot be of the Filename data type.
-File   FileSize        N       0       2147483647                              
        Size of file in bytes (long integer).
-File   ISAttributes    Y       0       2147483647                              
        This field contains the following attributes: UseSystemSettings(0x1)
-File   ISBuildSourcePath       Y                                       Text    
        Full path, the category is of Text instead of Path because of potential 
use of path variables.
-File   Language        Y                                       Language        
        List of decimal language Ids, comma-separated if more than one.
-File   Sequence        N       1       32767                                   
Sequence with respect to the media images; order must track cabinet order.
-File   Version Y                       File    1       Version         Version 
string for versioned files;  Blank for unversioned files.
-FileSFPCatalog File_   N                       File    1       Identifier      
        File associated with the catalog
-FileSFPCatalog SFPCatalog_     N                       SFPCatalog      1       
Text            Catalog associated with the file
-Font   File_   N                       File    1       Identifier              
Primary key, foreign key into File table referencing font file.
-Font   FontTitle       Y                                       Text            
Font name.
-Icon   Data    Y                                       Binary          Binary 
stream. The binary icon data in PE (.DLL or .EXE) or icon (.ICO) format.
-Icon   ISBuildSourcePath       Y                                       Text    
        Full path to the ICO or EXE file.
-Icon   ISIconIndex     Y       -32767  32767                                   
Optional icon index to be extracted.
-Icon   Name    N                                       Identifier              
Primary key. Name of the icon file.
-IniFile        Action  N                                               0;1;3   
The type of modification to be made, one of iifEnum
-IniFile        Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the .INI value.
-IniFile        DirProperty     Y                                       
Identifier              Foreign key into the Directory table denoting the 
directory where the .INI file is.
-IniFile        FileName        N                                       Text    
        The .INI file name in which to write the information
-IniFile        IniFile N                                       Identifier      
        Primary key, non-localized token.
-IniFile        Key     N                                       Formatted       
        The .INI file key below Section.
-IniFile        Section N                                       Formatted       
        The .INI file Section.
-IniFile        Value   N                                       Formatted       
        The value to be written.
-IniLocator     Field   Y       0       32767                                   
The field in the .INI line. If Field is null or 0 the entire line is read.
-IniLocator     FileName        N                                       Text    
        The .INI file name.
-IniLocator     Key     N                                       Text            
Key value (followed by an equals sign in INI file).
-IniLocator     Section N                                       Text            
Section name within in file (within square brackets in INI file).
-IniLocator     Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table.
-IniLocator     Type    Y       0       2                                       
An integer value that determines if the .INI value read is a filename or a 
directory location or to be used as is w/o interpretation.
-InstallExecuteSequence Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
-InstallExecuteSequence Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
-InstallExecuteSequence ISAttributes    Y                                       
                This is used to store MM Custom Action Types
-InstallExecuteSequence ISComments      Y                                       
Text            Author’s comments on this Sequence.
-InstallExecuteSequence Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
-InstallShield  Property        N                                       
Identifier              Name of property, uppercase if settable by launcher or 
loader.
-InstallShield  Value   Y                                       Text            
String value for property.
-InstallUISequence      Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
-InstallUISequence      Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
-InstallUISequence      ISAttributes    Y                                       
                This is used to store MM Custom Action Types
-InstallUISequence      ISComments      Y                                       
Text            Author’s comments on this Sequence.
-InstallUISequence      Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
-ISComponentExtended    Component_      N                       Component       
1       Identifier              Primary key used to identify a particular 
component record.
-ISComponentExtended    FilterProperty  N                                       
Identifier              Property to set if you want to filter a component
-ISComponentExtended    Language        Y                                       
Text            Language
-ISComponentExtended    OS      Y                                               
        bitwise addition of OSs
-ISDependency   Exclude Y                                                       
-ISDependency   ISDependency    Y                                               
        
-ISDisk1File    ISBuildSourcePath       N                                       
Text            Full path of file to be copied to Disk1 folder
-ISDisk1File    ISDisk1File     N                                       
Identifier              Primary key for ISDisk1File table
-ISDLLWrapper   EntryPoint      N                                       Text    
        This is a foreign key to the target column in the CustomAction table
-ISDLLWrapper   Source  N                                       Formatted       
        This is column points to the source file for the DLLWrapper Custom 
Action
-ISDLLWrapper   Target  N                                       Text            
The function signature
-ISDLLWrapper   Type    Y                                                       
Type
-ISDynamicFile  Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file.
-ISDynamicFile  ExcludeFiles    Y                                       Text    
        Wildcards for excluded files.
-ISDynamicFile  IncludeFiles    Y                                       Text    
        Wildcards for included files.
-ISDynamicFile  IncludeFlags    Y                                               
        Include flags.
-ISDynamicFile  ISAttributes    Y                                               
0;1;2;3 This is used to store Installshield custom properties of a dynamic 
filet.  Currently the only one is SelfRegister.
-ISDynamicFile  SourceFolder    N                                       Text    
        Full path, the category is of Text instead of Path because of potential 
use of path variables.
-ISFeatureMergeModules  Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
-ISFeatureMergeModules  ISMergeModule_  N                       ISMergeModule   
1       Text            Foreign key into ISMergeModule table.
-ISFeatureMergeModules  Language_       N                       ISMergeModule   
2                       Foreign key into ISMergeModule table.
-ISInstallScriptAction  EntryPoint      N                                       
Text            This is a foreign key to the target column in the CustomAction 
table
-ISInstallScriptAction  Source  N                                       
Formatted               This is column points to the source file for the 
DLLWrapper Custom Action
-ISInstallScriptAction  Target  Y                                       Text    
        The function signature
-ISInstallScriptAction  Type    Y                                               
        Type
-ISLanguage     Included        Y                                               
0;1     Specify whether this language should be included.
-ISLanguage     ISLanguage      N                                       
Language                This is the language ID.
-ISLinkerLibrary        ISLinkerLibrary N                                       
Identifier              Unique identifier for the link library.
-ISLinkerLibrary        Library N                                       Text    
        Full path of the object library (.obl file).
-ISLinkerLibrary        Order   N                                               
        Order of the Library
-ISLocalControl Attributes      Y                                               
        A 32-bit word that specifies the attribute flags to be applied to this 
control.
-ISLocalControl Binary_ Y                                       Identifier      
        External key to the Binary table.
-ISLocalControl Control_        N                       Control 2       
Identifier              Name of the control. This name must be unique within a 
dialog, but can repeat on different dialogs.
-ISLocalControl Dialog_ N                       Dialog  1       Identifier      
        External key to the Dialog table, name of the dialog.
-ISLocalControl Height  Y                                                       
Height of the bounding rectangle of the control.
-ISLocalControl ISBuildSourcePath       Y                                       
Text            Full path to .rtf file for scrollable text control
-ISLocalControl ISLanguage_     N                       ISLanguage      1       
Language                This is a foreign key to the ISLanguage table.
-ISLocalControl Width   Y                                                       
Width of the bounding rectangle of the control.
-ISLocalControl X       Y                                                       
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
-ISLocalControl Y       Y                                                       
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
-ISLocalDialog  Attributes      Y                                               
        A 32-bit word that specifies the attribute flags to be applied to this 
dialog.
-ISLocalDialog  Dialog_ Y                       Dialog  1       Identifier      
        Name of the dialog.
-ISLocalDialog  Height  N       0       32767                                   
Height of the bounding rectangle of the dialog.
-ISLocalDialog  ISLanguage_     Y                       ISLanguage      1       
Language                This is a foreign key to the ISLanguage table.
-ISLocalDialog  TextStyle_      Y                                       
Identifier              Foreign Key into TextStyle table, only used in Script 
Based Projects.
-ISLocalDialog  Width   N       0       32767                                   
Width of the bounding rectangle of the dialog.
-ISLogicalDisk  Cabinet Y                                       Cabinet         
If some or all of the files stored on the media are compressed in a cabinet, 
the name of that cabinet.
-ISLogicalDisk  DiskId  N       1       32767                                   
Primary key, integer to determine sort order for table.
-ISLogicalDisk  DiskPrompt      Y                                       Text    
        Disk name: the visible text actually printed on the disk.  This will be 
used to prompt the user when this disk needs to be inserted.
-ISLogicalDisk  ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
-ISLogicalDisk  ISRelease_      N                       ISRelease       1       
Text            Foreign key into the ISRelease table.
-ISLogicalDisk  LastSequence    N       0       32767                           
        File sequence number for the last file for this media.
-ISLogicalDisk  Source  Y                                       Property        
        The property defining the location of the cabinet file.
-ISLogicalDisk  VolumeLabel     Y                                       Text    
        The label attributed to the volume.
-ISLogicalDiskFeatures  Feature_        Y                       Feature 1       
Identifier              Required foreign key into the Feature Table,
-ISLogicalDiskFeatures  ISAttributes    Y                                       
                This is used to store Installshield custom properties, like 
Compressed, etc.
-ISLogicalDiskFeatures  ISLogicalDisk_  N       1       32767   ISLogicalDisk   
1       Identifier              Foreign key into the ISLogicalDisk table.
-ISLogicalDiskFeatures  ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
-ISLogicalDiskFeatures  ISRelease_      N                       ISRelease       
1       Text            Foreign key into the ISRelease table.
-ISLogicalDiskFeatures  Sequence        N       0       32767                   
                File sequence number for the file for this media.
-ISMergeModule  Destination     Y                                       Text    
        Destination.
-ISMergeModule  ISMergeModule   N                                       Text    
        The GUID identifying the merge module.
-ISMergeModule  Language        N                                               
        Default decimal language of module.
-ISMergeModule  Name    N                                       Text            
Name of the merge module.
-ISObject       Language        N                                       Text    
        
-ISObject       ObjectName      N                                       Text    
        
-ISObjectProperty       IncludeInBuild  Y                                       
                Boolean, 0 for false non 0 for true
-ISObjectProperty       ObjectName      Y                       ISObject        
1       Text            
-ISObjectProperty       Property        Y                                       
Text            
-ISObjectProperty       Value   Y                                       Text    
        
-IsolatedComponent      Component_Application   N                       
Component       1       Identifier              Key to Component table item for 
application
-IsolatedComponent      Component_Shared        N                       
Component       1       Identifier              Key to Component table item to 
be isolated
-ISPathVariable ISPathVariable  N                                               
        The name of the path variable.
-ISPathVariable TestValue       Y                                       Text    
        The test value of the path variable.
-ISPathVariable Type    N                                               1;2;4;8 
The type of the path variable.
-ISPathVariable Value   Y                                       Text            
The value of the path variable.
-ISProductConfiguration GeneratePackageCode     Y                               
        Number  0;1     Indicates whether or not to generate a package code.
-ISProductConfiguration ISProductConfiguration  N                               
        Text            The name of the product configuration.
-ISProductConfiguration ProductConfigurationFlags       Y                       
                Text            Product configuration (release) flags.
-ISProductConfigurationProperty ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
-ISProductConfigurationProperty Property        N                       
Property        1       Text            Product Congiuration property name
-ISProductConfigurationProperty Value   Y                                       
Text            String value for property. Never null or empty.
-ISRelease      Attributes      N                                               
        Bitfield holding boolean values for various release attributes.
-ISRelease      BuildLocation   N                                       Text    
        Build location.
-ISRelease      CDBrowser       Y                                       Text    
        Demoshield browser location.
-ISRelease      DefaultLanguage N                                       
Language                Default language for setup.
-ISRelease      DigitalPVK      Y                                       Text    
        Digital signing private key (.pvk) file.
-ISRelease      DigitalSPC      Y                                       Text    
        Digital signing Software Publisher Certificate (.spc) file.
-ISRelease      DigitalURL      Y                                       Text    
        Digital signing URL.
-ISRelease      DiskClusterSize N                                               
        Disk cluster size.
-ISRelease      DiskSize        N                                       Text    
        Disk size.
-ISRelease      DiskSizeUnit    N                                               
0;1     Disk size units (KB or MB).
-ISRelease      DiskSpanning    N                                               
0;1;2   Disk spanning (automatic, enforce size, etc.).
-ISRelease      DotNetBuildConfiguration        Y                               
        Text            Build Configuration for .NET solutions.
-ISRelease      ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
-ISRelease      ISRelease       N                                       Text    
        The name of the release.
-ISRelease      MediaLocation   N                                       Text    
        Media location on disk.
-ISRelease      MsiCommandLine  Y                                       Text    
        Command line passed to the msi package from setup.exe
-ISRelease      MsiSourceType   N       -1      4                               
        MSI media source type.
-ISRelease      PackageName     N                                       Text    
        Package name.
-ISRelease      Password        Y                                       Text    
        Password.
-ISRelease      Platforms       N                                       Text    
        Platforms supported (Intel, Alpha, etc.).
-ISRelease      ReleaseFlags    Y                                       Text    
        Release flags.
-ISRelease      ReleaseType     N                                               
1;2;4   Release type (single, uncompressed, etc.).
-ISRelease      SupportedLanguagesData  Y                                       
Text            Languages supported (for component filtering).
-ISRelease      SupportedLanguagesUI    N                                       
Text            UI languages supported.
-ISRelease      SupportedOSs    N                                               
        Indicate which operating systmes are supported.
-ISRelease      SynchMsi        Y                                       Text    
        MSI file to synchronize file keys and other data with (patch-like 
functionality).
-ISRelease      Type    N       0       4                                       
Release type (CDROM, Network, etc.).
-ISRelease      URLLocation     Y                                       Text    
        Media location via URL.
-ISRelease      VersionCopyright        Y                                       
Text            Version stamp information.
-ISReleaseExtended      DigitalCertificateDBaseNS       Y                       
                Text            Path to cerificate database for Netscape 
digital  signature
-ISReleaseExtended      DigitalCertificateIdNS  Y                               
        Text            Path to cerificate ID for Netscape digital  signature
-ISReleaseExtended      DigitalCertificatePasswordNS    Y                       
                Text            Password for Netscape digital  signature
-ISReleaseExtended      DotNetRedistLocation    Y       0       3               
                        Location of .NET framework Redist (Web, SetupExe, 
Source, None)
-ISReleaseExtended      DotNetRedistURL Y                                       
Text            URL to .NET framework Redist
-ISReleaseExtended      EngineLocation  Y       0       2                       
                Location of msi engine (Web, SetupExe...)
-ISReleaseExtended      ISEngineLocation        Y       0       2               
                        Location of ISScript  engine (Web, SetupExe...)
-ISReleaseExtended      ISEngineURL     Y                                       
Text            URL to InstallShield scripting engine
-ISReleaseExtended      ISProductConfiguration_ N                               
        Text            Foreign key into the ISProductConfiguration table.
-ISReleaseExtended      ISRelease_      N                                       
Text            The name of the release.
-ISReleaseExtended      OneClickCabName Y                                       
Text            File name of generated cabfile
-ISReleaseExtended      OneClickHtmlName        Y                               
        Text            File name of generated html page
-ISReleaseExtended      OneClickTargetBrowser   Y       0       2               
                        Target browser (IE, Netscape, both...)
-ISReleaseExtended      WebCabSize      Y       0       2147483647              
                        Size of the cabfile
-ISReleaseExtended      WebLocalCachePath       Y                               
        Text            Directory to cache downloaded package
-ISReleaseExtended      WebType Y       0       2                               
        Type of web install (One Executable, Downloader...)
-ISReleaseExtended      WebURL  Y                                       Text    
        URL to .msi package
-ISReleaseExtended      Win9xMsiUrl     Y                                       
Text            URL to Ansi MSI engine
-ISReleaseExtended      WinNTMsiUrl     Y                                       
Text            URL to Unicode MSI engine
-ISScriptFile   ISScriptFile    N                                       Text    
        This is the full path of the script file. The path portion may be 
expressed in path variable form.
-ISSelfReg      CmdLine Y                                                       
-ISSelfReg      Cost    Y                                                       
-ISSelfReg      FileKey N                       File    1       Identifier      
        Foreign key to the file table
-ISSelfReg      Order   Y                                                       
-ISSetupFile    FileName        Y                                       Text    
        This is the file name to use when streaming the file to the support 
files location
-ISSetupFile    ISSetupFile     N                                       
Identifier              This is the primary key to the ISSetupFile table
-ISSetupFile    Language        Y                                       Text    
        Four digit language identifier.  0 for Language Neutral
-ISSetupFile    Path    Y                                       Text            
Link to the source file on the build machine
-ISSetupFile    Splash  Y                                       Short           
Boolean value indication whether his setup file entry belongs in the Splasc 
Screen section
-ISSetupFile    Stream  Y                                       Binary          
Binary stream. The bits to stream to the support location
-ISStorages     ISBuildSourcePath       Y                                       
                Path to the file to stream into sub-storage
-ISStorages     Name    N                                                       
Name of the sub-storage key
-ISString       Comment Y                                       Text            
Comment
-ISString       Encoded Y                                                       
Encoding for multi-byte strings.
-ISString       ISLanguage_     N                                       
Language                This is a foreign key to the ISLanguage table.
-ISString       ISString        N                                       Text    
        String id.
-ISString       TimeStamp       Y                                       
Time/Date               Time Stamp. MSI's Time/Date column type is just an int, 
with bits packed in a certain order.
-ISString       Value   Y                                       Text            
real string value.
-ISVRoot        Condition       Y                                               
        
-ISVRoot        VRootAppName    Y                                       Text    
        Localizable Application Name
-ISVRoot        VRootDefDoc     Y                                       Text    
        Localizable Defeault Doc
-ISVRoot        VRootDir        N                                               
        
-ISVRoot        VRootKey        N                                               
        
-ISVRoot        VRootName       N                                       Text    
        Localizable Virtual Root Name
-ISVRoot        VRootProps      N                                               
        
-ISVRootAppMaps AppMapProps     N                                               
        
-ISVRootAppMaps ExecPath        N                                       Text    
        Localizable Exec Path
-ISVRootAppMaps Extension       N                                       Text    
        Localizable Extension
-ISVRootAppMaps Verb    N                                       Text            
Localizable Verb
-ISVRootAppMaps VRootAppMapKey  N                                               
        
-ISVRootAppMaps VRootKey        N                                               
        
-LaunchCondition        Condition       N                                       
Condition               Expression which must evaluate to TRUE in order for 
install to commence.
-LaunchCondition        Description     N                                       
Text            Localizable text to display when condition fails and install 
must abort.
-ListBox        Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
-ListBox        Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same listbox.
-ListBox        Text    Y                                       Text            
The visible text to be assigned to the item. Optional. If this entry or the 
entire column is missing, the text is the same as the value.
-ListBox        Value   N                                       Formatted       
        The value string associated with this item. Selecting the line will set 
the associated property to this value.
-ListView       Binary_ Y                       Binary  1       Identifier      
        The name of the icon to be displayed with the icon. The binary 
information is looked up from the Binary Table.
-ListView       Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
-ListView       Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same listview.
-ListView       Text    Y                                       Text            
The visible text to be assigned to the item. Optional. If this entry or the 
entire column is missing, the text is the same as the value.
-ListView       Value   N                                       Text            
The value string associated with this item. Selecting the line will set the 
associated property to this value.
-LockPermissions        Domain  Y                                       Text    
        Domain name for user whose permissions are being set. (usually a 
property)
-LockPermissions        LockObject      N                                       
Identifier              Foreign key into Registry or File table
-LockPermissions        Permission      Y       -2147483647     2147483647      
                                Permission Access mask.  Full Control = 
268435456 (GENERIC_ALL = 0x10000000)
-LockPermissions        Table   N                                       
Identifier      Directory;File;Registry Reference to another table name
-LockPermissions        User    N                                       Text    
        User for permissions to be set.  (usually a property)
-Media  Cabinet Y                                       Cabinet         If some 
or all of the files stored on the media are compressed in a cabinet, the name 
of that cabinet.
-Media  DiskId  N       1       32767                                   Primary 
key, integer to determine sort order for table.
-Media  DiskPrompt      Y                                       Text            
Disk name: the visible text actually printed on the disk.  This will be used to 
prompt the user when this disk needs to be inserted.
-Media  LastSequence    N       0       32767                                   
File sequence number for the last file for this media.
-Media  Source  Y                                       Property                
The property defining the location of the cabinet file.
-Media  VolumeLabel     Y                                       Text            
The label attributed to the volume.
-MIME   CLSID   Y                       Class   1       Guid            
Optional associated CLSID.
-MIME   ContentType     N                                       Text            
Primary key. Context identifier, typically "type/format".
-MIME   Extension_      N                       Extension       1       Text    
        Optional associated extension (without dot)
-MoveFile       Component_      N                       Component       1       
Identifier              If this component is not "selected" for installation or 
removal, no action will be taken on the associated MoveFile entry
-MoveFile       DestFolder      N                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the destination directory
-MoveFile       DestName        Y                                       Text    
        Name to be given to the original file after it is moved or copied.  If 
blank, the destination file will be given the same name as the source file
-MoveFile       FileKey N                                       Identifier      
        Primary key that uniquely identifies a particular MoveFile record
-MoveFile       Options N       0       1                                       
Integer value specifying the MoveFile operating mode, one of imfoEnum
-MoveFile       SourceFolder    Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the source directory
-MoveFile       SourceName      Y                                       Text    
        Name of the source file(s) to be moved or copied.  Can contain the '*' 
or '?' wildcards.
-MsiAssembly    Attributes      Y                                               
        Assembly attributes
-MsiAssembly    Component_      N                       Component       1       
Identifier              Foreign key into Component table.
-MsiAssembly    Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
-MsiAssembly    File_Application        Y                       File    1       
Identifier              Foreign key into File table, denoting the application 
context for private assemblies. Null for global assemblies.
-MsiAssembly    File_Manifest   Y                       File    1       
Identifier              Foreign key into the File table denoting the manifest 
file for the assembly.
-MsiAssemblyName        Component_      N                       Component       
1       Identifier              Foreign key into Component table.
-MsiAssemblyName        Name    N                                       Text    
        The name part of the name-value pairs for the assembly name.
-MsiAssemblyName        Value   N                                       Text    
        The value part of the name-value pairs for the assembly name.
-MsiDigitalCertificate  CertData        N                                       
Binary          A certificate context blob for a signer certificate
-MsiDigitalCertificate  DigitalCertificate      N                               
        Identifier              A unique identifier for the row
-MsiDigitalSignature    DigitalCertificate_     N                       
MsiDigitalCertificate   1       Identifier              Foreign key to 
MsiDigitalCertificate table identifying the signer certificate
-MsiDigitalSignature    Hash    Y                                       Binary  
        The encoded hash blob from the digital signature
-MsiDigitalSignature    SignObject      N                                       
Text            Foreign key to Media table
-MsiDigitalSignature    Table   N                                       
Identifier              Reference to another table name (only Media table is 
supported)
-MsiFileHash    File_   N                       File    1       Identifier      
        Primary key, foreign key into File table referencing file with this hash
-MsiFileHash    HashPart1       N                                               
        Size of file in bytes (long integer).
-MsiFileHash    HashPart2       N                                               
        Size of file in bytes (long integer).
-MsiFileHash    HashPart3       N                                               
        Size of file in bytes (long integer).
-MsiFileHash    HashPart4       N                                               
        Size of file in bytes (long integer).
-MsiFileHash    Options N       0       32767                                   
Various options and attributes for this hash.
-ODBCAttribute  Attribute       N                                       Text    
        Name of ODBC driver attribute
-ODBCAttribute  Driver_ N                       ODBCDriver      1       
Identifier              Reference to ODBC driver in ODBCDriver table
-ODBCAttribute  Value   Y                                       Text            
Value for ODBC driver attribute
-ODBCDataSource Component_      N                       Component       1       
Identifier              Reference to associated component
-ODBCDataSource DataSource      N                                       
Identifier              Primary key, non-localized.internal token for data 
source
-ODBCDataSource Description     N                                       Text    
        Text used as registered name for data source
-ODBCDataSource DriverDescription       N                                       
Text            Reference to driver description, may be existing driver
-ODBCDataSource Registration    N       0       1                               
        Registration option: 0=machine, 1=user, others t.b.d.
-ODBCDriver     Component_      N                       Component       1       
Identifier              Reference to associated component
-ODBCDriver     Description     N                                       Text    
        Text used as registered name for driver, non-localized
-ODBCDriver     Driver  N                                       Identifier      
        Primary key, non-localized.internal token for driver
-ODBCDriver     File_   N                       File    1       Identifier      
        Reference to key driver file
-ODBCDriver     File_Setup      Y                       File    1       
Identifier              Optional reference to key driver setup DLL
-ODBCSourceAttribute    Attribute       N                                       
Text            Name of ODBC data source attribute
-ODBCSourceAttribute    DataSource_     N                       ODBCDataSource  
1       Identifier              Reference to ODBC data source in ODBCDataSource 
table
-ODBCSourceAttribute    Value   Y                                       Text    
        Value for ODBC data source attribute
-ODBCTranslator Component_      N                       Component       1       
Identifier              Reference to associated component
-ODBCTranslator Description     N                                       Text    
        Text used as registered name for translator
-ODBCTranslator File_   N                       File    1       Identifier      
        Reference to key translator file
-ODBCTranslator File_Setup      Y                       File    1       
Identifier              Optional reference to key translator setup DLL
-ODBCTranslator Translator      N                                       
Identifier              Primary key, non-localized.internal token for translator
-Patch  Attributes      N       0       32767                                   
Integer containing bit flags representing patch attributes
-Patch  File_   N                       File    1       Identifier              
Primary key, non-localized token, foreign key to File table, must match 
identifier in cabinet.
-Patch  Header  Y                                       Binary          Binary 
stream. The patch header, used for patch validation.
-Patch  ISBuildSourcePath       Y                                       Text    
        Full path to patch header.
-Patch  PatchSize       N       0       2147483647                              
        Size of patch in bytes (long integer).
-Patch  Sequence        N       0       32767                                   
Primary key, sequence with respect to the media images; order must track 
cabinet order.
-PatchPackage   Media_  N       0       32767                                   
Foreign key to DiskId column of Media table. Indicates the disk containing the 
patch package.
-PatchPackage   PatchId N                                       Guid            
A unique string GUID representing this patch.
-ProgId Class_  Y                       Class   1       Guid            The 
CLSID of an OLE factory corresponding to the ProgId.
-ProgId Description     Y                                       Text            
Localized description for the Program identifier.
-ProgId Icon_   Y                       Icon    1       Identifier              
Optional foreign key into the Icon Table, specifying the icon file associated 
with this ProgId. Will be written under the DefaultIcon key.
-ProgId IconIndex       Y       -32767  32767                                   
Optional icon index.
-ProgId ISAttributes    Y                                                       
This is used to store Installshield custom properties of a component, like 
ExtractIcon, etc.
-ProgId ProgId  N                                       Text            The 
Program Identifier. Primary key.
-ProgId ProgId_Parent   Y                       ProgId  1       Text            
The Parent Program Identifier. If specified, the ProgId column becomes a 
version independent prog id.
-Property       ISComments      Y                                       Text    
        User Comments.
-Property       Property        N                                       
Identifier              Name of property, uppercase if settable by launcher or 
loader.
-Property       Value   Y                                       Text            
String value for property.
-PublishComponent       AppData Y                                       Text    
        This is localisable Application specific data that can be associated 
with a Qualified Component.
-PublishComponent       Component_      N                       Component       
1       Identifier              Foreign key into the Component table.
-PublishComponent       ComponentId     N                                       
Guid            A string GUID that represents the component id that will be 
requested by the alien product.
-PublishComponent       Feature_        N                       Feature 1       
Identifier              Foreign key into the Feature table.
-PublishComponent       Qualifier       N                                       
Text            This is defined only when the ComponentId column is an 
Qualified Component Id. This is the Qualifier for ProvideComponentIndirect.
-RadioButton    Height  N       0       32767                                   
The height of the button.
-RadioButton    Help    Y                                       Text            
The help strings used with the button. The text is optional.
-RadioButton    Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
-RadioButton    Property        N                                       
Identifier              A named property to be tied to this radio button. All 
the buttons tied to the same property become part of the same group.
-RadioButton    Text    Y                                       Text            
The visible title to be assigned to the radio button.
-RadioButton    Value   N                                       Formatted       
        The value string associated with this button. Selecting the button will 
set the associated property to this value.
-RadioButton    Width   N       0       32767                                   
The width of the button.
-RadioButton    X       N       0       32767                                   
The horizontal coordinate of the upper left corner of the bounding rectangle of 
the radio button.
-RadioButton    Y       N       0       32767                                   
The vertical coordinate of the upper left corner of the bounding rectangle of 
the radio button.
-Registry       Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the registry value.
-Registry       ISAttributes    Y                                               
0;1     This is used to store Installshield custom properties of a registry 
item.  Currently the only one is Automatic.
-Registry       Key     N                                       RegPath         
The key for the registry value.
-Registry       Name    Y                                       Formatted       
        The registry value name.
-Registry       Registry        N                                       
Identifier              Primary key, non-localized token.
-Registry       Root    N       -1      3                                       
The predefined root key for the registry value, one of rrkEnum.
-Registry       Value   Y                                       Formatted       
        The registry value.
-RegLocator     Key     N                                       RegPath         
The key for the registry value.
-RegLocator     Name    Y                                       Formatted       
        The registry value name.
-RegLocator     Root    N       0       3                                       
The predefined root key for the registry value, one of rrkEnum.
-RegLocator     Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table. If the type is 0, 
the registry values refers a directory, and _Signature is not a foreign key.
-RegLocator     Type    Y                                                       
An integer value that determines if the registry value is a filename or a 
directory location or to be used as is w/o interpretation.
-RemoveFile     Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file to be removed.
-RemoveFile     DirProperty     N                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full pathname to the folder of the file to be removed.
-RemoveFile     FileKey N                                       Identifier      
        Primary key used to identify a particular file entry
-RemoveFile     FileName        Y                                       Text    
        Name of the file to be removed.
-RemoveFile     InstallMode     N                                               
1;2;3   Installation option, one of iimEnum.
-RemoveIniFile  Action  N                                               2;4     
The type of modification to be made, one of iifEnum.
-RemoveIniFile  Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the deletion of the .INI value.
-RemoveIniFile  DirProperty     Y                                       
Identifier              Foreign key into the Directory table denoting the 
directory where the .INI file is.
-RemoveIniFile  FileName        N                                       Text    
        The .INI file name in which to delete the information
-RemoveIniFile  Key     N                                       Formatted       
        The .INI file key below Section.
-RemoveIniFile  RemoveIniFile   N                                       
Identifier              Primary key, non-localized token.
-RemoveIniFile  Section N                                       Formatted       
        The .INI file Section.
-RemoveIniFile  Value   Y                                       Formatted       
        The value to be deleted. The value is required when Action is 
iifIniRemoveTag
-RemoveRegistry Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the deletion of the registry value.
-RemoveRegistry Key     N                                       RegPath         
The key for the registry value.
-RemoveRegistry Name    Y                                       Formatted       
        The registry value name.
-RemoveRegistry RemoveRegistry  N                                       
Identifier              Primary key, non-localized token.
-RemoveRegistry Root    N       -1      3                                       
The predefined root key for the registry value, one of rrkEnum
-ReserveCost    Component_      N                       Component       1       
Identifier              Reserve a specified amount of space if this component 
is to be installed.
-ReserveCost    ReserveFolder   Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the destination directory
-ReserveCost    ReserveKey      N                                       
Identifier              Primary key that uniquely identifies a particular 
ReserveCost record
-ReserveCost    ReserveLocal    N       0       2147483647                      
                Disk space to reserve if linked component is installed locally.
-ReserveCost    ReserveSource   N       0       2147483647                      
                Disk space to reserve if linked component is installed to run 
from the source location.
-SelfReg        Cost    Y       0       32767                                   
The cost of registering the module.
-SelfReg        File_   N                       File    1       Identifier      
        Foreign key into the File table denoting the module that needs to be 
registered.
-ServiceControl Arguments       Y                                       
Formatted               Arguments for the service.  Separate by [~].
-ServiceControl Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table that 
controls the startup of the service
-ServiceControl Event   N       0       187                                     
Bit field:  Install:  0x1 = Start, 0x2 = Stop, 0x8 = Delete, Uninstall: 0x10 = 
Start, 0x20 = Stop, 0x80 = Delete
-ServiceControl Name    N                                       Formatted       
        Name of a service. /, \, comma and space are invalid
-ServiceControl ServiceControl  N                                       
Identifier              Primary key, non-localized token.
-ServiceControl Wait    Y       0       1                                       
Boolean for whether to wait for the service to fully start
-ServiceInstall Arguments       Y                                       
Formatted               Arguments to include in every start of the service, 
passed to WinMain
-ServiceInstall Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table that 
controls the startup of the service
-ServiceInstall Dependencies    Y                                       
Formatted               Other services this depends on to start.  Separate by 
[~], and end with [~][~]
-ServiceInstall Description     Y                                       Text    
        Description of service.
-ServiceInstall DisplayName     Y                                       
Formatted               External Name of the Service
-ServiceInstall ErrorControl    N       -2147483647     2147483647              
                        Severity of error if service fails to start
-ServiceInstall LoadOrderGroup  Y                                       
Formatted               LoadOrderGroup
-ServiceInstall Name    N                                       Formatted       
        Internal Name of the Service
-ServiceInstall Password        Y                                       
Formatted               password to run service with.  (with StartName)
-ServiceInstall ServiceInstall  N                                       
Identifier              Primary key, non-localized token.
-ServiceInstall ServiceType     N       -2147483647     2147483647              
                        Type of the service
-ServiceInstall StartName       Y                                       
Formatted               User or object name to run service as
-ServiceInstall StartType       N       0       4                               
        Type of the service
-SFPCatalog     Catalog Y                                       Binary          
SFP Catalog
-SFPCatalog     Dependency      Y                                       
Formatted               Parent catalog - only used by SFP
-SFPCatalog     SFPCatalog      N                                       
Filename                File name for the catalog.
-Shortcut       Arguments       Y                                       
Formatted               The command-line arguments for the shortcut.
-Shortcut       Component_      N                       Component       1       
Identifier              Foreign key into the Component table denoting the 
component whose selection gates the the shortcut creation/deletion.
-Shortcut       Description     Y                                       Text    
        The description for the shortcut.
-Shortcut       Directory_      N                       Directory       1       
Identifier              Foreign key into the Directory table denoting the 
directory where the shortcut file is created.
-Shortcut       Hotkey  Y       0       32767                                   
The hotkey for the shortcut. It has the virtual-key code for the key in the 
low-order byte, and the modifier flags in the high-order byte. 
-Shortcut       Icon_   Y                       Icon    1       Identifier      
        Foreign key into the File table denoting the external icon file for the 
shortcut.
-Shortcut       IconIndex       Y       -32767  32767                           
        The icon index for the shortcut.
-Shortcut       ISComments      Y                                       Text    
        Author’s comments on this Shortcut.
-Shortcut       Name    N                                       Text            
The name of the shortcut to be created.
-Shortcut       Shortcut        N                                       
Identifier              Primary key, non-localized token.
-Shortcut       ShowCmd Y                                               1;3;7   
The show command for the application window.The following values may be used.
-Shortcut       Target  N                                       Shortcut        
        The shortcut target. This is usually a property that is expanded to a 
file or a folder that the shortcut points to.
-Shortcut       WkDir   Y                                       Identifier      
        Name of property defining location of working directory.
-Signature      FileName        N                                       Text    
        The name of the file. This may contain a "short name|long name" pair.
-Signature      Languages       Y                                       
Language                The languages supported by the file.
-Signature      MaxDate Y       0       2147483647                              
        The maximum creation date of the file.
-Signature      MaxSize Y       0       2147483647                              
        The maximum size of the file. 
-Signature      MaxVersion      Y                                       Text    
        The maximum version of the file.
-Signature      MinDate Y       0       2147483647                              
        The minimum creation date of the file.
-Signature      MinSize Y       0       2147483647                              
        The minimum size of the file.
-Signature      MinVersion      Y                                       Text    
        The minimum version of the file.
-Signature      Signature       N                                       
Identifier              The table key. The Signature represents a unique file 
signature.
-TextStyle      Color   Y       0       16777215                                
        A long integer indicating the color of the string in the RGB format 
(Red, Green, Blue each 0-255, RGB = R + 256*G + 256^2*B).
-TextStyle      FaceName        N                                       Text    
        A string indicating the name of the font used. Required. The string 
must be at most 31 characters long.
-TextStyle      Size    N       0       32767                                   
The size of the font used. This size is given in our units (1/12 of the system 
font height). Assuming that the system font is set to 12 point size, this is 
equivalent to the point size.
-TextStyle      StyleBits       Y       0       15                              
        A combination of style bits.
-TextStyle      TextStyle       N                                       
Identifier              Name of the style. The primary key of this table. This 
name is embedded in the texts to indicate a style change.
-TypeLib        Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
-TypeLib        Cost    Y       0       2147483647                              
        The cost associated with the registration of the typelib. This column 
is currently optional.
-TypeLib        Description     Y                                       Text    
        
-TypeLib        Directory_      Y                       Directory       1       
Identifier              Optional. The foreign key into the Directory table 
denoting the path to the help file for the type library.
-TypeLib        Feature_        N                       Feature 1       
Identifier              Required foreign key into the Feature Table, specifying 
the feature to validate or install in order for the type library to be 
operational.
-TypeLib        Language        N       0       32767                           
        The language of the library.
-TypeLib        LibID   N                                       Guid            
The GUID that represents the library.
-TypeLib        Version Y       0       2147483647                              
        The version of the library. The major version is in the upper 8 bits of 
the short integer. The minor version is in the lower 8 bits.
-UIText Key     N                                       Identifier              
A unique key that identifies the particular string.
-UIText Text    Y                                       Text            The 
localized version of the string.
-Upgrade        ActionProperty  N                                       
UpperCase               The property to set when a product in this set is found.
-Upgrade        Attributes      N       0       2147483647                      
                The attributes of this product set.
-Upgrade        ISDisplayName   Y                                               
        
-Upgrade        Language        Y                                       
Language                A comma-separated list of languages for either products 
in this set or products not in this set.
-Upgrade        Remove  Y                                       Formatted       
        The list of features to remove when uninstalling a product from this 
set.  The default is "ALL".
-Upgrade        UpgradeCode     N                                       Guid    
        The UpgradeCode GUID belonging to the products in this set.
-Upgrade        VersionMax      Y                                       Text    
        The maximum ProductVersion of the products in this set.  The set may or 
may not include products with this particular version.
-Upgrade        VersionMin      Y                                       Text    
        The minimum ProductVersion of the products in this set.  The set may or 
may not include products with this particular version.
-Verb   Argument        Y                                       Formatted       
        Optional value for the command arguments.
-Verb   Command Y                                       Formatted               
The command text.
-Verb   Extension_      N                       Extension       1       Text    
        The extension associated with the table row.
-Verb   Sequence        Y       0       32767                                   
Order within the verbs for a particular extension. Also used simply to specify 
the default verb.
-Verb   Verb    N                                       Text            The 
verb for the command.
+Table  Column  Nullable        MinValue        MaxValue        KeyTable        
KeyColumn       Category        Set     Description
+s32    s32     s4      I4      I4      S255    I2      S32     S255    S255
+1252   _Validation     Table   Column
+_Validation    Category        Y                                               
"Text";"Formatted";"Template";"Condition";"Guid";"Path";"Version";"Language";"Identifier";"Binary";"UpperCase";"LowerCase";"Filename";"Paths";"AnyPath";"WildCardFilename";"RegPath";"KeyFormatted";"CustomSource";"Property";"Cabinet";"Shortcut";"URL";"DefaultDir"
   String category
+_Validation    Column  N                                       Identifier      
        Name of column
+_Validation    Description     Y                                       Text    
        Description of column
+_Validation    KeyColumn       Y       1       32                              
        Column to which foreign key connects
+_Validation    KeyTable        Y                                       
Identifier              For foreign key, Name of table to which data must link
+_Validation    MaxValue        Y       -2147483647     2147483647              
                        Maximum value allowed
+_Validation    MinValue        Y       -2147483647     2147483647              
                        Minimum value allowed
+_Validation    Nullable        N                                               
Y;N;@   Whether the column is nullable
+_Validation    Set     Y                                       Text            
Set of values that are permitted
+_Validation    Table   N                                       Identifier      
        Name of table
+ActionText     Action  N                                       Identifier      
        Name of action to be described.
+ActionText     Description     Y                                       Text    
        Localized description displayed in progress dialog and log when action 
is executing.
+ActionText     Template        Y                                       
Template                Optional localized format template used to format 
action data records for display during action execution.
+AdminExecuteSequence   Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
+AdminExecuteSequence   Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
+AdminExecuteSequence   ISAttributes    Y                                       
                This is used to store MM Custom Action Types
+AdminExecuteSequence   ISComments      Y                                       
Text            Author’s comments on this Sequence.
+AdminExecuteSequence   Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
+AdminUISequence        Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
+AdminUISequence        Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
+AdminUISequence        ISAttributes    Y                                       
                This is used to store MM Custom Action Types
+AdminUISequence        ISComments      Y                                       
Text            Author’s comments on this Sequence.
+AdminUISequence        Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
+AdvtExecuteSequence    Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
+AdvtExecuteSequence    Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
+AdvtExecuteSequence    ISAttributes    Y                                       
                This is used to store MM Custom Action Types
+AdvtExecuteSequence    ISComments      Y                                       
Text            Author’s comments on this Sequence.
+AdvtExecuteSequence    Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
+AdvtUISequence Action  N                                       Identifier      
        Name of action to invoke, either in the engine or the handler DLL.
+AdvtUISequence Condition       Y                                       Text    
        Optional expression which skips the action if evaluates to expFalse.If 
the expression syntax is invalid, the engine will terminate, returning 
iesBadActionData.
+AdvtUISequence ISAttributes    Y                                               
        This is used to store MM Custom Action Types
+AdvtUISequence ISComments      Y                                       Text    
        Author’s comments on this Sequence.
+AdvtUISequence Sequence        Y       -4      32767                           
        Number that determines the sort order in which the actions are to be 
executed.  Leave blank to suppress action.
+AppId  ActivateAtStorage       Y       0       1                               
        
+AppId  AppId   N                                       Guid            
+AppId  DllSurrogate    Y                                       Text            
+AppId  LocalService    Y                                       Text            
+AppId  RemoteServerName        Y                                       
Formatted               
+AppId  RunAsInteractiveUser    Y       0       1                               
        
+AppId  ServiceParameters       Y                                       Text    
        
+AppSearch      Property        N                                       
Identifier              The property associated with a Signature
+AppSearch      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature,  RegLocator, IniLocator, CompLocator 
and the DrLocator tables.
+BBControl      Attributes      Y       0       2147483647                      
                A 32-bit word that specifies the attribute flags to be applied 
to this control.
+BBControl      BBControl       N                                       
Identifier              Name of the control. This name must be unique within a 
billboard, but can repeat on different billboard.
+BBControl      Billboard_      N                       Billboard       1       
Identifier              External key to the Billboard table, name of the 
billboard.
+BBControl      Height  N       0       32767                                   
Height of the bounding rectangle of the control.
+BBControl      Text    Y                                       Text            
A string used to set the initial text contained within a control (if 
appropriate).
+BBControl      Type    N                                       Identifier      
        The type of the control.
+BBControl      Width   N       0       32767                                   
Width of the bounding rectangle of the control.
+BBControl      X       N       0       32767                                   
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
+BBControl      Y       N       0       32767                                   
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
+Billboard      Action  Y                                       Identifier      
        The name of an action. The billboard is displayed during the progress 
messages received from this action.
+Billboard      Billboard       N                                       
Identifier              Name of the billboard.
+Billboard      Feature_        N                       Feature 1       
Identifier              An external key to the Feature Table. The billboard is 
shown only if this feature is being installed.
+Billboard      Ordering        Y       0       32767                           
        A positive integer. If there is more than one billboard corresponding 
to an action they will be shown in the order defined by this column.
+Binary Data    Y                                       Binary          Binary 
stream. The binary icon data in PE (.DLL or .EXE) or icon (.ICO) format.
+Binary ISBuildSourcePath       Y                                       Text    
        Full path to the ICO or EXE file.
+Binary Name    N                                       Identifier              
Unique key identifying the binary data.
+BindImage      File_   N                       File    1       Identifier      
        The index into the File table. This must be an executable file.
+BindImage      Path    Y                                       Paths           
A list of ;  delimited paths that represent the paths to be searched for the 
import DLLS. The list is usually a list of properties each enclosed within 
square brackets [] .
+CCPSearch      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature,  RegLocator, IniLocator, CompLocator 
and the DrLocator tables.
+CheckBox       Property        N                                       
Identifier              A named property to be tied to the item.
+CheckBox       Value   Y                                       Formatted       
        The value string associated with the item.
+Class  AppId_  Y                       AppId   1       Guid            
Optional AppID containing DCOM information for associated application (string 
GUID).
+Class  Argument        Y                                       Formatted       
        optional argument for LocalServers.
+Class  Attributes      Y               32767                                   
Class registration attributes.
+Class  CLSID   N                                       Guid            The 
CLSID of an OLE factory.
+Class  Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
+Class  Context N                                       Identifier              
The numeric server context for this server. CLSCTX_xxxx
+Class  DefInprocHandler        Y                                       Text    
1;2;3   Optional default inproc handler.  Only optionally provided if 
Context=CLSCTX_LOCAL_SERVER.  Typically "ole32.dll" or "mapi32.dll"
+Class  Description     Y                                       Text            
Localized description for the Class.
+Class  Feature_        N                       Feature 1       Identifier      
        Required foreign key into the Feature Table, specifying the feature to 
validate or install in order for the CLSID factory to be operational.
+Class  FileTypeMask    Y                                       Text            
Optional string containing information for the HKCRthis CLSID) key. If multiple 
patterns exist, they must be delimited by a semicolon, and numeric subkeys will 
be generated: 0,1,2...
+Class  Icon_   Y                       Icon    1       Identifier              
Optional foreign key into the Icon Table, specifying the icon file associated 
with this CLSID. Will be written under the DefaultIcon key.
+Class  IconIndex       Y       -32767  32767                                   
Optional icon index.
+Class  ProgId_Default  Y                       ProgId  1       Text            
Optional ProgId associated with this CLSID.
+ComboBox       Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list.The integers do not have to be consecutive.
+ComboBox       Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same combobox.
+ComboBox       Text    Y                                       Formatted       
        The visible text to be assigned to the item. Optional. If this entry or 
the entire column is missing, the text is the same as the value.
+ComboBox       Value   N                                       Formatted       
        The value string associated with this item. Selecting the line will set 
the associated property to this value.
+CompLocator    ComponentId     N                                       Guid    
        A string GUID unique to this component, version, and language.
+CompLocator    Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table.
+CompLocator    Type    Y       0       1                                       
A boolean value that determines if the registry value is a filename or a 
directory location.
+Complus        Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
ComPlus component.
+Complus        ExpType Y       0       32767                                   
ComPlus component attributes.
+Component      Attributes      N                                               
        Remote execution option, one of irsEnum
+Component      Component       N                                       
Identifier              Primary key used to identify a particular component 
record.
+Component      ComponentId     Y                                       Guid    
        A string GUID unique to this component, version, and language.
+Component      Condition       Y                                       
Condition               A conditional statement that will disable this 
component if the specified condition evaluates to the 'True' state. If a 
component is disabled, it will not be installed, regardless of the 'Action' 
state associated with the component.
+Component      Directory_      N                       Directory       1       
Identifier              Required key of a Directory table record. This is 
actually a property name whose value contains the actual path, set either by 
the AppSearch action or with the default setting obtained from the Directory 
table.
+Component      ISAttributes    Y                                               
        This is used to store Installshield custom properties of a component.
+Component      ISComments      Y                                       Text    
        User Comments.
+Component      ISRegFileToMergeAtBuild Y                                       
Text            Path and File name of a .REG file to merge into the component 
at build time.
+Component      ISScanAtBuildFile       Y                                       
Text            File used by the Dot Net scanner to populate dependant 
assemblies' File_Application field.
+Component      KeyPath Y                       File;ODBCDataSource;Registry    
1       Identifier              Either the primary key into the File table, 
Registry table, or ODBCDataSource table. This extract path is stored when the 
component is installed, and is used to detect the presence of the component and 
to return the path to it.
+Condition      Condition       Y                                       
Condition               Expression evaluated to determine if Level in the 
Feature table is to change.
+Condition      Feature_        N                       Feature 1       
Identifier              Reference to a Feature entry in Feature table.
+Condition      Level   N       0       32767                                   
New selection Level to set in Feature table if Condition evaluates to TRUE.
+Control        Attributes      Y       0       2147483647                      
                A 32-bit word that specifies the attribute flags to be applied 
to this control.
+Control        Binary_ Y                                       Identifier      
        External key to the Binary table.
+Control        Control N                                       Identifier      
        Name of the control. This name must be unique within a dialog, but can 
repeat on different dialogs. 
+Control        Control_Next    Y                       Control 2       
Identifier              The name of an other control on the same dialog. This 
link defines the tab order of the controls. The links have to form one or more 
cycles!
+Control        Dialog_ N                       Dialog  1       Identifier      
        External key to the Dialog table, name of the dialog.
+Control        Height  N       0       32767                                   
Height of the bounding rectangle of the control.
+Control        Help    Y                                       Text            
The help strings used with the button. The text is optional. 
+Control        ISBuildSourcePath       Y                                       
Text            Full path to .rtf file for scrollable text control
+Control        ISControlId     Y                                               
        A number used to represent the control ID of the Control, Used in 
Dialog export
+Control        ISWindowStyle   Y       0       2147483647                      
                A 32-bit word that specifies non-MSI window styles to be 
applied to this control.
+Control        Property        Y                                       
Identifier              The name of a defined property to be linked to this 
control. 
+Control        Text    Y                                       Formatted       
        A string used to set the initial text contained within a control (if 
appropriate).
+Control        Type    N                                       Identifier      
        The type of the control.
+Control        Width   N       0       32767                                   
Width of the bounding rectangle of the control.
+Control        X       N       0       32767                                   
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
+Control        Y       N       0       32767                                   
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
+ControlCondition       Action  N                                               
Default;Disable;Enable;Hide;Show        The desired action to be taken on the 
specified control.
+ControlCondition       Condition       N                                       
Condition               A standard conditional statement that specifies under 
which conditions the action should be triggered.
+ControlCondition       Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control.
+ControlCondition       Dialog_ N                       Dialog  1       
Identifier              A foreign key to the Dialog table, name of the dialog.
+ControlEvent   Argument        N                                       
Formatted               A value to be used as a modifier when triggering a 
particular event.
+ControlEvent   Condition       Y                                       
Condition               A standard conditional statement that specifies under 
which conditions an event should be triggered.
+ControlEvent   Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control
+ControlEvent   Dialog_ N                       Dialog  1       Identifier      
        A foreign key to the Dialog table, name of the dialog.
+ControlEvent   Event   N                                       Formatted       
        An identifier that specifies the type of the event that should take 
place when the user interacts with control specified by the first two entries.
+ControlEvent   Ordering        Y       0       2147483647                      
                An integer used to order several events tied to the same 
control. Can be left blank.
+CreateFolder   Component_      N                       Component       1       
Identifier              Foreign key into the Component table.
+CreateFolder   Directory_      N                       Directory       1       
Identifier              Primary key, could be foreign key into the Directory 
table.
+CustomAction   Action  N                                       Identifier      
        Primary key, name of action, normally appears in sequence table unless 
private use.
+CustomAction   ISComments      Y                                       Text    
        Author’s comments for this custom action.
+CustomAction   Source  Y                                       CustomSource    
        The table reference of the source of the code.
+CustomAction   Target  Y                       
ISDLLWrapper;ISInstallScriptAction      1       Formatted               
Excecution parameter, depends on the type of custom action
+CustomAction   Type    N       1       8191                                    
The numeric custom action type, consisting of source location, code type, 
entry, option flags.
+Dialog Attributes      Y       0       2147483647                              
        A 32-bit word that specifies the attribute flags to be applied to this 
dialog.
+Dialog Control_Cancel  Y                       Control 2       Identifier      
        Defines the cancel control. Hitting escape or clicking on the close 
icon on the dialog is equivalent to pushing this button.
+Dialog Control_Default Y                       Control 2       Identifier      
        Defines the default control. Hitting return is equivalent to pushing 
this button.
+Dialog Control_First   N                       Control 2       Identifier      
        Defines the control that has the focus when the dialog is created.
+Dialog Dialog  N                                       Identifier              
Name of the dialog.
+Dialog HCentering      N       0       100                                     
Horizontal position of the dialog on a 0-100 scale. 0 means left end, 100 means 
right end of the screen, 50 center.
+Dialog Height  N       0       32767                                   Height 
of the bounding rectangle of the dialog.
+Dialog ISComments      Y                                       Text            
Author’s comments for this dialog.
+Dialog ISResourceId    Y                                                       
A Number the Specifies the Dialog ID to be used in Dialog Export
+Dialog ISWindowStyle   Y                                                       
A 32-bit word that specifies non-MSI window styles to be applied to this 
control. This is only used in Script Based Setups.
+Dialog TextStyle_      Y                                       Identifier      
        Foreign Key into TextStyle table, only used in Script Based Projects.
+Dialog Title   Y                                       Formatted               
A text string specifying the title to be displayed in the title bar of the 
dialog's window.
+Dialog VCentering      N       0       100                                     
Vertical position of the dialog on a 0-100 scale. 0 means top end, 100 means 
bottom end of the screen, 50 center.
+Dialog Width   N       0       32767                                   Width 
of the bounding rectangle of the dialog.
+Directory      DefaultDir      N                                       Text    
        The default sub-path under parent's path.
+Directory      Directory       N                                       
Identifier              Unique identifier for directory entry, primary key. If 
a property by this name is defined, it contains the full path to the directory.
+Directory      Directory_Parent        Y                       Directory       
1       Identifier              Reference to the entry in this table specifying 
the default parent directory. A record parented to itself or with a Null parent 
represents a root of the install tree.
+Directory      ISAttributes    Y                                               
0;1;2;3 This is used to store Installshield custom properties of a directory.  
Currently the only one is Shortcut.
+Directory      ISDescription   Y                                       Text    
        Description of folder
+DrLocator      Depth   Y       0       32767                                   
The depth below the path to which the Signature_ is recursively searched. If 
absent, the depth is assumed to be 0.
+DrLocator      Parent  Y                                       Identifier      
        The parent file signature. It is also a foreign key in the Signature 
table. If null and the Path column does not expand to a full path, then all the 
fixed drives of the user system are searched using the Path.
+DrLocator      Path    Y                                       AnyPath         
The path on the user system. This is a either a subpath below the value of the 
Parent or a full path. The path may contain properties enclosed within [ ] that 
will be expanded.
+DrLocator      Signature_      N                       Signature       1       
Identifier              The Signature_ represents a unique file signature and 
is also the foreign key in the Signature table.
+DuplicateFile  Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
duplicate file.
+DuplicateFile  DestFolder      Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full pathname to a destination folder.
+DuplicateFile  DestName        Y                                       Text    
        Filename to be given to the duplicate file.
+DuplicateFile  File_   N                       File    1       Identifier      
        Foreign key referencing the source file to be duplicated.
+DuplicateFile  FileKey N                                       Identifier      
        Primary key used to identify a particular file entry
+Environment    Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the environmental value.
+Environment    Environment     N                                       
Identifier              Unique identifier for the environmental variable setting
+Environment    Name    N                                       Text            
The name of the environmental value.
+Environment    Value   Y                                       Formatted       
        The value to set in the environmental settings.
+Error  Error   N       0       32767                                   Integer 
error number, obtained from header file IError(...) macros.
+Error  Message Y                                       Template                
Error formatting template, obtained from user ed. or localizers.
+EventMapping   Attribute       N                                       
Identifier              The name of the control attribute, that is set when 
this event is received.
+EventMapping   Control_        N                       Control 2       
Identifier              A foreign key to the Control table, name of the control.
+EventMapping   Dialog_ N                       Dialog  1       Identifier      
        A foreign key to the Dialog table, name of the Dialog.
+EventMapping   Event   N                                       Identifier      
        An identifier that specifies the type of the event that the control 
subscribes to.
+Extension      Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
+Extension      Extension       N                                       Text    
        The extension associated with the table row.
+Extension      Feature_        N                       Feature 1       
Identifier              Required foreign key into the Feature Table, specifying 
the feature to validate or install in order for the CLSID factory to be 
operational.
+Extension      MIME_   Y                       MIME    1       Text            
Optional Context identifier, typically "type/format" associated with the 
extension
+Extension      ProgId_ Y                       ProgId  1       Text            
Optional ProgId associated with this extension.
+Feature        Attributes      N                                               
0;1;2;4;5;6;8;9;10;16;17;18;20;21;22;24;25;26;32;33;34;36;37;38;48;49;50;52;53;54
       Feature attributes
+Feature        Description     Y                                       Text    
        Longer descriptive text describing a visible feature item.
+Feature        Directory_      Y                       Directory       1       
UpperCase               The name of the Directory that can be configured by the 
UI. A non-null value will enable the browse button.
+Feature        Display Y       0       32767                                   
Numeric sort order, used to force a specific display ordering.
+Feature        Feature N                                       Identifier      
        Primary key used to identify a particular feature record.
+Feature        Feature_Parent  Y                       Feature 1       
Identifier              Optional key of a parent record in the same table. If 
the parent is not selected, then the record will not be installed. Null 
indicates a root item.
+Feature        ISComments      Y                                               
        Comments
+Feature        ISReleaseFlags  Y                                               
        Release Flags that specify whether this  feature will be built in a 
particular release.
+Feature        Level   N       0       32767                                   
The install level at which record will be initially selected. An install level 
of 0 will disable an item and prevent its display.
+Feature        Title   Y                                       Text            
Short text identifying a visible feature item.
+FeatureComponents      Component_      N                       Component       
1       Identifier              Foreign key into Component table.
+FeatureComponents      Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
+File   Attributes      Y       0       32767                                   
Integer containing bit flags representing file attributes (with the decimal 
value of each bit position in parentheses)
+File   Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file.
+File   File    N                                       Identifier              
Primary key, non-localized token, must match identifier in cabinet.  For 
uncompressed files, this field is ignored.
+File   FileName        N                                       Text            
File name used for installation.  This may contain a "short name|long name" 
pair.  It may be just a long name, hence it cannot be of the Filename data type.
+File   FileSize        N       0       2147483647                              
        Size of file in bytes (long integer).
+File   ISAttributes    Y       0       2147483647                              
        This field contains the following attributes: UseSystemSettings(0x1)
+File   ISBuildSourcePath       Y                                       Text    
        Full path, the category is of Text instead of Path because of potential 
use of path variables.
+File   Language        Y                                       Language        
        List of decimal language Ids, comma-separated if more than one.
+File   Sequence        N       1       32767                                   
Sequence with respect to the media images; order must track cabinet order.
+File   Version Y                       File    1       Version         Version 
string for versioned files;  Blank for unversioned files.
+FileSFPCatalog File_   N                       File    1       Identifier      
        File associated with the catalog
+FileSFPCatalog SFPCatalog_     N                       SFPCatalog      1       
Text            Catalog associated with the file
+Font   File_   N                       File    1       Identifier              
Primary key, foreign key into File table referencing font file.
+Font   FontTitle       Y                                       Text            
Font name.
+Icon   Data    Y                                       Binary          Binary 
stream. The binary icon data in PE (.DLL or .EXE) or icon (.ICO) format.
+Icon   ISBuildSourcePath       Y                                       Text    
        Full path to the ICO or EXE file.
+Icon   ISIconIndex     Y       -32767  32767                                   
Optional icon index to be extracted.
+Icon   Name    N                                       Identifier              
Primary key. Name of the icon file.
+IniFile        Action  N                                               0;1;3   
The type of modification to be made, one of iifEnum
+IniFile        Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the .INI value.
+IniFile        DirProperty     Y                                       
Identifier              Foreign key into the Directory table denoting the 
directory where the .INI file is.
+IniFile        FileName        N                                       Text    
        The .INI file name in which to write the information
+IniFile        IniFile N                                       Identifier      
        Primary key, non-localized token.
+IniFile        Key     N                                       Formatted       
        The .INI file key below Section.
+IniFile        Section N                                       Formatted       
        The .INI file Section.
+IniFile        Value   N                                       Formatted       
        The value to be written.
+IniLocator     Field   Y       0       32767                                   
The field in the .INI line. If Field is null or 0 the entire line is read.
+IniLocator     FileName        N                                       Text    
        The .INI file name.
+IniLocator     Key     N                                       Text            
Key value (followed by an equals sign in INI file).
+IniLocator     Section N                                       Text            
Section name within in file (within square brackets in INI file).
+IniLocator     Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table.
+IniLocator     Type    Y       0       2                                       
An integer value that determines if the .INI value read is a filename or a 
directory location or to be used as is w/o interpretation.
+InstallExecuteSequence Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
+InstallExecuteSequence Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
+InstallExecuteSequence ISAttributes    Y                                       
                This is used to store MM Custom Action Types
+InstallExecuteSequence ISComments      Y                                       
Text            Author’s comments on this Sequence.
+InstallExecuteSequence Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
+InstallShield  Property        N                                       
Identifier              Name of property, uppercase if settable by launcher or 
loader.
+InstallShield  Value   Y                                       Text            
String value for property.
+InstallUISequence      Action  N                                       
Identifier              Name of action to invoke, either in the engine or the 
handler DLL.
+InstallUISequence      Condition       Y                                       
Text            Optional expression which skips the action if evaluates to 
expFalse.If the expression syntax is invalid, the engine will terminate, 
returning iesBadActionData.
+InstallUISequence      ISAttributes    Y                                       
                This is used to store MM Custom Action Types
+InstallUISequence      ISComments      Y                                       
Text            Author’s comments on this Sequence.
+InstallUISequence      Sequence        Y       -4      32767                   
                Number that determines the sort order in which the actions are 
to be executed.  Leave blank to suppress action.
+ISComponentExtended    Component_      N                       Component       
1       Identifier              Primary key used to identify a particular 
component record.
+ISComponentExtended    FilterProperty  N                                       
Identifier              Property to set if you want to filter a component
+ISComponentExtended    Language        Y                                       
Text            Language
+ISComponentExtended    OS      Y                                               
        bitwise addition of OSs
+ISDependency   Exclude Y                                                       
+ISDependency   ISDependency    Y                                               
        
+ISDisk1File    ISBuildSourcePath       N                                       
Text            Full path of file to be copied to Disk1 folder
+ISDisk1File    ISDisk1File     N                                       
Identifier              Primary key for ISDisk1File table
+ISDLLWrapper   EntryPoint      N                                       Text    
        This is a foreign key to the target column in the CustomAction table
+ISDLLWrapper   Source  N                                       Formatted       
        This is column points to the source file for the DLLWrapper Custom 
Action
+ISDLLWrapper   Target  N                                       Text            
The function signature
+ISDLLWrapper   Type    Y                                                       
Type
+ISDynamicFile  Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file.
+ISDynamicFile  ExcludeFiles    Y                                       Text    
        Wildcards for excluded files.
+ISDynamicFile  IncludeFiles    Y                                       Text    
        Wildcards for included files.
+ISDynamicFile  IncludeFlags    Y                                               
        Include flags.
+ISDynamicFile  ISAttributes    Y                                               
0;1;2;3 This is used to store Installshield custom properties of a dynamic 
filet.  Currently the only one is SelfRegister.
+ISDynamicFile  SourceFolder    N                                       Text    
        Full path, the category is of Text instead of Path because of potential 
use of path variables.
+ISFeatureMergeModules  Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
+ISFeatureMergeModules  ISMergeModule_  N                       ISMergeModule   
1       Text            Foreign key into ISMergeModule table.
+ISFeatureMergeModules  Language_       N                       ISMergeModule   
2                       Foreign key into ISMergeModule table.
+ISInstallScriptAction  EntryPoint      N                                       
Text            This is a foreign key to the target column in the CustomAction 
table
+ISInstallScriptAction  Source  N                                       
Formatted               This is column points to the source file for the 
DLLWrapper Custom Action
+ISInstallScriptAction  Target  Y                                       Text    
        The function signature
+ISInstallScriptAction  Type    Y                                               
        Type
+ISLanguage     Included        Y                                               
0;1     Specify whether this language should be included.
+ISLanguage     ISLanguage      N                                       
Language                This is the language ID.
+ISLinkerLibrary        ISLinkerLibrary N                                       
Identifier              Unique identifier for the link library.
+ISLinkerLibrary        Library N                                       Text    
        Full path of the object library (.obl file).
+ISLinkerLibrary        Order   N                                               
        Order of the Library
+ISLocalControl Attributes      Y                                               
        A 32-bit word that specifies the attribute flags to be applied to this 
control.
+ISLocalControl Binary_ Y                                       Identifier      
        External key to the Binary table.
+ISLocalControl Control_        N                       Control 2       
Identifier              Name of the control. This name must be unique within a 
dialog, but can repeat on different dialogs.
+ISLocalControl Dialog_ N                       Dialog  1       Identifier      
        External key to the Dialog table, name of the dialog.
+ISLocalControl Height  Y                                                       
Height of the bounding rectangle of the control.
+ISLocalControl ISBuildSourcePath       Y                                       
Text            Full path to .rtf file for scrollable text control
+ISLocalControl ISLanguage_     N                       ISLanguage      1       
Language                This is a foreign key to the ISLanguage table.
+ISLocalControl Width   Y                                                       
Width of the bounding rectangle of the control.
+ISLocalControl X       Y                                                       
Horizontal coordinate of the upper left corner of the bounding rectangle of the 
control.
+ISLocalControl Y       Y                                                       
Vertical coordinate of the upper left corner of the bounding rectangle of the 
control.
+ISLocalDialog  Attributes      Y                                               
        A 32-bit word that specifies the attribute flags to be applied to this 
dialog.
+ISLocalDialog  Dialog_ Y                       Dialog  1       Identifier      
        Name of the dialog.
+ISLocalDialog  Height  N       0       32767                                   
Height of the bounding rectangle of the dialog.
+ISLocalDialog  ISLanguage_     Y                       ISLanguage      1       
Language                This is a foreign key to the ISLanguage table.
+ISLocalDialog  TextStyle_      Y                                       
Identifier              Foreign Key into TextStyle table, only used in Script 
Based Projects.
+ISLocalDialog  Width   N       0       32767                                   
Width of the bounding rectangle of the dialog.
+ISLogicalDisk  Cabinet Y                                       Cabinet         
If some or all of the files stored on the media are compressed in a cabinet, 
the name of that cabinet.
+ISLogicalDisk  DiskId  N       1       32767                                   
Primary key, integer to determine sort order for table.
+ISLogicalDisk  DiskPrompt      Y                                       Text    
        Disk name: the visible text actually printed on the disk.  This will be 
used to prompt the user when this disk needs to be inserted.
+ISLogicalDisk  ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
+ISLogicalDisk  ISRelease_      N                       ISRelease       1       
Text            Foreign key into the ISRelease table.
+ISLogicalDisk  LastSequence    N       0       32767                           
        File sequence number for the last file for this media.
+ISLogicalDisk  Source  Y                                       Property        
        The property defining the location of the cabinet file.
+ISLogicalDisk  VolumeLabel     Y                                       Text    
        The label attributed to the volume.
+ISLogicalDiskFeatures  Feature_        Y                       Feature 1       
Identifier              Required foreign key into the Feature Table,
+ISLogicalDiskFeatures  ISAttributes    Y                                       
                This is used to store Installshield custom properties, like 
Compressed, etc.
+ISLogicalDiskFeatures  ISLogicalDisk_  N       1       32767   ISLogicalDisk   
1       Identifier              Foreign key into the ISLogicalDisk table.
+ISLogicalDiskFeatures  ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
+ISLogicalDiskFeatures  ISRelease_      N                       ISRelease       
1       Text            Foreign key into the ISRelease table.
+ISLogicalDiskFeatures  Sequence        N       0       32767                   
                File sequence number for the file for this media.
+ISMergeModule  Destination     Y                                       Text    
        Destination.
+ISMergeModule  ISMergeModule   N                                       Text    
        The GUID identifying the merge module.
+ISMergeModule  Language        N                                               
        Default decimal language of module.
+ISMergeModule  Name    N                                       Text            
Name of the merge module.
+ISObject       Language        N                                       Text    
        
+ISObject       ObjectName      N                                       Text    
        
+ISObjectProperty       IncludeInBuild  Y                                       
                Boolean, 0 for false non 0 for true
+ISObjectProperty       ObjectName      Y                       ISObject        
1       Text            
+ISObjectProperty       Property        Y                                       
Text            
+ISObjectProperty       Value   Y                                       Text    
        
+IsolatedComponent      Component_Application   N                       
Component       1       Identifier              Key to Component table item for 
application
+IsolatedComponent      Component_Shared        N                       
Component       1       Identifier              Key to Component table item to 
be isolated
+ISPathVariable ISPathVariable  N                                               
        The name of the path variable.
+ISPathVariable TestValue       Y                                       Text    
        The test value of the path variable.
+ISPathVariable Type    N                                               1;2;4;8 
The type of the path variable.
+ISPathVariable Value   Y                                       Text            
The value of the path variable.
+ISProductConfiguration GeneratePackageCode     Y                               
        Number  0;1     Indicates whether or not to generate a package code.
+ISProductConfiguration ISProductConfiguration  N                               
        Text            The name of the product configuration.
+ISProductConfiguration ProductConfigurationFlags       Y                       
                Text            Product configuration (release) flags.
+ISProductConfigurationProperty ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
+ISProductConfigurationProperty Property        N                       
Property        1       Text            Product Congiuration property name
+ISProductConfigurationProperty Value   Y                                       
Text            String value for property. Never null or empty.
+ISRelease      Attributes      N                                               
        Bitfield holding boolean values for various release attributes.
+ISRelease      BuildLocation   N                                       Text    
        Build location.
+ISRelease      CDBrowser       Y                                       Text    
        Demoshield browser location.
+ISRelease      DefaultLanguage N                                       
Language                Default language for setup.
+ISRelease      DigitalPVK      Y                                       Text    
        Digital signing private key (.pvk) file.
+ISRelease      DigitalSPC      Y                                       Text    
        Digital signing Software Publisher Certificate (.spc) file.
+ISRelease      DigitalURL      Y                                       Text    
        Digital signing URL.
+ISRelease      DiskClusterSize N                                               
        Disk cluster size.
+ISRelease      DiskSize        N                                       Text    
        Disk size.
+ISRelease      DiskSizeUnit    N                                               
0;1     Disk size units (KB or MB).
+ISRelease      DiskSpanning    N                                               
0;1;2   Disk spanning (automatic, enforce size, etc.).
+ISRelease      DotNetBuildConfiguration        Y                               
        Text            Build Configuration for .NET solutions.
+ISRelease      ISProductConfiguration_ N                       
ISProductConfiguration  1       Text            Foreign key into the 
ISProductConfiguration table.
+ISRelease      ISRelease       N                                       Text    
        The name of the release.
+ISRelease      MediaLocation   N                                       Text    
        Media location on disk.
+ISRelease      MsiCommandLine  Y                                       Text    
        Command line passed to the msi package from setup.exe
+ISRelease      MsiSourceType   N       -1      4                               
        MSI media source type.
+ISRelease      PackageName     N                                       Text    
        Package name.
+ISRelease      Password        Y                                       Text    
        Password.
+ISRelease      Platforms       N                                       Text    
        Platforms supported (Intel, Alpha, etc.).
+ISRelease      ReleaseFlags    Y                                       Text    
        Release flags.
+ISRelease      ReleaseType     N                                               
1;2;4   Release type (single, uncompressed, etc.).
+ISRelease      SupportedLanguagesData  Y                                       
Text            Languages supported (for component filtering).
+ISRelease      SupportedLanguagesUI    N                                       
Text            UI languages supported.
+ISRelease      SupportedOSs    N                                               
        Indicate which operating systmes are supported.
+ISRelease      SynchMsi        Y                                       Text    
        MSI file to synchronize file keys and other data with (patch-like 
functionality).
+ISRelease      Type    N       0       4                                       
Release type (CDROM, Network, etc.).
+ISRelease      URLLocation     Y                                       Text    
        Media location via URL.
+ISRelease      VersionCopyright        Y                                       
Text            Version stamp information.
+ISReleaseExtended      DigitalCertificateDBaseNS       Y                       
                Text            Path to cerificate database for Netscape 
digital  signature
+ISReleaseExtended      DigitalCertificateIdNS  Y                               
        Text            Path to cerificate ID for Netscape digital  signature
+ISReleaseExtended      DigitalCertificatePasswordNS    Y                       
                Text            Password for Netscape digital  signature
+ISReleaseExtended      DotNetRedistLocation    Y       0       3               
                        Location of .NET framework Redist (Web, SetupExe, 
Source, None)
+ISReleaseExtended      DotNetRedistURL Y                                       
Text            URL to .NET framework Redist
+ISReleaseExtended      EngineLocation  Y       0       2                       
                Location of msi engine (Web, SetupExe...)
+ISReleaseExtended      ISEngineLocation        Y       0       2               
                        Location of ISScript  engine (Web, SetupExe...)
+ISReleaseExtended      ISEngineURL     Y                                       
Text            URL to InstallShield scripting engine
+ISReleaseExtended      ISProductConfiguration_ N                               
        Text            Foreign key into the ISProductConfiguration table.
+ISReleaseExtended      ISRelease_      N                                       
Text            The name of the release.
+ISReleaseExtended      OneClickCabName Y                                       
Text            File name of generated cabfile
+ISReleaseExtended      OneClickHtmlName        Y                               
        Text            File name of generated html page
+ISReleaseExtended      OneClickTargetBrowser   Y       0       2               
                        Target browser (IE, Netscape, both...)
+ISReleaseExtended      WebCabSize      Y       0       2147483647              
                        Size of the cabfile
+ISReleaseExtended      WebLocalCachePath       Y                               
        Text            Directory to cache downloaded package
+ISReleaseExtended      WebType Y       0       2                               
        Type of web install (One Executable, Downloader...)
+ISReleaseExtended      WebURL  Y                                       Text    
        URL to .msi package
+ISReleaseExtended      Win9xMsiUrl     Y                                       
Text            URL to Ansi MSI engine
+ISReleaseExtended      WinNTMsiUrl     Y                                       
Text            URL to Unicode MSI engine
+ISScriptFile   ISScriptFile    N                                       Text    
        This is the full path of the script file. The path portion may be 
expressed in path variable form.
+ISSelfReg      CmdLine Y                                                       
+ISSelfReg      Cost    Y                                                       
+ISSelfReg      FileKey N                       File    1       Identifier      
        Foreign key to the file table
+ISSelfReg      Order   Y                                                       
+ISSetupFile    FileName        Y                                       Text    
        This is the file name to use when streaming the file to the support 
files location
+ISSetupFile    ISSetupFile     N                                       
Identifier              This is the primary key to the ISSetupFile table
+ISSetupFile    Language        Y                                       Text    
        Four digit language identifier.  0 for Language Neutral
+ISSetupFile    Path    Y                                       Text            
Link to the source file on the build machine
+ISSetupFile    Splash  Y                                       Short           
Boolean value indication whether his setup file entry belongs in the Splasc 
Screen section
+ISSetupFile    Stream  Y                                       Binary          
Binary stream. The bits to stream to the support location
+ISStorages     ISBuildSourcePath       Y                                       
                Path to the file to stream into sub-storage
+ISStorages     Name    N                                                       
Name of the sub-storage key
+ISString       Comment Y                                       Text            
Comment
+ISString       Encoded Y                                                       
Encoding for multi-byte strings.
+ISString       ISLanguage_     N                                       
Language                This is a foreign key to the ISLanguage table.
+ISString       ISString        N                                       Text    
        String id.
+ISString       TimeStamp       Y                                       
Time/Date               Time Stamp. MSI's Time/Date column type is just an int, 
with bits packed in a certain order.
+ISString       Value   Y                                       Text            
real string value.
+ISVRoot        Condition       Y                                               
        
+ISVRoot        VRootAppName    Y                                       Text    
        Localizable Application Name
+ISVRoot        VRootDefDoc     Y                                       Text    
        Localizable Defeault Doc
+ISVRoot        VRootDir        N                                               
        
+ISVRoot        VRootKey        N                                               
        
+ISVRoot        VRootName       N                                       Text    
        Localizable Virtual Root Name
+ISVRoot        VRootProps      N                                               
        
+ISVRootAppMaps AppMapProps     N                                               
        
+ISVRootAppMaps ExecPath        N                                       Text    
        Localizable Exec Path
+ISVRootAppMaps Extension       N                                       Text    
        Localizable Extension
+ISVRootAppMaps Verb    N                                       Text            
Localizable Verb
+ISVRootAppMaps VRootAppMapKey  N                                               
        
+ISVRootAppMaps VRootKey        N                                               
        
+LaunchCondition        Condition       N                                       
Condition               Expression which must evaluate to TRUE in order for 
install to commence.
+LaunchCondition        Description     N                                       
Text            Localizable text to display when condition fails and install 
must abort.
+ListBox        Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
+ListBox        Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same listbox.
+ListBox        Text    Y                                       Text            
The visible text to be assigned to the item. Optional. If this entry or the 
entire column is missing, the text is the same as the value.
+ListBox        Value   N                                       Formatted       
        The value string associated with this item. Selecting the line will set 
the associated property to this value.
+ListView       Binary_ Y                       Binary  1       Identifier      
        The name of the icon to be displayed with the icon. The binary 
information is looked up from the Binary Table.
+ListView       Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
+ListView       Property        N                                       
Identifier              A named property to be tied to this item. All the items 
tied to the same property become part of the same listview.
+ListView       Text    Y                                       Text            
The visible text to be assigned to the item. Optional. If this entry or the 
entire column is missing, the text is the same as the value.
+ListView       Value   N                                       Text            
The value string associated with this item. Selecting the line will set the 
associated property to this value.
+LockPermissions        Domain  Y                                       Text    
        Domain name for user whose permissions are being set. (usually a 
property)
+LockPermissions        LockObject      N                                       
Identifier              Foreign key into Registry or File table
+LockPermissions        Permission      Y       -2147483647     2147483647      
                                Permission Access mask.  Full Control = 
268435456 (GENERIC_ALL = 0x10000000)
+LockPermissions        Table   N                                       
Identifier      Directory;File;Registry Reference to another table name
+LockPermissions        User    N                                       Text    
        User for permissions to be set.  (usually a property)
+Media  Cabinet Y                                       Cabinet         If some 
or all of the files stored on the media are compressed in a cabinet, the name 
of that cabinet.
+Media  DiskId  N       1       32767                                   Primary 
key, integer to determine sort order for table.
+Media  DiskPrompt      Y                                       Text            
Disk name: the visible text actually printed on the disk.  This will be used to 
prompt the user when this disk needs to be inserted.
+Media  LastSequence    N       0       32767                                   
File sequence number for the last file for this media.
+Media  Source  Y                                       Property                
The property defining the location of the cabinet file.
+Media  VolumeLabel     Y                                       Text            
The label attributed to the volume.
+MIME   CLSID   Y                       Class   1       Guid            
Optional associated CLSID.
+MIME   ContentType     N                                       Text            
Primary key. Context identifier, typically "type/format".
+MIME   Extension_      N                       Extension       1       Text    
        Optional associated extension (without dot)
+MoveFile       Component_      N                       Component       1       
Identifier              If this component is not "selected" for installation or 
removal, no action will be taken on the associated MoveFile entry
+MoveFile       DestFolder      N                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the destination directory
+MoveFile       DestName        Y                                       Text    
        Name to be given to the original file after it is moved or copied.  If 
blank, the destination file will be given the same name as the source file
+MoveFile       FileKey N                                       Identifier      
        Primary key that uniquely identifies a particular MoveFile record
+MoveFile       Options N       0       1                                       
Integer value specifying the MoveFile operating mode, one of imfoEnum
+MoveFile       SourceFolder    Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the source directory
+MoveFile       SourceName      Y                                       Text    
        Name of the source file(s) to be moved or copied.  Can contain the '*' 
or '?' wildcards.
+MsiAssembly    Attributes      Y                                               
        Assembly attributes
+MsiAssembly    Component_      N                       Component       1       
Identifier              Foreign key into Component table.
+MsiAssembly    Feature_        N                       Feature 1       
Identifier              Foreign key into Feature table.
+MsiAssembly    File_Application        Y                       File    1       
Identifier              Foreign key into File table, denoting the application 
context for private assemblies. Null for global assemblies.
+MsiAssembly    File_Manifest   Y                       File    1       
Identifier              Foreign key into the File table denoting the manifest 
file for the assembly.
+MsiAssemblyName        Component_      N                       Component       
1       Identifier              Foreign key into Component table.
+MsiAssemblyName        Name    N                                       Text    
        The name part of the name-value pairs for the assembly name.
+MsiAssemblyName        Value   N                                       Text    
        The value part of the name-value pairs for the assembly name.
+MsiDigitalCertificate  CertData        N                                       
Binary          A certificate context blob for a signer certificate
+MsiDigitalCertificate  DigitalCertificate      N                               
        Identifier              A unique identifier for the row
+MsiDigitalSignature    DigitalCertificate_     N                       
MsiDigitalCertificate   1       Identifier              Foreign key to 
MsiDigitalCertificate table identifying the signer certificate
+MsiDigitalSignature    Hash    Y                                       Binary  
        The encoded hash blob from the digital signature
+MsiDigitalSignature    SignObject      N                                       
Text            Foreign key to Media table
+MsiDigitalSignature    Table   N                                       
Identifier              Reference to another table name (only Media table is 
supported)
+MsiFileHash    File_   N                       File    1       Identifier      
        Primary key, foreign key into File table referencing file with this hash
+MsiFileHash    HashPart1       N                                               
        Size of file in bytes (long integer).
+MsiFileHash    HashPart2       N                                               
        Size of file in bytes (long integer).
+MsiFileHash    HashPart3       N                                               
        Size of file in bytes (long integer).
+MsiFileHash    HashPart4       N                                               
        Size of file in bytes (long integer).
+MsiFileHash    Options N       0       32767                                   
Various options and attributes for this hash.
+ODBCAttribute  Attribute       N                                       Text    
        Name of ODBC driver attribute
+ODBCAttribute  Driver_ N                       ODBCDriver      1       
Identifier              Reference to ODBC driver in ODBCDriver table
+ODBCAttribute  Value   Y                                       Text            
Value for ODBC driver attribute
+ODBCDataSource Component_      N                       Component       1       
Identifier              Reference to associated component
+ODBCDataSource DataSource      N                                       
Identifier              Primary key, non-localized.internal token for data 
source
+ODBCDataSource Description     N                                       Text    
        Text used as registered name for data source
+ODBCDataSource DriverDescription       N                                       
Text            Reference to driver description, may be existing driver
+ODBCDataSource Registration    N       0       1                               
        Registration option: 0=machine, 1=user, others t.b.d.
+ODBCDriver     Component_      N                       Component       1       
Identifier              Reference to associated component
+ODBCDriver     Description     N                                       Text    
        Text used as registered name for driver, non-localized
+ODBCDriver     Driver  N                                       Identifier      
        Primary key, non-localized.internal token for driver
+ODBCDriver     File_   N                       File    1       Identifier      
        Reference to key driver file
+ODBCDriver     File_Setup      Y                       File    1       
Identifier              Optional reference to key driver setup DLL
+ODBCSourceAttribute    Attribute       N                                       
Text            Name of ODBC data source attribute
+ODBCSourceAttribute    DataSource_     N                       ODBCDataSource  
1       Identifier              Reference to ODBC data source in ODBCDataSource 
table
+ODBCSourceAttribute    Value   Y                                       Text    
        Value for ODBC data source attribute
+ODBCTranslator Component_      N                       Component       1       
Identifier              Reference to associated component
+ODBCTranslator Description     N                                       Text    
        Text used as registered name for translator
+ODBCTranslator File_   N                       File    1       Identifier      
        Reference to key translator file
+ODBCTranslator File_Setup      Y                       File    1       
Identifier              Optional reference to key translator setup DLL
+ODBCTranslator Translator      N                                       
Identifier              Primary key, non-localized.internal token for translator
+Patch  Attributes      N       0       32767                                   
Integer containing bit flags representing patch attributes
+Patch  File_   N                       File    1       Identifier              
Primary key, non-localized token, foreign key to File table, must match 
identifier in cabinet.
+Patch  Header  Y                                       Binary          Binary 
stream. The patch header, used for patch validation.
+Patch  ISBuildSourcePath       Y                                       Text    
        Full path to patch header.
+Patch  PatchSize       N       0       2147483647                              
        Size of patch in bytes (long integer).
+Patch  Sequence        N       0       32767                                   
Primary key, sequence with respect to the media images; order must track 
cabinet order.
+PatchPackage   Media_  N       0       32767                                   
Foreign key to DiskId column of Media table. Indicates the disk containing the 
patch package.
+PatchPackage   PatchId N                                       Guid            
A unique string GUID representing this patch.
+ProgId Class_  Y                       Class   1       Guid            The 
CLSID of an OLE factory corresponding to the ProgId.
+ProgId Description     Y                                       Text            
Localized description for the Program identifier.
+ProgId Icon_   Y                       Icon    1       Identifier              
Optional foreign key into the Icon Table, specifying the icon file associated 
with this ProgId. Will be written under the DefaultIcon key.
+ProgId IconIndex       Y       -32767  32767                                   
Optional icon index.
+ProgId ISAttributes    Y                                                       
This is used to store Installshield custom properties of a component, like 
ExtractIcon, etc.
+ProgId ProgId  N                                       Text            The 
Program Identifier. Primary key.
+ProgId ProgId_Parent   Y                       ProgId  1       Text            
The Parent Program Identifier. If specified, the ProgId column becomes a 
version independent prog id.
+Property       ISComments      Y                                       Text    
        User Comments.
+Property       Property        N                                       
Identifier              Name of property, uppercase if settable by launcher or 
loader.
+Property       Value   Y                                       Text            
String value for property.
+PublishComponent       AppData Y                                       Text    
        This is localisable Application specific data that can be associated 
with a Qualified Component.
+PublishComponent       Component_      N                       Component       
1       Identifier              Foreign key into the Component table.
+PublishComponent       ComponentId     N                                       
Guid            A string GUID that represents the component id that will be 
requested by the alien product.
+PublishComponent       Feature_        N                       Feature 1       
Identifier              Foreign key into the Feature table.
+PublishComponent       Qualifier       N                                       
Text            This is defined only when the ComponentId column is an 
Qualified Component Id. This is the Qualifier for ProvideComponentIndirect.
+RadioButton    Height  N       0       32767                                   
The height of the button.
+RadioButton    Help    Y                                       Text            
The help strings used with the button. The text is optional.
+RadioButton    Order   N       1       32767                                   
A positive integer used to determine the ordering of the items within one 
list..The integers do not have to be consecutive.
+RadioButton    Property        N                                       
Identifier              A named property to be tied to this radio button. All 
the buttons tied to the same property become part of the same group.
+RadioButton    Text    Y                                       Text            
The visible title to be assigned to the radio button.
+RadioButton    Value   N                                       Formatted       
        The value string associated with this button. Selecting the button will 
set the associated property to this value.
+RadioButton    Width   N       0       32767                                   
The width of the button.
+RadioButton    X       N       0       32767                                   
The horizontal coordinate of the upper left corner of the bounding rectangle of 
the radio button.
+RadioButton    Y       N       0       32767                                   
The vertical coordinate of the upper left corner of the bounding rectangle of 
the radio button.
+Registry       Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the installing of the registry value.
+Registry       ISAttributes    Y                                               
0;1     This is used to store Installshield custom properties of a registry 
item.  Currently the only one is Automatic.
+Registry       Key     N                                       RegPath         
The key for the registry value.
+Registry       Name    Y                                       Formatted       
        The registry value name.
+Registry       Registry        N                                       
Identifier              Primary key, non-localized token.
+Registry       Root    N       -1      3                                       
The predefined root key for the registry value, one of rrkEnum.
+Registry       Value   Y                                       Formatted       
        The registry value.
+RegLocator     Key     N                                       RegPath         
The key for the registry value.
+RegLocator     Name    Y                                       Formatted       
        The registry value name.
+RegLocator     Root    N       0       3                                       
The predefined root key for the registry value, one of rrkEnum.
+RegLocator     Signature_      N                       Signature       1       
Identifier              The table key. The Signature_ represents a unique file 
signature and is also the foreign key in the Signature table. If the type is 0, 
the registry values refers a directory, and _Signature is not a foreign key.
+RegLocator     Type    Y                                                       
An integer value that determines if the registry value is a filename or a 
directory location or to be used as is w/o interpretation.
+RemoveFile     Component_      N                       Component       1       
Identifier              Foreign key referencing Component that controls the 
file to be removed.
+RemoveFile     DirProperty     N                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full pathname to the folder of the file to be removed.
+RemoveFile     FileKey N                                       Identifier      
        Primary key used to identify a particular file entry
+RemoveFile     FileName        Y                                       Text    
        Name of the file to be removed.
+RemoveFile     InstallMode     N                                               
1;2;3   Installation option, one of iimEnum.
+RemoveIniFile  Action  N                                               2;4     
The type of modification to be made, one of iifEnum.
+RemoveIniFile  Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the deletion of the .INI value.
+RemoveIniFile  DirProperty     Y                                       
Identifier              Foreign key into the Directory table denoting the 
directory where the .INI file is.
+RemoveIniFile  FileName        N                                       Text    
        The .INI file name in which to delete the information
+RemoveIniFile  Key     N                                       Formatted       
        The .INI file key below Section.
+RemoveIniFile  RemoveIniFile   N                                       
Identifier              Primary key, non-localized token.
+RemoveIniFile  Section N                                       Formatted       
        The .INI file Section.
+RemoveIniFile  Value   Y                                       Formatted       
        The value to be deleted. The value is required when Action is 
iifIniRemoveTag
+RemoveRegistry Component_      N                       Component       1       
Identifier              Foreign key into the Component table referencing 
component that controls the deletion of the registry value.
+RemoveRegistry Key     N                                       RegPath         
The key for the registry value.
+RemoveRegistry Name    Y                                       Formatted       
        The registry value name.
+RemoveRegistry RemoveRegistry  N                                       
Identifier              Primary key, non-localized token.
+RemoveRegistry Root    N       -1      3                                       
The predefined root key for the registry value, one of rrkEnum
+ReserveCost    Component_      N                       Component       1       
Identifier              Reserve a specified amount of space if this component 
is to be installed.
+ReserveCost    ReserveFolder   Y                                       
Identifier              Name of a property whose value is assumed to resolve to 
the full path to the destination directory
+ReserveCost    ReserveKey      N                                       
Identifier              Primary key that uniquely identifies a particular 
ReserveCost record
+ReserveCost    ReserveLocal    N       0       2147483647                      
                Disk space to reserve if linked component is installed locally.
+ReserveCost    ReserveSource   N       0       2147483647                      
                Disk space to reserve if linked component is installed to run 
from the source location.
+SelfReg        Cost    Y       0       32767                                   
The cost of registering the module.
+SelfReg        File_   N                       File    1       Identifier      
        Foreign key into the File table denoting the module that needs to be 
registered.
+ServiceControl Arguments       Y                                       
Formatted               Arguments for the service.  Separate by [~].
+ServiceControl Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table that 
controls the startup of the service
+ServiceControl Event   N       0       187                                     
Bit field:  Install:  0x1 = Start, 0x2 = Stop, 0x8 = Delete, Uninstall: 0x10 = 
Start, 0x20 = Stop, 0x80 = Delete
+ServiceControl Name    N                                       Formatted       
        Name of a service. /, \, comma and space are invalid
+ServiceControl ServiceControl  N                                       
Identifier              Primary key, non-localized token.
+ServiceControl Wait    Y       0       1                                       
Boolean for whether to wait for the service to fully start
+ServiceInstall Arguments       Y                                       
Formatted               Arguments to include in every start of the service, 
passed to WinMain
+ServiceInstall Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table that 
controls the startup of the service
+ServiceInstall Dependencies    Y                                       
Formatted               Other services this depends on to start.  Separate by 
[~], and end with [~][~]
+ServiceInstall Description     Y                                       Text    
        Description of service.
+ServiceInstall DisplayName     Y                                       
Formatted               External Name of the Service
+ServiceInstall ErrorControl    N       -2147483647     2147483647              
                        Severity of error if service fails to start
+ServiceInstall LoadOrderGroup  Y                                       
Formatted               LoadOrderGroup
+ServiceInstall Name    N                                       Formatted       
        Internal Name of the Service
+ServiceInstall Password        Y                                       
Formatted               password to run service with.  (with StartName)
+ServiceInstall ServiceInstall  N                                       
Identifier              Primary key, non-localized token.
+ServiceInstall ServiceType     N       -2147483647     2147483647              
                        Type of the service
+ServiceInstall StartName       Y                                       
Formatted               User or object name to run service as
+ServiceInstall StartType       N       0       4                               
        Type of the service
+SFPCatalog     Catalog Y                                       Binary          
SFP Catalog
+SFPCatalog     Dependency      Y                                       
Formatted               Parent catalog - only used by SFP
+SFPCatalog     SFPCatalog      N                                       
Filename                File name for the catalog.
+Shortcut       Arguments       Y                                       
Formatted               The command-line arguments for the shortcut.
+Shortcut       Component_      N                       Component       1       
Identifier              Foreign key into the Component table denoting the 
component whose selection gates the the shortcut creation/deletion.
+Shortcut       Description     Y                                       Text    
        The description for the shortcut.
+Shortcut       Directory_      N                       Directory       1       
Identifier              Foreign key into the Directory table denoting the 
directory where the shortcut file is created.
+Shortcut       Hotkey  Y       0       32767                                   
The hotkey for the shortcut. It has the virtual-key code for the key in the 
low-order byte, and the modifier flags in the high-order byte. 
+Shortcut       Icon_   Y                       Icon    1       Identifier      
        Foreign key into the File table denoting the external icon file for the 
shortcut.
+Shortcut       IconIndex       Y       -32767  32767                           
        The icon index for the shortcut.
+Shortcut       ISComments      Y                                       Text    
        Author’s comments on this Shortcut.
+Shortcut       Name    N                                       Text            
The name of the shortcut to be created.
+Shortcut       Shortcut        N                                       
Identifier              Primary key, non-localized token.
+Shortcut       ShowCmd Y                                               1;3;7   
The show command for the application window.The following values may be used.
+Shortcut       Target  N                                       Shortcut        
        The shortcut target. This is usually a property that is expanded to a 
file or a folder that the shortcut points to.
+Shortcut       WkDir   Y                                       Identifier      
        Name of property defining location of working directory.
+Signature      FileName        N                                       Text    
        The name of the file. This may contain a "short name|long name" pair.
+Signature      Languages       Y                                       
Language                The languages supported by the file.
+Signature      MaxDate Y       0       2147483647                              
        The maximum creation date of the file.
+Signature      MaxSize Y       0       2147483647                              
        The maximum size of the file. 
+Signature      MaxVersion      Y                                       Text    
        The maximum version of the file.
+Signature      MinDate Y       0       2147483647                              
        The minimum creation date of the file.
+Signature      MinSize Y       0       2147483647                              
        The minimum size of the file.
+Signature      MinVersion      Y                                       Text    
        The minimum version of the file.
+Signature      Signature       N                                       
Identifier              The table key. The Signature represents a unique file 
signature.
+TextStyle      Color   Y       0       16777215                                
        A long integer indicating the color of the string in the RGB format 
(Red, Green, Blue each 0-255, RGB = R + 256*G + 256^2*B).
+TextStyle      FaceName        N                                       Text    
        A string indicating the name of the font used. Required. The string 
must be at most 31 characters long.
+TextStyle      Size    N       0       32767                                   
The size of the font used. This size is given in our units (1/12 of the system 
font height). Assuming that the system font is set to 12 point size, this is 
equivalent to the point size.
+TextStyle      StyleBits       Y       0       15                              
        A combination of style bits.
+TextStyle      TextStyle       N                                       
Identifier              Name of the style. The primary key of this table. This 
name is embedded in the texts to indicate a style change.
+TypeLib        Component_      N                       Component       1       
Identifier              Required foreign key into the Component Table, 
specifying the component for which to return a path when called through 
LocateComponent.
+TypeLib        Cost    Y       0       2147483647                              
        The cost associated with the registration of the typelib. This column 
is currently optional.
+TypeLib        Description     Y                                       Text    
        
+TypeLib        Directory_      Y                       Directory       1       
Identifier              Optional. The foreign key into the Directory table 
denoting the path to the help file for the type library.
+TypeLib        Feature_        N                       Feature 1       
Identifier              Required foreign key into the Feature Table, specifying 
the feature to validate or install in order for the type library to be 
operational.
+TypeLib        Language        N       0       32767                           
        The language of the library.
+TypeLib        LibID   N                                       Guid            
The GUID that represents the library.
+TypeLib        Version Y       0       2147483647                              
        The version of the library. The major version is in the upper 8 bits of 
the short integer. The minor version is in the lower 8 bits.
+UIText Key     N                                       Identifier              
A unique key that identifies the particular string.
+UIText Text    Y                                       Text            The 
localized version of the string.
+Upgrade        ActionProperty  N                                       
UpperCase               The property to set when a product in this set is found.
+Upgrade        Attributes      N       0       2147483647                      
                The attributes of this product set.
+Upgrade        ISDisplayName   Y                                               
        
+Upgrade        Language        Y                                       
Language                A comma-separated list of languages for either products 
in this set or products not in this set.
+Upgrade        Remove  Y                                       Formatted       
        The list of features to remove when uninstalling a product from this 
set.  The default is "ALL".
+Upgrade        UpgradeCode     N                                       Guid    
        The UpgradeCode GUID belonging to the products in this set.
+Upgrade        VersionMax      Y                                       Text    
        The maximum ProductVersion of the products in this set.  The set may or 
may not include products with this particular version.
+Upgrade        VersionMin      Y                                       Text    
        The minimum ProductVersion of the products in this set.  The set may or 
may not include products with this particular version.
+Verb   Argument        Y                                       Formatted       
        Optional value for the command arguments.
+Verb   Command Y                                       Formatted               
The command text.
+Verb   Extension_      N                       Extension       1       Text    
        The extension associated with the table row.
+Verb   Sequence        Y       0       32767                                   
Order within the verbs for a particular extension. Also used simply to specify 
the default verb.
+Verb   Verb    N                                       Text            The 
verb for the command.

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp       Fri Jul 
16 09:27:17 2004
@@ -1,644 +1,644 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// mod_aspdotnet.so - Microsoft ASP.NET connector module for Apache 2.0
-
-
-// We don't care about unused arguments
-#pragma warning(disable: 4100)
-
-// We require much Winfoo to intermix Com/Ole/CLR code...
-// don't wait for APR to include a stripped down Win32 API
-//
-#define WIN32_LEAN_AND_MEAN
-#define _WIN32_WINNT 0x0400
-#include <Windows.h>
-#include <winsock2.h>
-#include <objbase.h>
-
-#include "apr.h"
-#include "apr_lib.h"
-#include "apr_strings.h"
-#include "apr_buckets.h"
-#include "apr_pools.h"
-
-#include "httpd.h"
-#include "http_core.h"
-#include "http_config.h"
-#include "http_log.h"
-#include "http_main.h"
-#include "http_request.h"
-#include "util_filter.h"
-#include "util_script.h"
-
-// We aren't looking for much beyond the version, 
-// so lie that this header was previously loaded
-#define APACHE_WEB_H
-#include "Apache.Web.h"
-
-#include <mscoree.h>
-#import <mscorlib.tlb> raw_interfaces_only \
-    high_property_prefixes("_get","_put","_putref") \
-    rename("ReportEvent", "CorReportEvent")
-using namespace mscorlib;
-
-#import "Apache.Web.tlb"
-using namespace Apache_Web;
-
-extern "C" {
-    extern module AP_MODULE_DECLARE_DATA aspdotnet_module;
-}
-
-// Initialized or recovered (from userdata) in pre_config
-typedef struct asp_net_host_conf_t 
-{
-    // Allocation issue; virtual and physical are hashed
-    // as a combined string of /vpath\0/ppath\0 with the
-    // combined_len including both NULLs.  This permits us
-    // to quickly find given virtual/physical mappings for
-    // given vhosts (they are bound to a specific virutal
-    // and physical path pair.)
-    apr_size_t  combined_len;
-    const char *virtual_path;
-    const char *physical_path;
-    int         host_key;
-//    IApacheWebHost *pHost;
-} asp_net_host_conf_t;
-
-struct asp_net_conf_t {
-    apr_pool_t *pool;
-    apr_hash_t *hosts;  // Hash of asp_net_host_conf_t records
-    ICorRuntimeHost *pCorRuntime;
-    IApacheWebHostFactory *pHostFactory;
-    HANDLE lock_module;
-} *conf;
-
-// Initialized for each restart
-typedef struct asp_net_alias_t {
-    // These are hashed per-vhost only by the virtual_path.
-    apr_size_t  virtual_path_len;
-    const char *virtual_path;
-    asp_net_host_conf_t *host;
-} asp_net_alias_t;
-
-typedef struct asp_net_sconf_t {
-    apr_hash_t *aliases;  // Hash of asp_net_alias_t records
-} asp_net_sconf_t;
-
-
-static void *create_asp_net_sconf(apr_pool_t *p, server_rec *s)
-{
-    asp_net_sconf_t *sconf;
-    sconf = (asp_net_sconf_t*)apr_palloc(p, sizeof(asp_net_sconf_t));
-    sconf->aliases = apr_hash_make(p);
-    return sconf;
-}
-
-static void *merge_asp_net_sconfs(apr_pool_t *p, void *basev, void *addv)
-{
-    asp_net_sconf_t *base = (asp_net_sconf_t*)basev;
-    asp_net_sconf_t *add = (asp_net_sconf_t*)addv;
-    apr_hash_overlay(p, add->aliases, base->aliases);
-    return add;
-}
-
-
-static const char *asp_net_mount(cmd_parms *cmd, void *dummy, 
-                                 const char *uri, const char *rootarg)
-{
-    char *root;
-    asp_net_sconf_t *sconf 
-        = (asp_net_sconf_t*)ap_get_module_config(cmd->server->module_config,
-                                                 &aspdotnet_module);
-    asp_net_alias_t *mount 
-        = (asp_net_alias_t*)apr_palloc(cmd->pool, sizeof(*mount));
-
-    mount->virtual_path_len = strlen(uri);
-
-    apr_status_t rv = apr_filepath_merge((char**)&root, ap_server_root, 
rootarg,
-                                         APR_FILEPATH_TRUENAME, cmd->pool);
-
-    if (rv != APR_SUCCESS || !root) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
-                     "mod_aspdotnet: Failed to resolve the full file path"
-                     "for AspNetMount \"%s\" \"%s\"", uri, rootarg);
-        return NULL;
-    }
-
-    apr_finfo_t fi;
-    rv = apr_stat(&fi, root, APR_FINFO_TYPE, cmd->temp_pool);
-    if ((rv != APR_SUCCESS) || (fi.filetype != APR_DIR)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
-            "mod_aspdotnet: File path is a directory, or could not stat path "
-                     "for AspNetMount \"%s\" \"%s\"", uri, rootarg);
-        return NULL;
-    }
-
-    apr_size_t root_len     = strlen(root);
-    apr_size_t combined_len = mount->virtual_path_len + root_len + 2;
-    mount->virtual_path = (const char*)apr_palloc(cmd->pool, combined_len);
-    memcpy((char*)mount->virtual_path, uri, mount->virtual_path_len + 1);
-    memcpy((char*)mount->virtual_path + mount->virtual_path_len + 1, 
-           root, root_len + 1);
-
-    // Recover the host matching this virtual+physical path combo, 
-    // or create a new persistant host record (on the first pass.)
-    mount->host = (asp_net_host_conf_t*)apr_hash_get(conf->hosts, 
-                                                     mount->virtual_path,
-                                                     combined_len);
-    if (!mount->host) {
-        mount->host = (asp_net_host_conf_t*)apr_palloc(conf->pool, 
-                                                       sizeof(*mount->host));
-        mount->host->combined_len = combined_len;
-        mount->host->virtual_path = (const char*)apr_palloc(conf->pool, 
-                                                            combined_len);
-        mount->host->physical_path = mount->host->virtual_path 
-                                   + mount->virtual_path_len + 1;
-        memcpy((char*)mount->host->virtual_path, 
-               mount->virtual_path, combined_len);
-        mount->host->host_key = -1;
-        apr_hash_set(conf->hosts, mount->host->virtual_path, 
-                     mount->host->combined_len, mount->host);
-    }
-
-    apr_hash_set(sconf->aliases, mount->virtual_path, 
-                 mount->virtual_path_len, mount);
-    return NULL;
-}
-
-static const command_rec asp_net_cmds[] =
-{
-    AP_INIT_TAKE2("AspNetMount", (cmd_func)asp_net_mount, NULL, RSRC_CONF,
-                  "Mount a URI path to an Asp.Net AppDomain path root"),
-    {NULL}
-};
-
-static apr_status_t asp_net_stop(void *dummy)
-{
-    conf->pHostFactory->Destroy();
-
-    if (conf->pHostFactory) {
-        conf->pHostFactory->Release();
-    }
-    if (conf->pCorRuntime) {
-        conf->pCorRuntime->Stop();
-        conf->pCorRuntime->Release();
-    }
-    return APR_SUCCESS;
-}
-
-static HRESULT init_asp_engine(void)
-{
-    HRESULT hr;
-
-    // Get the path to this mod_aspdotnet module so that we can
-    // lock ourselves in-place for the lifetime of the server
-    wchar_t wAspNetPath[APR_PATH_MAX];
-    HMODULE hModule = GetModuleHandleW(L"mod_aspdotnet.so");
-    if (!GetModuleFileNameW(hModule, wAspNetPath, APR_PATH_MAX)
-            || (wcslen(wAspNetPath) >= APR_PATH_MAX - 1)) {
-        hr = GetLastError();
-        apr_status_t rv = APR_FROM_OS_ERROR(hr);
-        if (!rv) {
-            hr = E_FAIL;
-            rv = APR_ENAMETOOLONG;
-        }
-        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
-                     "mod_aspdotnet: Failed to discover the full file path to "
-                     "mod_aspdotnet.so.  (Was it renamed?)");
-        _com_raise_error(hr);
-    }
-    conf->lock_module = LoadLibraryW(wAspNetPath);
-
-    // Now we are prepared to register our cleanup in the global
-    // process pool, because we trust the module cannot be unloaded
-    // by apr_dso_unload [the module instance is refcounted]
-    apr_pool_cleanup_register(conf->pool, NULL, asp_net_stop, 
-                              apr_pool_cleanup_null);
-
-    // Now get the path to the apache.exe binary, as Apache.Web
-    // reside in the same path as the server's dll libraries.
-    if (!GetModuleFileNameW(NULL, wAspNetPath, APR_PATH_MAX)
-            || (wcslen(wAspNetPath) >= APR_PATH_MAX - 17)) {
-        hr = GetLastError();
-        apr_status_t rv = APR_FROM_OS_ERROR(hr);
-        if (!rv) {
-            hr = E_FAIL;
-            rv = APR_ENAMETOOLONG;
-        }
-        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
-                     "mod_aspdotnet: Unable to determine apache.exe path!");
-        _com_raise_error(hr);
-    }
-
-    wchar_t *repl = wcsrchr(wAspNetPath, L'\\');
-    if (!repl || wcscmp(repl, L"\\apache.exe")) {
-        ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, NULL,
-                     "mod_aspdotnet: Unable to determine apache.exe path!");
-        _com_raise_error(E_FAIL);
-    }
-
-    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
-                 "mod_aspdotnet: Module initialization commencing...");
-
-    DWORD len;
-    hr = GetCORVersion(wAspNetPath, sizeof(wAspNetPath) 
-                                     / sizeof(WCHAR) - 1, &len);
-    if (FAILED(hr)) {
-        wAspNetPath[len] = L'\0';
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: GetCORVersion failed to return "
-                     "the .NET CLR engine version.");
-        _com_raise_error(hr);
-    }
-
-    hr = CorBindToRuntimeEx(wAspNetPath, 
-                            L"svr",  // Or "wks" 
-                            STARTUP_LOADER_OPTIMIZATION_MULTI_DOMAIN_HOST | 
-                            STARTUP_CONCURRENT_GC, 
-                            CLSID_CorRuntimeHost, 
-                            IID_ICorRuntimeHost, 
-                            (void **)&conf->pCorRuntime);
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not CorBindToRuntimeEx "
-                     "for the .NET CLR engine.");
-        _com_raise_error(hr);
-    }
-
-    hr = conf->pCorRuntime->Start();
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not start the "
-                     ".NET CLR engine.");
-        _com_raise_error(hr);
-    }
-
-    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
-                 "mod_aspdotnet: Module started .NET CLR...");
-
-    IUnknown *pAppDomainIUnk = NULL;
-    hr = conf->pCorRuntime->GetDefaultDomain(&pAppDomainIUnk);
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the .NET default "
-                     "application domain.");
-        _com_raise_error(hr);
-    }
-    if (!pAppDomainIUnk) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the .NET default "
-                     "application domain's interface.");
-        _com_raise_error(E_NOINTERFACE);
-    }
-
-    _AppDomain *pDefaultDomain = NULL;
-    hr = pAppDomainIUnk->QueryInterface(__uuidof(_AppDomain), 
-                                        (void**)&pDefaultDomain);
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the .NET default "
-                     "application domain's _AppDomain interface.");
-        _com_raise_error(hr);
-    }
-    if (!pDefaultDomain) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the .NET default "
-                     "application domain _AppDomain interface.");
-        _com_raise_error(E_NOINTERFACE);
-    }
-    // Done with pAppDomainIUnk
-    pAppDomainIUnk->Release();
-
-    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
-                 "mod_aspdotnet: Module initialized .NET default 
AppDomain...");
-
-    _ObjectHandle *pObjHandle = NULL;
-    hr = pDefaultDomain->CreateInstance(_bstr_t("Apache.Web, "
-                                            "Version=" APACHE_WEB_VERSION ", "
-                                           "Culture=neutral, "
-                                            "PublicKeyToken=06dcc24729498c72"),
-                                        _bstr_t(L"Apache.Web.HostFactory"),
-                                        &pObjHandle);
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not create the .NET interface "
-                     "for the Apache.Web.HostFactory.");
-        _com_raise_error(hr);
-    }
-    if (!pObjHandle) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the .NET object "
-                     "for the Apache.Web.HostFactory.");
-        _com_raise_error(E_NOINTERFACE);
-    }
-    // Done with pDefaultDomain
-    pDefaultDomain->Release();
-    
-    VARIANT vHostFactory;
-    VariantInit(&vHostFactory);
-    hr = pObjHandle->Unwrap(&vHostFactory);
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not unwrap the COM interface "
-                     "for the Apache.Web.HostFactory.");
-        _com_raise_error(hr);
-    }
-    if (!vHostFactory.pdispVal) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the unknown COM "
-                     "interface for the Apache.Web.HostFactory.");
-        _com_raise_error(E_NOINTERFACE);
-    }
-    hr = vHostFactory.pdispVal->QueryInterface(__uuidof(IApacheWebHostFactory),
-                                               (void**)&conf->pHostFactory);
-    if (FAILED(hr)) { 
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not retrieve the COM interface "
-                     "for the Apache.Web.HostFactory.");
-        _com_raise_error(hr);
-    }
-
-    // Done with vHostFactory
-    VariantClear(&vHostFactory);
-
-    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
-                 "mod_aspdotnet: Module initialized HostFactory...");
-
-    // Test invocation, assure we have a good hostfactory
-    hr = conf->pHostFactory->Configure(L"");
-    if (FAILED(hr)) {
-        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
-                     "mod_aspdotnet: Could not correctly configure the "
-                     "Apache.Web.HostFactory.");
-        _com_raise_error(hr);
-    }
-
-    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
-                 "mod_aspdotnet: HostFactory configuration complete.");
-
-    return S_OK;
-}
-
-static int asp_net_handler(request_rec *r)
-{
-    if (!r->handler || strcmp(r->handler, "asp.net") != 0) {
-        return DECLINED;
-    }
-
-    if (r->finfo.filetype != APR_REG) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
-                "mod_aspdotnet: File not found or unable to stat: %s",
-                r->filename);
-        return HTTP_NOT_FOUND;
-    }
-
-    if (!r->uri || (r->uri[0] != '/')) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
-                "mod_aspdotnet: Forbidden, request URI was not absolute: %s",
-                r->uri ? r->uri : "<NULL>");
-        return HTTP_FORBIDDEN;
-    }
-
-    if (!(ap_allow_options(r) & OPT_EXECCGI)) 
-    {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
-                "mod_aspdotnet: Forbidden, Options ExecCGI is not set for: %s",
-                r->filename);
-        return HTTP_FORBIDDEN;
-    }
-
-    if ((r->used_path_info == AP_REQ_REJECT_PATH_INFO) &&
-        r->path_info && *r->path_info)
-    {
-        /* default to accept */
-            ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
-            "mod_aspdotnet: AcceptPathInfo off for %s disallows user's path 
%s",
-            r->filename, r->path_info);
-        return HTTP_NOT_FOUND;
-    }
-
-    asp_net_sconf_t *sconf 
-        = (asp_net_sconf_t*)ap_get_module_config(r->server->module_config, 
-                                                 &aspdotnet_module);
-
-    asp_net_host_conf_t *host = NULL;
-    apr_hash_index_t *item;
-    for (item = apr_hash_first(conf->pool, sconf->aliases); item; 
-            item = apr_hash_next(item)) 
-    {
-        asp_net_alias_t *alias;
-        apr_hash_this(item, NULL, NULL, (void**)&alias);
-        if (strncasecmp(alias->virtual_path, r->uri, 
-                        alias->virtual_path_len) == 0) {
-            host = alias->host;
-            break;
-        }
-    }
-
-    if (!item || !host) {
-            ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r,
-                "mod_aspdotnet: No AspNetMount URI for request: %s",
-                r->uri);
-        return HTTP_INTERNAL_SERVER_ERROR;
-    }
-
-    // We never create an environment, however, we will query the
-    // r->env to recover these values.
-    ap_add_common_vars(r);
-    ap_add_cgi_vars(r);
-
-    // Check that THIS thread is coinitialized.
-    HRESULT hr = CoInitialize(NULL);
-    if (hr == RPC_E_CHANGED_MODE)
-        hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
-
-    if (FAILED(hr)) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), r,
-                      "mod_aspdotnet: CoInitialize failed!");
-        return HTTP_INTERNAL_SERVER_ERROR;
-    }
-
-    VARIANT vRequest;
-    VariantInit(&vRequest);
-
-    int status;
-
-    try {
-        status = conf->pHostFactory->HandleHostRequest(host->host_key, 
-                                                       (UINT_PTR)r);
-    }
-    catch (_com_error err) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(err.Error()), r,
-                    "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
-                    r->uri, r->filename);
-        char *desc = (char*)err.Description();
-        if (desc) {
-            ap_log_rerror(APLOG_MARK, APLOG_ERR, 
-                          APR_FROM_OS_ERROR(err.Error()), r,
-                          "mod_aspdotnet: %s", desc);
-        }
-        status = HTTP_INTERNAL_SERVER_ERROR;
-    }
-    catch (HRESULT hr) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), r,
-                      "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
-                      r->uri, r->filename);
-        status = HTTP_INTERNAL_SERVER_ERROR;
-    }
-    catch (...) {
-        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r,
-                      "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
-                      r->uri, r->filename);
-        status = HTTP_INTERNAL_SERVER_ERROR;
-    }
-
-    VariantClear(&vRequest);
-
-    return status;
-}
-
-static int asp_net_pre_config(apr_pool_t *pconf, apr_pool_t *plog, 
-                              apr_pool_t *ptemp)
-{
-    apr_pool_t *process = apr_pool_get_parent(pconf);
-
-    // Recover or create the global, persistant configuration
-    // Setup and teardown can take a considerable amount of time,
-    // we do not want to repeat this twice per Apache process.
-    if ((apr_pool_userdata_get((void**)&conf, "mod_aspdotnet::global_conf", 
-                               process) != APR_SUCCESS) || !conf) {
-        HRESULT hr = CoInitialize(NULL);
-        if (hr == RPC_E_CHANGED_MODE)
-            hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
-        if (FAILED(hr)) {
-            ap_log_error(APLOG_MARK, APLOG_CRIT, APR_FROM_OS_ERROR(hr), NULL,
-                        "mod_aspdotnet: Failed to CoInitialize the threaded "
-                        "COM engine for .NET CLR interop!");
-            return 1;
-        }
-        conf = (asp_net_conf_t*)apr_palloc(process, sizeof(*conf));
-        conf->pool  = process;
-        conf->hosts = apr_hash_make(process);
-        conf->pCorRuntime  = NULL;
-        conf->pHostFactory = NULL;
-        apr_pool_userdata_setn(conf, "mod_aspdotnet::global_conf", 
-                               apr_pool_cleanup_null, process);
-    }
-    return APR_SUCCESS;
-}
-
-
-static int asp_net_post_config(apr_pool_t *pconf, apr_pool_t *plog, 
-                               apr_pool_t *ptemp, server_rec *gs)
-{
-    apr_hash_index_t *item;
-
-    // First time through, initialize .Net and the HostFactory
-    if (!conf->pCorRuntime || !conf->pHostFactory) {
-        try {
-            init_asp_engine();
-        }
-        catch (_com_error err) {
-            char *desc = (char*)err.Description();
-            ap_log_error(APLOG_MARK, APLOG_CRIT, 
-                         APR_FROM_OS_ERROR(err.Error()), gs,
-                         "mod_aspdotnet: Failed to start Asp.Net "
-                         "Apache.Web host factory");
-            if (desc) {
-                ap_log_error(APLOG_MARK, APLOG_CRIT, 
-                            APR_FROM_OS_ERROR(err.Error()), gs,
-                            "mod_aspdotnet: %s", desc);
-            }
-            return 1;
-        }
-        catch (HRESULT hr) {
-            ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), gs,
-                         "mod_aspdotnet: Failed to start Asp.Net "
-                         "Apache.Web host factory.");
-            return 1;
-        }
-        catch (...) {
-            ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, gs,
-                         "mod_aspdotnet: Failed to start Asp.Net "
-                         "Apache.Web host factory.");
-            return 1;
-        }
-    }
-
-    for (item = apr_hash_first(ptemp, conf->hosts); item; 
-            item = apr_hash_next(item)) 
-    {
-        asp_net_host_conf_t *host;
-        apr_hash_this(item, NULL, NULL, (void**)&host);
-    
-        if (host->host_key != -1) {
-            continue;
-        }
-
-        try {
-            // XXX: i18n these paths by treating them as UTF-8 -> Unicode!!!
-            host->host_key = conf->pHostFactory->CreateHost(
-                                                 _bstr_t(host->virtual_path), 
-                                                 _bstr_t(host->physical_path),
-                                                 (int) gs);
-            if (host->host_key == -1)
-                _com_raise_error(E_NOINTERFACE);
-        }
-        catch (_com_error err) {
-            ap_log_error(APLOG_MARK, APLOG_CRIT, 
-                         APR_FROM_OS_ERROR(err.Error()), gs, 
-                         "mod_aspdotnet: Failed to create Host connector "
-                         "for %s mapped to %s", host->virtual_path, 
-                         host->physical_path);
-            ap_log_error(APLOG_MARK, APLOG_CRIT, 
-                         APR_FROM_OS_ERROR(err.Error()), gs, 
-                         "mod_aspdotnet: %s", (char*)err.Description());
-            return 1;
-        }
-        catch (HRESULT hr) {
-            ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), gs,
-                         "mod_aspdotnet: Failed to create Host of for %s 
mapped "
-                         "to %s", host->virtual_path, host->physical_path);
-            return 1;
-        }
-        catch (...) {
-            ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, gs,
-                         "mod_aspdotnet: Failed to create Host of for %s 
mapped "
-                         "to %s", host->virtual_path, host->physical_path);
-            return 1;
-        }
-    }
-
-    return OK;
-}
-
-static void register_hooks(apr_pool_t *p)
-{
-    ap_hook_handler(asp_net_handler, NULL, NULL, APR_HOOK_MIDDLE);
-    ap_hook_pre_config(asp_net_pre_config, NULL, NULL, APR_HOOK_MIDDLE);
-    ap_hook_post_config(asp_net_post_config, NULL, NULL, APR_HOOK_MIDDLE);
-}
-
-module AP_MODULE_DECLARE_DATA ::aspdotnet_module =
-{
-    STANDARD20_MODULE_STUFF,
-    NULL,                       /* dir config */
-    NULL,                       /* merge dir config */
-    create_asp_net_sconf,       /* server config */
-    merge_asp_net_sconfs,       /* merge server config */
-    asp_net_cmds,               /* command apr_table_t */
-    register_hooks              /* register hooks */
-};
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// mod_aspdotnet.so - Microsoft ASP.NET connector module for Apache 2.0
+
+
+// We don't care about unused arguments
+#pragma warning(disable: 4100)
+
+// We require much Winfoo to intermix Com/Ole/CLR code...
+// don't wait for APR to include a stripped down Win32 API
+//
+#define WIN32_LEAN_AND_MEAN
+#define _WIN32_WINNT 0x0400
+#include <Windows.h>
+#include <winsock2.h>
+#include <objbase.h>
+
+#include "apr.h"
+#include "apr_lib.h"
+#include "apr_strings.h"
+#include "apr_buckets.h"
+#include "apr_pools.h"
+
+#include "httpd.h"
+#include "http_core.h"
+#include "http_config.h"
+#include "http_log.h"
+#include "http_main.h"
+#include "http_request.h"
+#include "util_filter.h"
+#include "util_script.h"
+
+// We aren't looking for much beyond the version, 
+// so lie that this header was previously loaded
+#define APACHE_WEB_H
+#include "Apache.Web.h"
+
+#include <mscoree.h>
+#import <mscorlib.tlb> raw_interfaces_only \
+    high_property_prefixes("_get","_put","_putref") \
+    rename("ReportEvent", "CorReportEvent")
+using namespace mscorlib;
+
+#import "Apache.Web.tlb"
+using namespace Apache_Web;
+
+extern "C" {
+    extern module AP_MODULE_DECLARE_DATA aspdotnet_module;
+}
+
+// Initialized or recovered (from userdata) in pre_config
+typedef struct asp_net_host_conf_t 
+{
+    // Allocation issue; virtual and physical are hashed
+    // as a combined string of /vpath\0/ppath\0 with the
+    // combined_len including both NULLs.  This permits us
+    // to quickly find given virtual/physical mappings for
+    // given vhosts (they are bound to a specific virutal
+    // and physical path pair.)
+    apr_size_t  combined_len;
+    const char *virtual_path;
+    const char *physical_path;
+    int         host_key;
+//    IApacheWebHost *pHost;
+} asp_net_host_conf_t;
+
+struct asp_net_conf_t {
+    apr_pool_t *pool;
+    apr_hash_t *hosts;  // Hash of asp_net_host_conf_t records
+    ICorRuntimeHost *pCorRuntime;
+    IApacheWebHostFactory *pHostFactory;
+    HANDLE lock_module;
+} *conf;
+
+// Initialized for each restart
+typedef struct asp_net_alias_t {
+    // These are hashed per-vhost only by the virtual_path.
+    apr_size_t  virtual_path_len;
+    const char *virtual_path;
+    asp_net_host_conf_t *host;
+} asp_net_alias_t;
+
+typedef struct asp_net_sconf_t {
+    apr_hash_t *aliases;  // Hash of asp_net_alias_t records
+} asp_net_sconf_t;
+
+
+static void *create_asp_net_sconf(apr_pool_t *p, server_rec *s)
+{
+    asp_net_sconf_t *sconf;
+    sconf = (asp_net_sconf_t*)apr_palloc(p, sizeof(asp_net_sconf_t));
+    sconf->aliases = apr_hash_make(p);
+    return sconf;
+}
+
+static void *merge_asp_net_sconfs(apr_pool_t *p, void *basev, void *addv)
+{
+    asp_net_sconf_t *base = (asp_net_sconf_t*)basev;
+    asp_net_sconf_t *add = (asp_net_sconf_t*)addv;
+    apr_hash_overlay(p, add->aliases, base->aliases);
+    return add;
+}
+
+
+static const char *asp_net_mount(cmd_parms *cmd, void *dummy, 
+                                 const char *uri, const char *rootarg)
+{
+    char *root;
+    asp_net_sconf_t *sconf 
+        = (asp_net_sconf_t*)ap_get_module_config(cmd->server->module_config,
+                                                 &aspdotnet_module);
+    asp_net_alias_t *mount 
+        = (asp_net_alias_t*)apr_palloc(cmd->pool, sizeof(*mount));
+
+    mount->virtual_path_len = strlen(uri);
+
+    apr_status_t rv = apr_filepath_merge((char**)&root, ap_server_root, 
rootarg,
+                                         APR_FILEPATH_TRUENAME, cmd->pool);
+
+    if (rv != APR_SUCCESS || !root) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
+                     "mod_aspdotnet: Failed to resolve the full file path"
+                     "for AspNetMount \"%s\" \"%s\"", uri, rootarg);
+        return NULL;
+    }
+
+    apr_finfo_t fi;
+    rv = apr_stat(&fi, root, APR_FINFO_TYPE, cmd->temp_pool);
+    if ((rv != APR_SUCCESS) || (fi.filetype != APR_DIR)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
+            "mod_aspdotnet: File path is a directory, or could not stat path "
+                     "for AspNetMount \"%s\" \"%s\"", uri, rootarg);
+        return NULL;
+    }
+
+    apr_size_t root_len     = strlen(root);
+    apr_size_t combined_len = mount->virtual_path_len + root_len + 2;
+    mount->virtual_path = (const char*)apr_palloc(cmd->pool, combined_len);
+    memcpy((char*)mount->virtual_path, uri, mount->virtual_path_len + 1);
+    memcpy((char*)mount->virtual_path + mount->virtual_path_len + 1, 
+           root, root_len + 1);
+
+    // Recover the host matching this virtual+physical path combo, 
+    // or create a new persistant host record (on the first pass.)
+    mount->host = (asp_net_host_conf_t*)apr_hash_get(conf->hosts, 
+                                                     mount->virtual_path,
+                                                     combined_len);
+    if (!mount->host) {
+        mount->host = (asp_net_host_conf_t*)apr_palloc(conf->pool, 
+                                                       sizeof(*mount->host));
+        mount->host->combined_len = combined_len;
+        mount->host->virtual_path = (const char*)apr_palloc(conf->pool, 
+                                                            combined_len);
+        mount->host->physical_path = mount->host->virtual_path 
+                                   + mount->virtual_path_len + 1;
+        memcpy((char*)mount->host->virtual_path, 
+               mount->virtual_path, combined_len);
+        mount->host->host_key = -1;
+        apr_hash_set(conf->hosts, mount->host->virtual_path, 
+                     mount->host->combined_len, mount->host);
+    }
+
+    apr_hash_set(sconf->aliases, mount->virtual_path, 
+                 mount->virtual_path_len, mount);
+    return NULL;
+}
+
+static const command_rec asp_net_cmds[] =
+{
+    AP_INIT_TAKE2("AspNetMount", (cmd_func)asp_net_mount, NULL, RSRC_CONF,
+                  "Mount a URI path to an Asp.Net AppDomain path root"),
+    {NULL}
+};
+
+static apr_status_t asp_net_stop(void *dummy)
+{
+    conf->pHostFactory->Destroy();
+
+    if (conf->pHostFactory) {
+        conf->pHostFactory->Release();
+    }
+    if (conf->pCorRuntime) {
+        conf->pCorRuntime->Stop();
+        conf->pCorRuntime->Release();
+    }
+    return APR_SUCCESS;
+}
+
+static HRESULT init_asp_engine(void)
+{
+    HRESULT hr;
+
+    // Get the path to this mod_aspdotnet module so that we can
+    // lock ourselves in-place for the lifetime of the server
+    wchar_t wAspNetPath[APR_PATH_MAX];
+    HMODULE hModule = GetModuleHandleW(L"mod_aspdotnet.so");
+    if (!GetModuleFileNameW(hModule, wAspNetPath, APR_PATH_MAX)
+            || (wcslen(wAspNetPath) >= APR_PATH_MAX - 1)) {
+        hr = GetLastError();
+        apr_status_t rv = APR_FROM_OS_ERROR(hr);
+        if (!rv) {
+            hr = E_FAIL;
+            rv = APR_ENAMETOOLONG;
+        }
+        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
+                     "mod_aspdotnet: Failed to discover the full file path to "
+                     "mod_aspdotnet.so.  (Was it renamed?)");
+        _com_raise_error(hr);
+    }
+    conf->lock_module = LoadLibraryW(wAspNetPath);
+
+    // Now we are prepared to register our cleanup in the global
+    // process pool, because we trust the module cannot be unloaded
+    // by apr_dso_unload [the module instance is refcounted]
+    apr_pool_cleanup_register(conf->pool, NULL, asp_net_stop, 
+                              apr_pool_cleanup_null);
+
+    // Now get the path to the apache.exe binary, as Apache.Web
+    // reside in the same path as the server's dll libraries.
+    if (!GetModuleFileNameW(NULL, wAspNetPath, APR_PATH_MAX)
+            || (wcslen(wAspNetPath) >= APR_PATH_MAX - 17)) {
+        hr = GetLastError();
+        apr_status_t rv = APR_FROM_OS_ERROR(hr);
+        if (!rv) {
+            hr = E_FAIL;
+            rv = APR_ENAMETOOLONG;
+        }
+        ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL,
+                     "mod_aspdotnet: Unable to determine apache.exe path!");
+        _com_raise_error(hr);
+    }
+
+    wchar_t *repl = wcsrchr(wAspNetPath, L'\\');
+    if (!repl || wcscmp(repl, L"\\apache.exe")) {
+        ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, NULL,
+                     "mod_aspdotnet: Unable to determine apache.exe path!");
+        _com_raise_error(E_FAIL);
+    }
+
+    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
+                 "mod_aspdotnet: Module initialization commencing...");
+
+    DWORD len;
+    hr = GetCORVersion(wAspNetPath, sizeof(wAspNetPath) 
+                                     / sizeof(WCHAR) - 1, &len);
+    if (FAILED(hr)) {
+        wAspNetPath[len] = L'\0';
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: GetCORVersion failed to return "
+                     "the .NET CLR engine version.");
+        _com_raise_error(hr);
+    }
+
+    hr = CorBindToRuntimeEx(wAspNetPath, 
+                            L"svr",  // Or "wks" 
+                            STARTUP_LOADER_OPTIMIZATION_MULTI_DOMAIN_HOST | 
+                            STARTUP_CONCURRENT_GC, 
+                            CLSID_CorRuntimeHost, 
+                            IID_ICorRuntimeHost, 
+                            (void **)&conf->pCorRuntime);
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not CorBindToRuntimeEx "
+                     "for the .NET CLR engine.");
+        _com_raise_error(hr);
+    }
+
+    hr = conf->pCorRuntime->Start();
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not start the "
+                     ".NET CLR engine.");
+        _com_raise_error(hr);
+    }
+
+    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
+                 "mod_aspdotnet: Module started .NET CLR...");
+
+    IUnknown *pAppDomainIUnk = NULL;
+    hr = conf->pCorRuntime->GetDefaultDomain(&pAppDomainIUnk);
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the .NET default "
+                     "application domain.");
+        _com_raise_error(hr);
+    }
+    if (!pAppDomainIUnk) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the .NET default "
+                     "application domain's interface.");
+        _com_raise_error(E_NOINTERFACE);
+    }
+
+    _AppDomain *pDefaultDomain = NULL;
+    hr = pAppDomainIUnk->QueryInterface(__uuidof(_AppDomain), 
+                                        (void**)&pDefaultDomain);
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the .NET default "
+                     "application domain's _AppDomain interface.");
+        _com_raise_error(hr);
+    }
+    if (!pDefaultDomain) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the .NET default "
+                     "application domain _AppDomain interface.");
+        _com_raise_error(E_NOINTERFACE);
+    }
+    // Done with pAppDomainIUnk
+    pAppDomainIUnk->Release();
+
+    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
+                 "mod_aspdotnet: Module initialized .NET default 
AppDomain...");
+
+    _ObjectHandle *pObjHandle = NULL;
+    hr = pDefaultDomain->CreateInstance(_bstr_t("Apache.Web, "
+                                            "Version=" APACHE_WEB_VERSION ", "
+                                           "Culture=neutral, "
+                                            "PublicKeyToken=06dcc24729498c72"),
+                                        _bstr_t(L"Apache.Web.HostFactory"),
+                                        &pObjHandle);
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not create the .NET interface "
+                     "for the Apache.Web.HostFactory.");
+        _com_raise_error(hr);
+    }
+    if (!pObjHandle) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the .NET object "
+                     "for the Apache.Web.HostFactory.");
+        _com_raise_error(E_NOINTERFACE);
+    }
+    // Done with pDefaultDomain
+    pDefaultDomain->Release();
+    
+    VARIANT vHostFactory;
+    VariantInit(&vHostFactory);
+    hr = pObjHandle->Unwrap(&vHostFactory);
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not unwrap the COM interface "
+                     "for the Apache.Web.HostFactory.");
+        _com_raise_error(hr);
+    }
+    if (!vHostFactory.pdispVal) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the unknown COM "
+                     "interface for the Apache.Web.HostFactory.");
+        _com_raise_error(E_NOINTERFACE);
+    }
+    hr = vHostFactory.pdispVal->QueryInterface(__uuidof(IApacheWebHostFactory),
+                                               (void**)&conf->pHostFactory);
+    if (FAILED(hr)) { 
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not retrieve the COM interface "
+                     "for the Apache.Web.HostFactory.");
+        _com_raise_error(hr);
+    }
+
+    // Done with vHostFactory
+    VariantClear(&vHostFactory);
+
+    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
+                 "mod_aspdotnet: Module initialized HostFactory...");
+
+    // Test invocation, assure we have a good hostfactory
+    hr = conf->pHostFactory->Configure(L"");
+    if (FAILED(hr)) {
+        ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), NULL,
+                     "mod_aspdotnet: Could not correctly configure the "
+                     "Apache.Web.HostFactory.");
+        _com_raise_error(hr);
+    }
+
+    ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, NULL,
+                 "mod_aspdotnet: HostFactory configuration complete.");
+
+    return S_OK;
+}
+
+static int asp_net_handler(request_rec *r)
+{
+    if (!r->handler || strcmp(r->handler, "asp.net") != 0) {
+        return DECLINED;
+    }
+
+    if (r->finfo.filetype != APR_REG) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
+                "mod_aspdotnet: File not found or unable to stat: %s",
+                r->filename);
+        return HTTP_NOT_FOUND;
+    }
+
+    if (!r->uri || (r->uri[0] != '/')) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
+                "mod_aspdotnet: Forbidden, request URI was not absolute: %s",
+                r->uri ? r->uri : "<NULL>");
+        return HTTP_FORBIDDEN;
+    }
+
+    if (!(ap_allow_options(r) & OPT_EXECCGI)) 
+    {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
+                "mod_aspdotnet: Forbidden, Options ExecCGI is not set for: %s",
+                r->filename);
+        return HTTP_FORBIDDEN;
+    }
+
+    if ((r->used_path_info == AP_REQ_REJECT_PATH_INFO) &&
+        r->path_info && *r->path_info)
+    {
+        /* default to accept */
+            ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r, 
+            "mod_aspdotnet: AcceptPathInfo off for %s disallows user's path 
%s",
+            r->filename, r->path_info);
+        return HTTP_NOT_FOUND;
+    }
+
+    asp_net_sconf_t *sconf 
+        = (asp_net_sconf_t*)ap_get_module_config(r->server->module_config, 
+                                                 &aspdotnet_module);
+
+    asp_net_host_conf_t *host = NULL;
+    apr_hash_index_t *item;
+    for (item = apr_hash_first(conf->pool, sconf->aliases); item; 
+            item = apr_hash_next(item)) 
+    {
+        asp_net_alias_t *alias;
+        apr_hash_this(item, NULL, NULL, (void**)&alias);
+        if (strncasecmp(alias->virtual_path, r->uri, 
+                        alias->virtual_path_len) == 0) {
+            host = alias->host;
+            break;
+        }
+    }
+
+    if (!item || !host) {
+            ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r,
+                "mod_aspdotnet: No AspNetMount URI for request: %s",
+                r->uri);
+        return HTTP_INTERNAL_SERVER_ERROR;
+    }
+
+    // We never create an environment, however, we will query the
+    // r->env to recover these values.
+    ap_add_common_vars(r);
+    ap_add_cgi_vars(r);
+
+    // Check that THIS thread is coinitialized.
+    HRESULT hr = CoInitialize(NULL);
+    if (hr == RPC_E_CHANGED_MODE)
+        hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
+
+    if (FAILED(hr)) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), r,
+                      "mod_aspdotnet: CoInitialize failed!");
+        return HTTP_INTERNAL_SERVER_ERROR;
+    }
+
+    VARIANT vRequest;
+    VariantInit(&vRequest);
+
+    int status;
+
+    try {
+        status = conf->pHostFactory->HandleHostRequest(host->host_key, 
+                                                       (UINT_PTR)r);
+    }
+    catch (_com_error err) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(err.Error()), r,
+                    "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
+                    r->uri, r->filename);
+        char *desc = (char*)err.Description();
+        if (desc) {
+            ap_log_rerror(APLOG_MARK, APLOG_ERR, 
+                          APR_FROM_OS_ERROR(err.Error()), r,
+                          "mod_aspdotnet: %s", desc);
+        }
+        status = HTTP_INTERNAL_SERVER_ERROR;
+    }
+    catch (HRESULT hr) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), r,
+                      "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
+                      r->uri, r->filename);
+        status = HTTP_INTERNAL_SERVER_ERROR;
+    }
+    catch (...) {
+        ap_log_rerror(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, r,
+                      "mod_aspdotnet: CreateRequest %s processing failed, file 
%s",
+                      r->uri, r->filename);
+        status = HTTP_INTERNAL_SERVER_ERROR;
+    }
+
+    VariantClear(&vRequest);
+
+    return status;
+}
+
+static int asp_net_pre_config(apr_pool_t *pconf, apr_pool_t *plog, 
+                              apr_pool_t *ptemp)
+{
+    apr_pool_t *process = apr_pool_get_parent(pconf);
+
+    // Recover or create the global, persistant configuration
+    // Setup and teardown can take a considerable amount of time,
+    // we do not want to repeat this twice per Apache process.
+    if ((apr_pool_userdata_get((void**)&conf, "mod_aspdotnet::global_conf", 
+                               process) != APR_SUCCESS) || !conf) {
+        HRESULT hr = CoInitialize(NULL);
+        if (hr == RPC_E_CHANGED_MODE)
+            hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
+        if (FAILED(hr)) {
+            ap_log_error(APLOG_MARK, APLOG_CRIT, APR_FROM_OS_ERROR(hr), NULL,
+                        "mod_aspdotnet: Failed to CoInitialize the threaded "
+                        "COM engine for .NET CLR interop!");
+            return 1;
+        }
+        conf = (asp_net_conf_t*)apr_palloc(process, sizeof(*conf));
+        conf->pool  = process;
+        conf->hosts = apr_hash_make(process);
+        conf->pCorRuntime  = NULL;
+        conf->pHostFactory = NULL;
+        apr_pool_userdata_setn(conf, "mod_aspdotnet::global_conf", 
+                               apr_pool_cleanup_null, process);
+    }
+    return APR_SUCCESS;
+}
+
+
+static int asp_net_post_config(apr_pool_t *pconf, apr_pool_t *plog, 
+                               apr_pool_t *ptemp, server_rec *gs)
+{
+    apr_hash_index_t *item;
+
+    // First time through, initialize .Net and the HostFactory
+    if (!conf->pCorRuntime || !conf->pHostFactory) {
+        try {
+            init_asp_engine();
+        }
+        catch (_com_error err) {
+            char *desc = (char*)err.Description();
+            ap_log_error(APLOG_MARK, APLOG_CRIT, 
+                         APR_FROM_OS_ERROR(err.Error()), gs,
+                         "mod_aspdotnet: Failed to start Asp.Net "
+                         "Apache.Web host factory");
+            if (desc) {
+                ap_log_error(APLOG_MARK, APLOG_CRIT, 
+                            APR_FROM_OS_ERROR(err.Error()), gs,
+                            "mod_aspdotnet: %s", desc);
+            }
+            return 1;
+        }
+        catch (HRESULT hr) {
+            ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), gs,
+                         "mod_aspdotnet: Failed to start Asp.Net "
+                         "Apache.Web host factory.");
+            return 1;
+        }
+        catch (...) {
+            ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, gs,
+                         "mod_aspdotnet: Failed to start Asp.Net "
+                         "Apache.Web host factory.");
+            return 1;
+        }
+    }
+
+    for (item = apr_hash_first(ptemp, conf->hosts); item; 
+            item = apr_hash_next(item)) 
+    {
+        asp_net_host_conf_t *host;
+        apr_hash_this(item, NULL, NULL, (void**)&host);
+    
+        if (host->host_key != -1) {
+            continue;
+        }
+
+        try {
+            // XXX: i18n these paths by treating them as UTF-8 -> Unicode!!!
+            host->host_key = conf->pHostFactory->CreateHost(
+                                                 _bstr_t(host->virtual_path), 
+                                                 _bstr_t(host->physical_path),
+                                                 (int) gs);
+            if (host->host_key == -1)
+                _com_raise_error(E_NOINTERFACE);
+        }
+        catch (_com_error err) {
+            ap_log_error(APLOG_MARK, APLOG_CRIT, 
+                         APR_FROM_OS_ERROR(err.Error()), gs, 
+                         "mod_aspdotnet: Failed to create Host connector "
+                         "for %s mapped to %s", host->virtual_path, 
+                         host->physical_path);
+            ap_log_error(APLOG_MARK, APLOG_CRIT, 
+                         APR_FROM_OS_ERROR(err.Error()), gs, 
+                         "mod_aspdotnet: %s", (char*)err.Description());
+            return 1;
+        }
+        catch (HRESULT hr) {
+            ap_log_error(APLOG_MARK, APLOG_ERR, APR_FROM_OS_ERROR(hr), gs,
+                         "mod_aspdotnet: Failed to create Host of for %s 
mapped "
+                         "to %s", host->virtual_path, host->physical_path);
+            return 1;
+        }
+        catch (...) {
+            ap_log_error(APLOG_MARK, APLOG_ERR|APLOG_NOERRNO, 0, gs,
+                         "mod_aspdotnet: Failed to create Host of for %s 
mapped "
+                         "to %s", host->virtual_path, host->physical_path);
+            return 1;
+        }
+    }
+
+    return OK;
+}
+
+static void register_hooks(apr_pool_t *p)
+{
+    ap_hook_handler(asp_net_handler, NULL, NULL, APR_HOOK_MIDDLE);
+    ap_hook_pre_config(asp_net_pre_config, NULL, NULL, APR_HOOK_MIDDLE);
+    ap_hook_post_config(asp_net_post_config, NULL, NULL, APR_HOOK_MIDDLE);
+}
+
+module AP_MODULE_DECLARE_DATA ::aspdotnet_module =
+{
+    STANDARD20_MODULE_STUFF,
+    NULL,                       /* dir config */
+    NULL,                       /* merge dir config */
+    create_asp_net_sconf,       /* server config */
+    merge_asp_net_sconfs,       /* merge server config */
+    asp_net_cmds,               /* command apr_table_t */
+    register_hooks              /* register hooks */
+};

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj    Fri Jul 
16 09:27:17 2004
@@ -1,146 +1,146 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.00"
-       Name="mod_aspdotnet"
-       ProjectGUID="{B86D2326-9565-4494-B609-3E770ED14607}"
-       Keyword="ManagedCProj">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="..\Debug"
-                       IntermediateDirectory="..\Debug"
-                       ConfigurationType="2"
-                       CharacterSet="2"
-                       ManagedExtensions="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               
AdditionalIncludeDirectories="..\Apache.Web;&quot;$(APACHE_PATH)\include&quot;;$(IntDir)"
-                               AdditionalUsingDirectories="$(IntDir)"
-                               PreprocessorDefinitions="WIN32;_DEBUG"
-                               MinimalRebuild="FALSE"
-                               ExceptionHandling="TRUE"
-                               RuntimeLibrary="1"
-                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
-                               BrowseInformation="1"
-                               WarningLevel="4"
-                               DebugInformationFormat="3"
-                               CompileAsManaged="0"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib mscoree.lib"
-                               OutputFile="$(OutDir)/$(ProjectName).so"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
-                               IgnoreDefaultLibraryNames=""
-                               GenerateDebugInformation="TRUE"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"
-                               Description="Installing debug module to 
$(APACHE_PATH)\modules"
-                               CommandLine="copy /y 
&quot;$(OutDir)\mod_aspdotnet.so&quot; &quot;$(APACHE_PATH)\modules&quot; 
&amp;&amp; copy /y &quot;$(OutDir)\mod_aspdotnet.pdb&quot; 
&quot;$(APACHE_PATH)\modules&quot;"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="..\Release"
-                       IntermediateDirectory="..\Release"
-                       ConfigurationType="2"
-                       CharacterSet="2"
-                       ManagedExtensions="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="2"
-                               InlineFunctionExpansion="1"
-                               
AdditionalIncludeDirectories="..\Apache.Web;&quot;$(APACHE_PATH)\include&quot;;$(IntDir)"
-                               AdditionalUsingDirectories="$(IntDir)"
-                               PreprocessorDefinitions="WIN32;NDEBUG"
-                               MinimalRebuild="FALSE"
-                               RuntimeLibrary="0"
-                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
-                               WarningLevel="4"
-                               DebugInformationFormat="3"
-                               CompileAsManaged="0"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib mscoree.lib"
-                               OutputFile="$(OutDir)/mod_aspdotnet.so"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
-                               IgnoreAllDefaultLibraries="FALSE"
-                               IgnoreDefaultLibraryNames=""
-                               GenerateDebugInformation="TRUE"
-                               
ProgramDatabaseFile="$(OutDir)/$(ProjectName).pdb"
-                               OptimizeReferences="2"/>
-                       <Tool
-                               Name="VCMIDLTool"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-       </Configurations>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
-                       <File
-                               RelativePath="mod_aspdotnet.cpp">
-                               <FileConfiguration
-                                       Name="Debug|Win32">
-                                       <Tool
-                                               Name="VCCLCompilerTool"
-                                               UsePrecompiledHeader="1"
-                                               
PrecompiledHeaderThrough="Mscoree.h"
-                                               
PrecompiledHeaderFile="$(IntDir)/mod_aspdotnet.pch"
-                                               CompileAsManaged="0"/>
-                               </FileConfiguration>
-                               <FileConfiguration
-                                       Name="Release|Win32">
-                                       <Tool
-                                               Name="VCCLCompilerTool"
-                                               CompileAsManaged="0"/>
-                               </FileConfiguration>
-                       </File>
-               </Filter>
-               <Filter
-                       Name="Header Files"
-                       Filter="h;hpp;hxx;hm;inl;inc">
-               </Filter>
-               <Filter
-                       Name="Resource Files"
-                       
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="7.00"
+       Name="mod_aspdotnet"
+       ProjectGUID="{B86D2326-9565-4494-B609-3E770ED14607}"
+       Keyword="ManagedCProj">
+       <Platforms>
+               <Platform
+                       Name="Win32"/>
+       </Platforms>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="..\Debug"
+                       IntermediateDirectory="..\Debug"
+                       ConfigurationType="2"
+                       CharacterSet="2"
+                       ManagedExtensions="FALSE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               
AdditionalIncludeDirectories="..\Apache.Web;&quot;$(APACHE_PATH)\include&quot;;$(IntDir)"
+                               AdditionalUsingDirectories="$(IntDir)"
+                               PreprocessorDefinitions="WIN32;_DEBUG"
+                               MinimalRebuild="FALSE"
+                               ExceptionHandling="TRUE"
+                               RuntimeLibrary="1"
+                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
+                               BrowseInformation="1"
+                               WarningLevel="4"
+                               DebugInformationFormat="3"
+                               CompileAsManaged="0"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib mscoree.lib"
+                               OutputFile="$(OutDir)/$(ProjectName).so"
+                               LinkIncremental="1"
+                               SuppressStartupBanner="TRUE"
+                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
+                               IgnoreDefaultLibraryNames=""
+                               GenerateDebugInformation="TRUE"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                               Description="Installing debug module to 
$(APACHE_PATH)\modules"
+                               CommandLine="copy /y 
&quot;$(OutDir)\mod_aspdotnet.so&quot; &quot;$(APACHE_PATH)\modules&quot; 
&amp;&amp; copy /y &quot;$(OutDir)\mod_aspdotnet.pdb&quot; 
&quot;$(APACHE_PATH)\modules&quot;"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="..\Release"
+                       IntermediateDirectory="..\Release"
+                       ConfigurationType="2"
+                       CharacterSet="2"
+                       ManagedExtensions="FALSE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="2"
+                               InlineFunctionExpansion="1"
+                               
AdditionalIncludeDirectories="..\Apache.Web;&quot;$(APACHE_PATH)\include&quot;;$(IntDir)"
+                               AdditionalUsingDirectories="$(IntDir)"
+                               PreprocessorDefinitions="WIN32;NDEBUG"
+                               MinimalRebuild="FALSE"
+                               RuntimeLibrary="0"
+                               
ProgramDataBaseFileName="$(IntDir)/$(ProjectName)_src.pdb"
+                               WarningLevel="4"
+                               DebugInformationFormat="3"
+                               CompileAsManaged="0"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalDependencies="libapr.lib 
libaprutil.lib libhttpd.lib mscoree.lib"
+                               OutputFile="$(OutDir)/mod_aspdotnet.so"
+                               LinkIncremental="1"
+                               SuppressStartupBanner="TRUE"
+                               
AdditionalLibraryDirectories="&quot;$(APACHE_PATH)\lib&quot;"
+                               IgnoreAllDefaultLibraries="FALSE"
+                               IgnoreDefaultLibraryNames=""
+                               GenerateDebugInformation="TRUE"
+                               
ProgramDatabaseFile="$(OutDir)/$(ProjectName).pdb"
+                               OptimizeReferences="2"/>
+                       <Tool
+                               Name="VCMIDLTool"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+       </Configurations>
+       <Files>
+               <Filter
+                       Name="Source Files"
+                       Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
+                       <File
+                               RelativePath="mod_aspdotnet.cpp">
+                               <FileConfiguration
+                                       Name="Debug|Win32">
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               UsePrecompiledHeader="1"
+                                               
PrecompiledHeaderThrough="Mscoree.h"
+                                               
PrecompiledHeaderFile="$(IntDir)/mod_aspdotnet.pch"
+                                               CompileAsManaged="0"/>
+                               </FileConfiguration>
+                               <FileConfiguration
+                                       Name="Release|Win32">
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               CompileAsManaged="0"/>
+                               </FileConfiguration>
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Header Files"
+                       Filter="h;hpp;hxx;hm;inl;inc">
+               </Filter>
+               <Filter
+                       Name="Resource Files"
+                       
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
+               </Filter>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/mod_aspdotnet.sln
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/mod_aspdotnet.sln   (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod_aspdotnet.sln   Fri Jul 16 
09:27:17 2004
@@ -1,43 +1,43 @@
-Microsoft Visual Studio Solution File, Format Version 7.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_aspdotnet", 
"mod\mod_aspdotnet.vcproj", "{B86D2326-9565-4494-B609-3E770ED14607}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Apache.Web", 
"Apache.Web\Apache.Web.vcproj", "{4B4F627E-C6DE-4614-9135-306D94F8755B}"
-EndProject
-Project("{E729F059-12D4-455F-A2A4-FDA8DD25E08A}") = "installer", 
"installer.isv", "{D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "resolve_apache", 
"msi_dll\resolve_apache.vcproj", "{5149E89D-79D2-4FE7-B088-4987CF385D46}"
-EndProject
-Global
-       GlobalSection(SolutionConfiguration) = preSolution
-               ConfigName.0 = Debug
-               ConfigName.1 = Release
-       EndGlobalSection
-       GlobalSection(ProjectDependencies) = postSolution
-               {B86D2326-9565-4494-B609-3E770ED14607}.0 = 
{4B4F627E-C6DE-4614-9135-306D94F8755B}
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.0 = 
{5149E89D-79D2-4FE7-B088-4987CF385D46}
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.1 = 
{B86D2326-9565-4494-B609-3E770ED14607}
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.2 = 
{4B4F627E-C6DE-4614-9135-306D94F8755B}
-       EndGlobalSection
-       GlobalSection(ProjectConfiguration) = postSolution
-               {B86D2326-9565-4494-B609-3E770ED14607}.Debug.ActiveCfg = 
Debug|Win32
-               {B86D2326-9565-4494-B609-3E770ED14607}.Debug.Build.0 = 
Debug|Win32
-               {B86D2326-9565-4494-B609-3E770ED14607}.Release.ActiveCfg = 
Release|Win32
-               {B86D2326-9565-4494-B609-3E770ED14607}.Release.Build.0 = 
Release|Win32
-               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Debug.ActiveCfg = 
Debug|Win32
-               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Debug.Build.0 = 
Debug|Win32
-               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Release.ActiveCfg = 
Release|Win32
-               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Release.Build.0 = 
Release|Win32
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Debug.ActiveCfg = 
x86-winnt
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Debug.Build.0 = x86-winnt
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Release.ActiveCfg = 
x86-winnt
-               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Release.Build.0 = 
x86-winnt
-               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Debug.ActiveCfg = 
Debug|Win32
-               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Debug.Build.0 = 
Debug|Win32
-               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Release.ActiveCfg = 
Release|Win32
-               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Release.Build.0 = 
Release|Win32
-       EndGlobalSection
-       GlobalSection(ExtensibilityGlobals) = postSolution
-       EndGlobalSection
-       GlobalSection(ExtensibilityAddIns) = postSolution
-       EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 7.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_aspdotnet", 
"mod\mod_aspdotnet.vcproj", "{B86D2326-9565-4494-B609-3E770ED14607}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Apache.Web", 
"Apache.Web\Apache.Web.vcproj", "{4B4F627E-C6DE-4614-9135-306D94F8755B}"
+EndProject
+Project("{E729F059-12D4-455F-A2A4-FDA8DD25E08A}") = "installer", 
"installer.isv", "{D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "resolve_apache", 
"msi_dll\resolve_apache.vcproj", "{5149E89D-79D2-4FE7-B088-4987CF385D46}"
+EndProject
+Global
+       GlobalSection(SolutionConfiguration) = preSolution
+               ConfigName.0 = Debug
+               ConfigName.1 = Release
+       EndGlobalSection
+       GlobalSection(ProjectDependencies) = postSolution
+               {B86D2326-9565-4494-B609-3E770ED14607}.0 = 
{4B4F627E-C6DE-4614-9135-306D94F8755B}
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.0 = 
{5149E89D-79D2-4FE7-B088-4987CF385D46}
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.1 = 
{B86D2326-9565-4494-B609-3E770ED14607}
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.2 = 
{4B4F627E-C6DE-4614-9135-306D94F8755B}
+       EndGlobalSection
+       GlobalSection(ProjectConfiguration) = postSolution
+               {B86D2326-9565-4494-B609-3E770ED14607}.Debug.ActiveCfg = 
Debug|Win32
+               {B86D2326-9565-4494-B609-3E770ED14607}.Debug.Build.0 = 
Debug|Win32
+               {B86D2326-9565-4494-B609-3E770ED14607}.Release.ActiveCfg = 
Release|Win32
+               {B86D2326-9565-4494-B609-3E770ED14607}.Release.Build.0 = 
Release|Win32
+               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Debug.ActiveCfg = 
Debug|Win32
+               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Debug.Build.0 = 
Debug|Win32
+               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Release.ActiveCfg = 
Release|Win32
+               {4B4F627E-C6DE-4614-9135-306D94F8755B}.Release.Build.0 = 
Release|Win32
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Debug.ActiveCfg = 
x86-winnt
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Debug.Build.0 = x86-winnt
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Release.ActiveCfg = 
x86-winnt
+               {D68E7F9F-9DF7-4C42-A8C0-D4E6BB129488}.Release.Build.0 = 
x86-winnt
+               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Debug.ActiveCfg = 
Debug|Win32
+               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Debug.Build.0 = 
Debug|Win32
+               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Release.ActiveCfg = 
Release|Win32
+               {5149E89D-79D2-4FE7-B088-4987CF385D46}.Release.Build.0 = 
Release|Win32
+       EndGlobalSection
+       GlobalSection(ExtensibilityGlobals) = postSolution
+       EndGlobalSection
+       GlobalSection(ExtensibilityAddIns) = postSolution
+       EndGlobalSection
+EndGlobal

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/.cvsignore
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/.cvsignore  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/.cvsignore  Fri Jul 16 
09:27:17 2004
@@ -1,9 +1,9 @@
-resolve_apache.dll
-resolve_apache.exp
-resolve_apache.ilk
-resolve_apache.lib
-resolve_apache.ncb
-resolve_apache.opt
-resolve_apache.pdb
-Debug
-Release
+resolve_apache.dll
+resolve_apache.exp
+resolve_apache.ilk
+resolve_apache.lib
+resolve_apache.ncb
+resolve_apache.opt
+resolve_apache.pdb
+Debug
+Release

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.c
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.c       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.c       Fri Jul 
16 09:27:17 2004
@@ -1,98 +1,98 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-#define _WIN32_WINNT 0x0400
-#include <windows.h>
-#include "quicksearch.h"
-
-void volsearch(char *curpath, size_t pathlen, char *findfile, size_t findlen, 
-               int depth, filesearch *cb, void *arg)
-{
-    WIN32_FILE_ATTRIBUTE_DATA fi;
-    WIN32_FIND_DATA found;
-    HANDLE dh;
-
-    if (pathlen > 3) {
-        curpath[pathlen++] = '\\';
-    }
-
-    memcpy(curpath + pathlen, findfile, findlen + 1);
-
-    if (GetFileAttributesEx(curpath, GetFileExInfoStandard, &fi)) {
-        cb(curpath, pathlen, &fi, arg);
-    }
-
-    if (!depth) {
-        curpath[pathlen] = '\0';
-        return;
-    }
-
-    if (pathlen == 3) {
-        curpath[pathlen] = '*';
-        curpath[pathlen + 1] = '\0';
-    }
-    else {
-        curpath[pathlen] = '*';
-        curpath[pathlen + 1] = '\0';
-    }
-
-    dh = FindFirstFileEx(curpath, FindExInfoStandard, &found, 
-                         FindExSearchLimitToDirectories, NULL, 0);
-
-    while (dh != INVALID_HANDLE_VALUE) {
-        size_t namelen = strlen(found.cFileName);
-
-        if ((found.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
-            && ((found.cFileName[0] != '.')
-                || (found.cFileName[1] 
-                    && ((found.cFileName[1] != '.') || found.cFileName[2])))
-            && (pathlen + namelen + findlen + 1 <= MAX_PATH)) {
-
-            memcpy(curpath + pathlen, found.cFileName, namelen + 1);
-            volsearch(curpath, pathlen + namelen, findfile, findlen, depth - 
1, cb, arg);
-        }
-
-        if (!FindNextFile(dh, &found)) {
-            FindClose(dh);
-            dh = INVALID_HANDLE_VALUE;
-        }
-    }
-
-    curpath[pathlen] = '\0';
-}
-
-
-void drsearch(char *findfile, int depth, filesearch *cb, void *arg)
-{
-    DWORD drives;
-    char search[MAX_PATH + 1];
-
-    search[0] = 'A';
-    search[1] = ':';
-    search[2] = '\\';
-
-    drives = GetLogicalDrives();
-    while (drives) {
-        if (drives & 1) {
-            search[3] = '\0';
-            if (GetDriveType(search) == DRIVE_FIXED) {
-                volsearch(search, 3, findfile, strlen(findfile), depth, cb, 
arg);
-            }
-        }
-        drives >>= 1;
-        ++search[0];
-    }
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#define _WIN32_WINNT 0x0400
+#include <windows.h>
+#include "quicksearch.h"
+
+void volsearch(char *curpath, size_t pathlen, char *findfile, size_t findlen, 
+               int depth, filesearch *cb, void *arg)
+{
+    WIN32_FILE_ATTRIBUTE_DATA fi;
+    WIN32_FIND_DATA found;
+    HANDLE dh;
+
+    if (pathlen > 3) {
+        curpath[pathlen++] = '\\';
+    }
+
+    memcpy(curpath + pathlen, findfile, findlen + 1);
+
+    if (GetFileAttributesEx(curpath, GetFileExInfoStandard, &fi)) {
+        cb(curpath, pathlen, &fi, arg);
+    }
+
+    if (!depth) {
+        curpath[pathlen] = '\0';
+        return;
+    }
+
+    if (pathlen == 3) {
+        curpath[pathlen] = '*';
+        curpath[pathlen + 1] = '\0';
+    }
+    else {
+        curpath[pathlen] = '*';
+        curpath[pathlen + 1] = '\0';
+    }
+
+    dh = FindFirstFileEx(curpath, FindExInfoStandard, &found, 
+                         FindExSearchLimitToDirectories, NULL, 0);
+
+    while (dh != INVALID_HANDLE_VALUE) {
+        size_t namelen = strlen(found.cFileName);
+
+        if ((found.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
+            && ((found.cFileName[0] != '.')
+                || (found.cFileName[1] 
+                    && ((found.cFileName[1] != '.') || found.cFileName[2])))
+            && (pathlen + namelen + findlen + 1 <= MAX_PATH)) {
+
+            memcpy(curpath + pathlen, found.cFileName, namelen + 1);
+            volsearch(curpath, pathlen + namelen, findfile, findlen, depth - 
1, cb, arg);
+        }
+
+        if (!FindNextFile(dh, &found)) {
+            FindClose(dh);
+            dh = INVALID_HANDLE_VALUE;
+        }
+    }
+
+    curpath[pathlen] = '\0';
+}
+
+
+void drsearch(char *findfile, int depth, filesearch *cb, void *arg)
+{
+    DWORD drives;
+    char search[MAX_PATH + 1];
+
+    search[0] = 'A';
+    search[1] = ':';
+    search[2] = '\\';
+
+    drives = GetLogicalDrives();
+    while (drives) {
+        if (drives & 1) {
+            search[3] = '\0';
+            if (GetDriveType(search) == DRIVE_FIXED) {
+                volsearch(search, 3, findfile, strlen(findfile), depth, cb, 
arg);
+            }
+        }
+        drives >>= 1;
+        ++search[0];
+    }
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.h       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/quicksearch.h       Fri Jul 
16 09:27:17 2004
@@ -1,38 +1,38 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// quicksearch.h declarations
-
-
-// the user-implemented filesearch prototype, e.g.
-//
-// void cbfunc(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA *fi, void 
*arg)
-// {
-//     printf("FOUND %s\n", path);
-// }
-//
-typedef void (filesearch)(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA 
*fi, void *arg);
-
-// quicksearch exposes the drsearch mechanism to quickly identify
-// and return all occurances of {findfile} within the user's fixed drives.
-// 
-// All occurances are passed back to the filesearch callback, which can
-// identify the full path, the length of the 'root' path (including the
-// trailing backslash) and a user defined optional argument.  e.g.
-//
-//    drsearch("apache\\bin\\apache.exe", 3, cbfunc, NULL);
-//
-void drsearch(char *findfile, int depth, filesearch *cb, void *arg);
-
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// quicksearch.h declarations
+
+
+// the user-implemented filesearch prototype, e.g.
+//
+// void cbfunc(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA *fi, void 
*arg)
+// {
+//     printf("FOUND %s\n", path);
+// }
+//
+typedef void (filesearch)(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA 
*fi, void *arg);
+
+// quicksearch exposes the drsearch mechanism to quickly identify
+// and return all occurances of {findfile} within the user's fixed drives.
+// 
+// All occurances are passed back to the filesearch callback, which can
+// identify the full path, the length of the 'root' path (including the
+// trailing backslash) and a user defined optional argument.  e.g.
+//
+//    drsearch("apache\\bin\\apache.exe", 3, cbfunc, NULL);
+//
+void drsearch(char *findfile, int depth, filesearch *cb, void *arg);
+

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.c
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.c    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.c    Fri Jul 
16 09:27:17 2004
@@ -1,175 +1,175 @@
-/* Copyright 2002-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// MSI custom action dll to locate Apache 2.0 installations
-
-
-#define WINDOWS_LEAN_AND_MEAN
-#include <windows.h>
-#include <stdio.h>
-#include <tchar.h>
-#include <ctype.h>
-#include "MsiQuery.h"
-#include "quicksearch.h"
-
-struct cbResolverArg {
-    MSIHANDLE hInstall;
-    MSIHANDLE hDB;
-    MSIHANDLE hView;
-    char     *combo;
-    char     *prop;
-    int       index;
-};
-
-void cbResolver(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA *fi, void 
*arg)
-{
-    struct cbResolverArg *wrk = arg;
-
-    MSIHANDLE rec = MsiCreateRecord(4);
-    if (!rec) {
-        return;
-    }
-
-    // this is safe, everything after path[len-1] is ours to play with.
-    path[len] = '\0';
-
-    if (!wrk->index) {
-        // First Hit?  We need to set up the property, too!
-        MsiSetProperty(wrk->hInstall, "_BadPath", "0");
-        MsiSetProperty(wrk->hInstall, wrk->combo, path);
-        MsiSetTargetPath(wrk->hInstall, "INSTALLDIR", path);
-    }
-
-    // Modify the ComboBox Control
-    MsiRecordSetString (rec, 1, wrk->combo);
-    MsiRecordSetInteger(rec, 2, ++wrk->index);
-    MsiRecordSetString (rec, 3, path);
-    MsiRecordSetString (rec, 4, NULL);
-
-    if (MsiViewModify(wrk->hView, MSIMODIFY_INSERT_TEMPORARY, rec) == 
ERROR_SUCCESS) {
-        MsiViewExecute(wrk->hView, rec);
-    }
-
-    MsiCloseHandle(rec);
-}
-
-UINT __declspec(dllexport) __stdcall ResolveApacheInstances(MSIHANDLE 
hInstall) 
-{
-    UINT res;
-    struct cbResolverArg wrk;
-
-    wrk.index = 0;
-    wrk.combo = "INSTALLDIR";
-    wrk.hInstall = hInstall;
-    wrk.hDB = MsiGetActiveDatabase(wrk.hInstall);
-
-    if (!wrk.hDB) {
-        return ERROR_SUCCESS;
-    }
-
-    MsiSetProperty(hInstall, "_BadPath", "1");
-
-    res = MsiDatabaseOpenView(wrk.hDB, "SELECT * FROM ComboBox", &wrk.hView);
-    if (res != ERROR_SUCCESS) {
-        MsiCloseHandle(wrk.hDB);
-        return res;
-    }
-
-    drsearch("bin\\apache.exe", 3, cbResolver, &wrk);
-
-    MsiCloseHandle(wrk.hView);
-    MsiCloseHandle(wrk.hDB);
-    return ERROR_SUCCESS;
-}
-
-UINT tryAddPath(MSIHANDLE hInstall, char *str, int len, 
WIN32_FILE_ATTRIBUTE_DATA *fi)
-{
-    char query[1024];
-    struct cbResolverArg wrk;
-    MSIHANDLE rec = 0;
-    UINT res;
-    
-    wrk.index = 0;
-    wrk.combo = "INSTALLDIR";
-    wrk.hInstall = hInstall;
-    wrk.hDB = MsiGetActiveDatabase(wrk.hInstall);
-
-    str[len] = '\0';
-
-    if (!wrk.hDB) {
-        return ERROR_SUCCESS;
-    }
-
-    MsiSetProperty(hInstall, "_BadPath", "1");
-
-    sprintf(query, "SELECT * FROM ComboBox WHERE Property = \"%s\" AND Value = 
\"%s\"",
-            wrk.combo, str);
-    res = MsiDatabaseOpenView(wrk.hDB, query, &wrk.hView);
-    if (res != ERROR_SUCCESS) {
-        MsiCloseHandle(wrk.hDB);
-        return res;
-    }
-
-    res = MsiViewFetch(wrk.hView, &rec);
-    if (res == ERROR_SUCCESS) {
-        if (rec) {
-            MsiCloseHandle(rec);
-        }
-    }
-    else if (res == ERROR_NO_MORE_ITEMS) {
-        // Actually insert the record, if not found.
-        cbResolver(str, len, fi, &wrk);
-    }
-
-    MsiCloseHandle(wrk.hView);
-    MsiCloseHandle(wrk.hDB);
-    return ERROR_SUCCESS;
-}
-
-UINT __declspec(dllexport) __stdcall VerifyApachePath(MSIHANDLE hInstall) 
-{
-    char chkfile[] = "bin\\apache.exe";
-    WIN32_FILE_ATTRIBUTE_DATA fi;
-    DWORD len = MAX_PATH;
-    char str[MAX_PATH + 1];
-
-    if ((MsiGetProperty(hInstall, "INSTALLDIR", str, &len) != ERROR_SUCCESS)
-            || (len + sizeof(chkfile) > MAX_PATH)) {
-        MsiSetProperty(hInstall, "_BadPath", "1");
-        return ERROR_SUCCESS;
-    }
-
-    len = strlen(str);
-
-    if (str[len - 1] != '\\') {
-        str[len++] = '\\';
-        str[len] = '\0';
-        MsiSetProperty(hInstall, "INSTALLDIR", str);
-    }
-
-    strcpy(str + len, chkfile);
-    if (!GetFileAttributesEx(str, GetFileExInfoStandard, &fi)) {
-        MsiSetProperty(hInstall, "_BadPath", "1");
-        return ERROR_SUCCESS;
-    }
-    str[len] = '\0';
-
-    MsiSetTargetPath(hInstall, "INSTALLDIR", str);
-
-    tryAddPath(hInstall, str, len, &fi);
-
-    MsiSetProperty(hInstall, "_BadPath", "0");
-    return ERROR_SUCCESS;
-}
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// MSI custom action dll to locate Apache 2.0 installations
+
+
+#define WINDOWS_LEAN_AND_MEAN
+#include <windows.h>
+#include <stdio.h>
+#include <tchar.h>
+#include <ctype.h>
+#include "MsiQuery.h"
+#include "quicksearch.h"
+
+struct cbResolverArg {
+    MSIHANDLE hInstall;
+    MSIHANDLE hDB;
+    MSIHANDLE hView;
+    char     *combo;
+    char     *prop;
+    int       index;
+};
+
+void cbResolver(char *path, size_t len, WIN32_FILE_ATTRIBUTE_DATA *fi, void 
*arg)
+{
+    struct cbResolverArg *wrk = arg;
+
+    MSIHANDLE rec = MsiCreateRecord(4);
+    if (!rec) {
+        return;
+    }
+
+    // this is safe, everything after path[len-1] is ours to play with.
+    path[len] = '\0';
+
+    if (!wrk->index) {
+        // First Hit?  We need to set up the property, too!
+        MsiSetProperty(wrk->hInstall, "_BadPath", "0");
+        MsiSetProperty(wrk->hInstall, wrk->combo, path);
+        MsiSetTargetPath(wrk->hInstall, "INSTALLDIR", path);
+    }
+
+    // Modify the ComboBox Control
+    MsiRecordSetString (rec, 1, wrk->combo);
+    MsiRecordSetInteger(rec, 2, ++wrk->index);
+    MsiRecordSetString (rec, 3, path);
+    MsiRecordSetString (rec, 4, NULL);
+
+    if (MsiViewModify(wrk->hView, MSIMODIFY_INSERT_TEMPORARY, rec) == 
ERROR_SUCCESS) {
+        MsiViewExecute(wrk->hView, rec);
+    }
+
+    MsiCloseHandle(rec);
+}
+
+UINT __declspec(dllexport) __stdcall ResolveApacheInstances(MSIHANDLE 
hInstall) 
+{
+    UINT res;
+    struct cbResolverArg wrk;
+
+    wrk.index = 0;
+    wrk.combo = "INSTALLDIR";
+    wrk.hInstall = hInstall;
+    wrk.hDB = MsiGetActiveDatabase(wrk.hInstall);
+
+    if (!wrk.hDB) {
+        return ERROR_SUCCESS;
+    }
+
+    MsiSetProperty(hInstall, "_BadPath", "1");
+
+    res = MsiDatabaseOpenView(wrk.hDB, "SELECT * FROM ComboBox", &wrk.hView);
+    if (res != ERROR_SUCCESS) {
+        MsiCloseHandle(wrk.hDB);
+        return res;
+    }
+
+    drsearch("bin\\apache.exe", 3, cbResolver, &wrk);
+
+    MsiCloseHandle(wrk.hView);
+    MsiCloseHandle(wrk.hDB);
+    return ERROR_SUCCESS;
+}
+
+UINT tryAddPath(MSIHANDLE hInstall, char *str, int len, 
WIN32_FILE_ATTRIBUTE_DATA *fi)
+{
+    char query[1024];
+    struct cbResolverArg wrk;
+    MSIHANDLE rec = 0;
+    UINT res;
+    
+    wrk.index = 0;
+    wrk.combo = "INSTALLDIR";
+    wrk.hInstall = hInstall;
+    wrk.hDB = MsiGetActiveDatabase(wrk.hInstall);
+
+    str[len] = '\0';
+
+    if (!wrk.hDB) {
+        return ERROR_SUCCESS;
+    }
+
+    MsiSetProperty(hInstall, "_BadPath", "1");
+
+    sprintf(query, "SELECT * FROM ComboBox WHERE Property = \"%s\" AND Value = 
\"%s\"",
+            wrk.combo, str);
+    res = MsiDatabaseOpenView(wrk.hDB, query, &wrk.hView);
+    if (res != ERROR_SUCCESS) {
+        MsiCloseHandle(wrk.hDB);
+        return res;
+    }
+
+    res = MsiViewFetch(wrk.hView, &rec);
+    if (res == ERROR_SUCCESS) {
+        if (rec) {
+            MsiCloseHandle(rec);
+        }
+    }
+    else if (res == ERROR_NO_MORE_ITEMS) {
+        // Actually insert the record, if not found.
+        cbResolver(str, len, fi, &wrk);
+    }
+
+    MsiCloseHandle(wrk.hView);
+    MsiCloseHandle(wrk.hDB);
+    return ERROR_SUCCESS;
+}
+
+UINT __declspec(dllexport) __stdcall VerifyApachePath(MSIHANDLE hInstall) 
+{
+    char chkfile[] = "bin\\apache.exe";
+    WIN32_FILE_ATTRIBUTE_DATA fi;
+    DWORD len = MAX_PATH;
+    char str[MAX_PATH + 1];
+
+    if ((MsiGetProperty(hInstall, "INSTALLDIR", str, &len) != ERROR_SUCCESS)
+            || (len + sizeof(chkfile) > MAX_PATH)) {
+        MsiSetProperty(hInstall, "_BadPath", "1");
+        return ERROR_SUCCESS;
+    }
+
+    len = strlen(str);
+
+    if (str[len - 1] != '\\') {
+        str[len++] = '\\';
+        str[len] = '\0';
+        MsiSetProperty(hInstall, "INSTALLDIR", str);
+    }
+
+    strcpy(str + len, chkfile);
+    if (!GetFileAttributesEx(str, GetFileExInfoStandard, &fi)) {
+        MsiSetProperty(hInstall, "_BadPath", "1");
+        return ERROR_SUCCESS;
+    }
+    str[len] = '\0';
+
+    MsiSetTargetPath(hInstall, "INSTALLDIR", str);
+
+    tryAddPath(hInstall, str, len, &fi);
+
+    MsiSetProperty(hInstall, "_BadPath", "0");
+    return ERROR_SUCCESS;
+}

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.vcproj
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.vcproj       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/msi_dll/resolve_apache.vcproj       
Fri Jul 16 09:27:17 2004
@@ -1,133 +1,133 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.00"
-       Name="resolve_apache"
-       ProjectGUID="{5149E89D-79D2-4FE7-B088-4987CF385D46}"
-       SccProjectName=""
-       SccLocalPath="">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory="."
-                       IntermediateDirectory=".\Release"
-                       ConfigurationType="2"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               InlineFunctionExpansion="1"
-                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
-                               StringPooling="TRUE"
-                               RuntimeLibrary="0"
-                               EnableFunctionLevelLinking="TRUE"
-                               
PrecompiledHeaderFile=".\Release/resolve_apache.pch"
-                               AssemblerListingLocation=".\Release/"
-                               ObjectFile=".\Release/"
-                               ProgramDataBaseFileName="Release\resolve_apache"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="msi.lib wsock32.lib"
-                               OutputFile="./resolve_apache.dll"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               ProgramDatabaseFile="./resolve_apache.pdb"
-                               SubSystem="2"
-                               ImportLibrary="./resolve_apache.lib"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName="./resolve_apache.tlb"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               Culture="1033"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory="."
-                       IntermediateDirectory=".\Debug"
-                       ConfigurationType="2"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               Optimization="0"
-                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
-                               RuntimeLibrary="1"
-                               
PrecompiledHeaderFile=".\Debug/resolve_apache.pch"
-                               AssemblerListingLocation=".\Debug/"
-                               ObjectFile=".\Debug/"
-                               ProgramDataBaseFileName="Debug\resolve_apache"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalOptions="/MACHINE:I386"
-                               AdditionalDependencies="msi.lib wsock32.lib"
-                               OutputFile="./resolve_apache.dll"
-                               LinkIncremental="2"
-                               SuppressStartupBanner="TRUE"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="./resolve_apache.pdb"
-                               SubSystem="2"
-                               ImportLibrary="./resolve_apache.lib"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName="./resolve_apache.tlb"/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               Culture="1033"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-               </Configuration>
-       </Configurations>
-       <Files>
-               <File
-                       RelativePath=".\quicksearch.c">
-               </File>
-               <File
-                       RelativePath=".\resolve_apache.c">
-               </File>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="7.00"
+       Name="resolve_apache"
+       ProjectGUID="{5149E89D-79D2-4FE7-B088-4987CF385D46}"
+       SccProjectName=""
+       SccLocalPath="">
+       <Platforms>
+               <Platform
+                       Name="Win32"/>
+       </Platforms>
+       <Configurations>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="."
+                       IntermediateDirectory=".\Release"
+                       ConfigurationType="2"
+                       UseOfMFC="0"
+                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               InlineFunctionExpansion="1"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
+                               StringPooling="TRUE"
+                               RuntimeLibrary="0"
+                               EnableFunctionLevelLinking="TRUE"
+                               
PrecompiledHeaderFile=".\Release/resolve_apache.pch"
+                               AssemblerListingLocation=".\Release/"
+                               ObjectFile=".\Release/"
+                               ProgramDataBaseFileName="Release\resolve_apache"
+                               WarningLevel="3"
+                               SuppressStartupBanner="TRUE"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalOptions="/MACHINE:I386"
+                               AdditionalDependencies="msi.lib wsock32.lib"
+                               OutputFile="./resolve_apache.dll"
+                               LinkIncremental="1"
+                               SuppressStartupBanner="TRUE"
+                               ProgramDatabaseFile="./resolve_apache.pdb"
+                               SubSystem="2"
+                               ImportLibrary="./resolve_apache.lib"/>
+                       <Tool
+                               Name="VCMIDLTool"
+                               PreprocessorDefinitions="NDEBUG"
+                               MkTypLibCompatible="TRUE"
+                               SuppressStartupBanner="TRUE"
+                               TargetEnvironment="1"
+                               TypeLibraryName="./resolve_apache.tlb"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                               PreprocessorDefinitions="NDEBUG"
+                               Culture="1033"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="."
+                       IntermediateDirectory=".\Debug"
+                       ConfigurationType="2"
+                       UseOfMFC="0"
+                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
+                               RuntimeLibrary="1"
+                               
PrecompiledHeaderFile=".\Debug/resolve_apache.pch"
+                               AssemblerListingLocation=".\Debug/"
+                               ObjectFile=".\Debug/"
+                               ProgramDataBaseFileName="Debug\resolve_apache"
+                               WarningLevel="3"
+                               SuppressStartupBanner="TRUE"
+                               DebugInformationFormat="3"/>
+                       <Tool
+                               Name="VCCustomBuildTool"/>
+                       <Tool
+                               Name="VCLinkerTool"
+                               AdditionalOptions="/MACHINE:I386"
+                               AdditionalDependencies="msi.lib wsock32.lib"
+                               OutputFile="./resolve_apache.dll"
+                               LinkIncremental="2"
+                               SuppressStartupBanner="TRUE"
+                               GenerateDebugInformation="TRUE"
+                               ProgramDatabaseFile="./resolve_apache.pdb"
+                               SubSystem="2"
+                               ImportLibrary="./resolve_apache.lib"/>
+                       <Tool
+                               Name="VCMIDLTool"
+                               PreprocessorDefinitions="_DEBUG"
+                               MkTypLibCompatible="TRUE"
+                               SuppressStartupBanner="TRUE"
+                               TargetEnvironment="1"
+                               TypeLibraryName="./resolve_apache.tlb"/>
+                       <Tool
+                               Name="VCPostBuildEventTool"/>
+                       <Tool
+                               Name="VCPreBuildEventTool"/>
+                       <Tool
+                               Name="VCPreLinkEventTool"/>
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                               PreprocessorDefinitions="_DEBUG"
+                               Culture="1033"/>
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"/>
+                       <Tool
+                               Name="VCWebDeploymentTool"/>
+               </Configuration>
+       </Configurations>
+       <Files>
+               <File
+                       RelativePath=".\quicksearch.c">
+               </File>
+               <File
+                       RelativePath=".\resolve_apache.c">
+               </File>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/release.bat
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/release.bat (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/release.bat Fri Jul 16 09:27:17 2004
@@ -1,2 +1,2 @@
-regasm /nologo "Release\Apache.Web.dll" 
+regasm /nologo "Release\Apache.Web.dll" 
 gacutil /ir "Release\Apache.Web.dll" FILEPATH "Release\Apache.Web.dll" 
Apache.Web

Reply via email to