PRB: "Access Denied" Error Messages When You Do Not Put Strong-Named Assemblies in the Global Assembly Cache

Article translations Article translations
Article ID: 813833 - View products that this article applies to.
Expand all | Collapse all

SYMPTOMS

If you do not put strong-named assemblies (or private strong-named assemblies) in the global assembly cache, and then you use these assemblies in your ASP.NET application, Indexing Service may experience "Access Denied" errors for these strong-named assemblies.

CAUSE

Strong-named assemblies are loaded as domain neutral for ASP.NET applications. Because these assemblies are not unloaded until the process is unloaded, the file may remain locked. Therefore, when Indexing Service monitors the temporary ASP.NET folder and the Web root folders, you may receive "Access Denied" error messages for strong-named assemblies that are not in the global assembly cache.

RESOLUTION

  • Because strong-named assemblies are loaded as domain neutral for ASP.NET applications, do not put strong-named assemblies in the Bin folder of your ASP.NET application. Strong-named assemblies are only supported in the global assembly cache for ASP.NET.
  • Private strong-named assemblies (strong-named assemblies that are located in the Bin folder of an ASP.NET application) are not supported.
  • If you want to use a private assembly, do not make this assembly a strong-named assembly for ASP.NET applications.

STATUS

This behavior is by design.

MORE INFORMATION

Microsoft recommends that you do not configure Indexing Service or antivirus applications to monitor the ASP.NET temporary folder or the Web application folders, regardless of whether your ASP.NET applications use strong-named assemblies.

REFERENCES

For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base:
302340 HOW TO: Create an Assembly with a Strong Name in .NET Framework SDK
815808 HOW TO: Install an Assembly into the Global Assembly Cache in Visual C# .NET
820983 HOW TO: Use an ASP.NET Application to Query an Indexing Service Catalog by Using Visual C# .NET
For more information about the global assembly cache, visit the following Microsoft Web sites:
Installing an Assembly into the Global Assembly Cache
http://msdn2.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx

Global Assembly Cache
http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx

Global Assembly Cache Tool (Gacutil.exe)
http://msdn2.microsoft.com/en-us/library/ex0ss12c(vs.71).aspx

Properties

Article ID: 813833 - Last Review: May 21, 2007 - Revision: 4.4
APPLIES TO
  • Microsoft Web Services Enhancements for Microsoft .NET 1.1
  • Microsoft Web Services (included with the .NET Framework) 1.0
Keywords: 
kberrmsg kbmonitoring kbdll kbprb KB813833
Retired KB Content Disclaimer
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com