Microsoft KB Archive/324168

From BetaArchive Wiki
Knowledge Base


Article ID: 324168

Article Last Modified on 12/3/2007



APPLIES TO

  • Microsoft .NET Framework 2.0
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.0
  • Microsoft Visual Studio 2005 Professional Edition
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio .NET 2003 Academic Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2002 Academic Edition
  • Microsoft Visual Studio .NET 2002 Enterprise Architect
  • Microsoft Visual Studio .NET 2002 Enterprise Developer
  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual J# .NET 2003 Standard Edition
  • Microsoft Visual J# .NET 2003 Standard Edition



This article was previously published under Q324168


SUMMARY

This step-by-step article describes how to deploy an assembly to the global assembly cache of the target computer. This makes the target computer shareable in other applications. When you do this, strong name signatures must be verified only one time. Also, by loading an assembly from the same location on the disk, you take advantage of the code sharing behavior that the operating system provides and the working set improves.

Step by step procedure

Use Visual Studio .NET to create a setup project, and then deploy the assembly to the target computer global assembly cache. To do this, follow these steps:

  1. To the Solution that contains the project, add a new Setup Project that references to the assembly.
  2. Right-click File System on Target Machine, click Add Special Folder, and then click Global Assembly Cache Folder.
  3. By default, the assembly is inserted in the Application Folder (by default, it is a side-by-side installation). Drag the assembly to the Global Assembly Cache Folder.
  4. Build the Setup Project.

Remarks

If you rebuild the assembly later, and you change its Version Minor but you do not change its Public Key Token, the relating strong name will be different. Because of this, if you follow steps 1 through 4 to deploy other applications that reference to the rebuilt assembly (which is contained in the package), the target global assembly cache will contain both assemblies.

If the assembly is already strong-named, you can deploy another application in the target global assembly cache. If the assembly is not strong-named, you receive the following message from Task List:

Assembly AssemblyName must have a shared name to be installed globally

REFERENCES

For more information about assemblies and the global assembly cache, visit the following Microsoft Web sites:

Simplifying Deployment and Solving DLL Hell with the .NET Framework
http://msdn2.microsoft.com/en-us/netframework/aa497268.aspx


For more information, click the following article number to view the article in the Microsoft Knowledge Base:

315682 How to install an assembly into the global assembly cache in Visual Studio .NET


Keywords: kbhowtomaster KB324168