You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cli-dev@httpd.apache.org by wr...@apache.org on 2004/07/16 18:27:18 UTC
svn commit: rev 22970 - in incubator/httpd/cli/trunk/mod_aspdotnet: . Apache.Web Apache.Web/Helpers installer mod msi_dll
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=""$(APACHE_PATH)\include""
- 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=""$(APACHE_PATH)\lib""
- 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:"$(IntDir)/Apache.Web.tlb" "$(OutDir)\Apache.Web.dll" && gacutil /ir "$(OutDir)\Apache.Web.dll" FILEPATH "$(OutDir)\Apache.Web.dll" 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=""$(APACHE_PATH)\include""
- 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=""$(APACHE_PATH)\lib""
- 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:"$(IntDir)/Apache.Web.tlb" "$(OutDir)\Apache.Web.dll" && regasm /nologo /unregister "$(OutDir)\Apache.Web.dll""/>
- <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:"$(OutDir)\Apache.Web.Helpers.netmodule" $(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:"$(OutDir)\Apache.Web.Helpers.netmodule" $(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=""$(APACHE_PATH)\include""
+ 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=""$(APACHE_PATH)\lib""
+ 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:"$(IntDir)/Apache.Web.tlb" "$(OutDir)\Apache.Web.dll" && gacutil /ir "$(OutDir)\Apache.Web.dll" FILEPATH "$(OutDir)\Apache.Web.dll" 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=""$(APACHE_PATH)\include""
+ 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=""$(APACHE_PATH)\lib""
+ 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:"$(IntDir)/Apache.Web.tlb" "$(OutDir)\Apache.Web.dll" && regasm /nologo /unregister "$(OutDir)\Apache.Web.dll""/>
+ <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:"$(OutDir)\Apache.Web.Helpers.netmodule" $(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:"$(OutDir)\Apache.Web.Helpers.netmodule" $(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 _ResolveApacheInstances@4 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 _VerifyApachePath@4 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 _ResolveApacheInstances@4 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 _VerifyApachePath@4 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;"$(APACHE_PATH)\include";$(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=""$(APACHE_PATH)\lib""
- IgnoreDefaultLibraryNames=""
- GenerateDebugInformation="TRUE"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"
- Description="Installing debug module to $(APACHE_PATH)\modules"
- CommandLine="copy /y "$(OutDir)\mod_aspdotnet.so" "$(APACHE_PATH)\modules" && copy /y "$(OutDir)\mod_aspdotnet.pdb" "$(APACHE_PATH)\modules""/>
- <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;"$(APACHE_PATH)\include";$(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=""$(APACHE_PATH)\lib""
- 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;"$(APACHE_PATH)\include";$(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=""$(APACHE_PATH)\lib""
+ IgnoreDefaultLibraryNames=""
+ GenerateDebugInformation="TRUE"/>
+ <Tool
+ Name="VCMIDLTool"/>
+ <Tool
+ Name="VCPostBuildEventTool"
+ Description="Installing debug module to $(APACHE_PATH)\modules"
+ CommandLine="copy /y "$(OutDir)\mod_aspdotnet.so" "$(APACHE_PATH)\modules" && copy /y "$(OutDir)\mod_aspdotnet.pdb" "$(APACHE_PATH)\modules""/>
+ <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;"$(APACHE_PATH)\include";$(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=""$(APACHE_PATH)\lib""
+ 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