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.
[assemblyName | assemblyPath | assemblyListFile]
assemblyName : The
name of an assembly.
The name of a file that contains an assembly manifest.
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.