Home > DeveloperSection > Blogs > Global Assembly Cache in .Net

Global Assembly Cache in .Net

0 Comment(s)
 1934  View(s)
Rate this:

Global Assembly Cache in .Net

In this blog, I’m trying to explain the concept of global assembly cache in .net

Abbreviated as GAC, the Global Assembly Cache is a machine-wide store used to hold assemblies that are intended to be shared by several applications on the machine. Each computer where the common language runtime (CLR) is installed has a global assembly cache. The global assembly cache stores the assemblies specifically designated to be shared by several applications on the computer. 

The .NET Framework provides two tools for working with the cache. One is a Windows shell extension that allows you to work with the cache using a Graphical User Interface (GUI). The other is a command line tool, called the Global Assembly Cache tool (Gacutil.exe), that is typically used in build and test scripts.

Global Assembly Cache Tool (Gacutil.exe)

The Global Assembly Cache tool allows you to view and manipulate the contents of the global assembly cache.


gacutil [options] [assemblyName | assemblyPath | assemblyListFile]


assemblyName : The name of an assembly.

assemblyPath : The name of a file that contains an assembly manifest.

assemblyListFile : The path to an ANSI text file that lists assemblies to install or uninstall.


/i assemblyPath : Installs an assembly into the global assembly cache.

/il assemblyListFile : Installs one or more assemblies specified in assemblyListFile into the global                assembly cache.

/l [assemblyName] : Lists the contents of the global assembly cache. If you specify the assemblyName parameter, the tool lists only the assemblies matching that name.

/u assemblyName : Uninstalls an assembly from the global assembly cache.

Don't want to miss updates? Please click the below button!

Follow MindStick