Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

PRB: Exceptions Occur When You Run ASP.NET Applications and Inoculan Antivirus Software


View products that this article applies to.

Symptoms

When you use Visual Studio .NET to develop an ASP.NET Web application on a computer that is running Inoculan antivirus software, ASP.NET may throw a random exception when you run the application within Visual Studio. In most tested scenarios, the exception is of type System.Threading.ThreadAbortException.

↑ Back to the top


Cause

After you first open the file, Inoculan writes back to a file (in an alternative NTFS file system stream). In this case, Visual Studio creates a dynamic-link library (DLL) in the Bin folder and issues the request to the .aspx page. While processing the request, the ASP.NET worker process loads the DLL. Inoculan then writes back to the DLL file, which triggers the notification that the file has changed. ASP.NET receives this notification and restarts the application. Because this occurs while the first request is still being processed, ASP.NET may not have enough state to finish processing the request, depending on the time-out setting. Thus, ASP.NET rejects the original request.

↑ Back to the top


Resolution

To resolve this problem, increase the delayNotificationTimeout attribute of the <httpRuntime> configuration section in the Web.config file. This value is set with the following entry in the Web.config file:
<httpRuntime delayNotificationTimeout="5" />
				
The default value is 5 seconds, which is sometimes insufficient for specific hardware. To resolve the problem on your computer, you must increase the time-out value to a value that works for your hardware and computer speed, for example 60.

↑ Back to the top


Status

This is not a bug in ASP.NET or Visual Studio .NET, but a side effect of another product that is running on the same computer.

↑ Back to the top


More information

The following frames usually appear on the top of the exception stack:
System.Web.Compilation.CompilationMutex.WaitOne() +314
System.Web.Compilation.PreservedAssemblyEntry.LoadDataFromFile(Boolean fApplicationFile) +41
System.Web.Compilation.PreservedAssemblyEntry.GetPreservedAssemblyEntry
				

↑ Back to the top


Keywords: kbthread, kbreadme, kbprb, kbconfig, kbnofix, kbweb, KB309337

↑ Back to the top

Article Info
Article ID : 309337
Revision : 5
Created on : 4/24/2003
Published on : 4/24/2003
Exists online : False
Views : 390