Is your ASP.NET web application built for .NET 1.0 or 1.1 (while typically
forward-compatible, using obsoleted methods will break it). If you need to
run this on .NET 1.0, installed 1.0 and SP2, then create a new application
pool on which the application runs (an worker process can only run one
version of ASP.NET) and set your ASP.NET web application to use that
AppPool.
If it's not this, make sure that the user under which the AppPool runs has
the correct privileges (putting that user in IIS_WPG is typically enough)
and has access to Temporary ASP.NET files in the Framework installation
directory. You might also want to grant them read/write security on
\Windows\Temp, too, because some assemblies in the base class library use
that to emit persistent assemblies it seems (we had that problem at least).
In IIS6, the <machinePolicy> section of the machine.config file doesn't have
any effect (at least from what I've read and from experience). The AppPool
(controls the worker process) takes care of all this now, so if you modified
your machine.config thinking that this would work it won't. Everything must
be configured from the AppPool.
--
Heath Stewart, Microsoft MVP
Director of Technology
Proplanner
http://www.proplanner.com