SF.net SVN: mod-aspdotnet: [219] mod_aspdotnet2/trunk/README.txt
Brought to you by:
wrowe
From: <wr...@us...> - 2008-03-03 22:33:04
|
Revision: 219 http://mod-aspdotnet.svn.sourceforge.net/mod-aspdotnet/?rev=219&view=rev Author: wrowe Date: 2008-03-03 14:32:52 -0800 (Mon, 03 Mar 2008) Log Message: ----------- Readme updates for moot issues (since .NET 2, at least) Modified Paths: -------------- mod_aspdotnet2/trunk/README.txt Modified: mod_aspdotnet2/trunk/README.txt =================================================================== --- mod_aspdotnet2/trunk/README.txt 2008-03-03 22:26:37 UTC (rev 218) +++ mod_aspdotnet2/trunk/README.txt 2008-03-03 22:32:52 UTC (rev 219) @@ -2,7 +2,8 @@ ----------------------------------- mod_aspdotnet.so and Apache.Web.dll require Windows 2000 or later, they -are not maintained to be compatible with Windows 98, ME or NT 4. +are not maintained to be compatible with Windows 98, ME or NT 4. Your +results attempting to use earlier flavors will vary. Build Notes @@ -14,7 +15,7 @@ set APACHE_PATH=d:\path\to\apache2 devenv mod_aspdotnet.sln /useenv /build Release /project mod_aspdotnet -or to build for Apache 2.1-dev or Apache 2.2, invoke with the syntax; +or to build for Apache 2.2, invoke with the syntax; set APACHE22_PATH=d:\path\to\apache2.2 devenv mod_aspdotnet.sln /useenv /build "Release 2.2" /project mod_aspdotnet @@ -35,10 +36,9 @@ may again change the CLR C++ syntax to be entirely incompatible with the sources. -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 environment remains clean of excess COM registration gunk. +The Apache.Web.dll is no longer temporarily registered, it's type library +(.tlb file) is extracted using tlbexp. Earlier notes about this should be +ignored. We build Apache.Web.dll with delay-load of libhttpd, libapr and libaprutil dll's. This is important since Apache.Web.dll normally can't be loaded, @@ -58,28 +58,6 @@ for installations of Apache.exe (Release flavor) or httpd.exe (Release 2.2). -Alternate Build Notes ---------------------- - -We have attempted to build the modules with the free Microsoft Visual C++ -Toolkit, Microsoft's .NET Framework SDK and Windows Platform SDK. Sadly, -this combination is not a complete replacement for the Developer Studio, -and is insufficient to build the mod_aspdotnet and Apache.Web.dll modules. - -Notably, none of these packages includes the DelayImp.lib which is -required to link libhttpd, libaprutil and libapr .dll files to the -Apache.Web.dll module. This allows the regasm and gacutil utilities, -amoung others, to load and process the Apache.Web.dll, without loading -the actual Apache .dll files. Without this feature it's impossible to -place Apache.Web.dll in the GAC (required for loading inside Microsoft's -System.Web.Hosting framework), while the Apache .dll files remain in the -Apache bin directory. - -This should be solved in a future release by migrating to VisualStudio 2005 -which offers a much more complete "Lite" flavor that users may obtain for -free from Microsoft. - - Deployment Notes ---------------- @@ -94,27 +72,24 @@ So it is not possible to install Apache.Web.dll in the 'usual' modules subdirectory of Apache HTTP Server. -The Debug build will do so automatically, copying mod_aspdotnet.so + .pdb -into the $(APACHE_PATH)\modules directory, for testing. -Apache.Web.dll + .pdb files are copied into $(APACHE_PATH)\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; +the release build or 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 installs Apache.Web.dll by reference to the built assembly. +This installs Apache.Web.dll by reference to the built assembly. Note that +UAC will prevent you from doing this in Vista or 2008 and you may need to +launch a command shell "run as Administrator" in order to complete this +package registration in the global cache. This may *NOT* work on an end-user's machine without the .NET Platform SDK. Those tools [regasm/gacutil] were not officially going to be distributed with the retail .NET runtime redistributables. Instead, the .msi installer, has all details for registering the Apache.Web assembly into the Global Assembly Cache, is entrusted to install Apache.Web to the GAC for end-users. +Note that it appears they are installed with the runtime, but all warnings +by Microsoft were to the contrary. TODO @@ -130,12 +105,6 @@ .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. (This is no longer needed with .NET 1.1 as -it more thoroughly registers itself on install, even in the absense of IIS -on the target machine.) - 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 test further, as necessary, or allow explicitly long paths, if the user chooses. The path can This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |