How to Clean the Global Assembly Cache
The Global Assembly Cache (GAC) folder in Microsoft Windows stores assemblies common to multiple applications. An assembly is a single, compiled unit that contains information about all the files and resources in a .NET application. The .Net framework comes with pre-installed assemblies. Developers can also place assemblies into the GAC to share them with other applications. Microsoft notes that you don't generally need to remove items from the Global Assembly Cache, but it does provide tools for cleaning the GAC.
Things You'll Need
- Microsoft Visual Studio free software
Click the Windows Search charm and type “Visual Studio.” Windows will return a list of search results.
Locate an entry that has “Command Prompt” in the name. The wording that you see will differ depending on your version of Visual Studio. For example, if you use Visual Studio 2013, you will see “Microsoft Visual Studio 2013 Command Prompt.” Click that item. The “Command Prompt” window will open.
Type the following in the “Command Prompt” window:Gacutil –lPress “Enter.” Windows will display a list of the assemblies in the Global Assembly Cache.
Click the “C” icon at the top of the window and select “Edit” and then “Mark.” Hold down your left mouse button and highlight the assembly that you want to remove from the GAC. Click the “C” icon again and select “Edit” and then “Copy.” This copies the assembly name to your clipboard.
Type the following in the window:gacutil –u PASTE ASSEMBLY NAME HERE
Click the “C” icon at the top of the window and select “Edit” then “Mark.” Hold down your left mouse button and highlight “Paste assembly name here.” Click the “C” icon, select “Edit” and then “Paste” to paste the name that you copied. For example, if you copied an assembly named “Calculate,” the final command might look like this:gacutil /u "Calculate,Version=22.214.171.124, Culture=neutral, PublicKeyToken=0123456789ABCDEF"
Press “Enter” to execute the command. Remove other assemblies from the GAC as needed.
Tips & Warnings
- To clean the Global Assembly Cache, you must log on to your computer as an administrator or use an account that has permission to write to the GAC.
- Microsoft suggests not placing assemblies into the Global Assembly Cache if you plan to copy your application to another location using xcopy.
- Microsoft Visual Studio is free software aimed at developers that you can download from the company's website.
References & Resources
- Microsoft MSDN: Working With Assemblies and the Global Assembly Cache
- Microsoft MSDN: How to Uninstall An Assembly From the GAC
- Microsoft MSDN: How to View the Contents of the Global Assembly Cache
- Microsoft MSDN: How to Remove a Domain-specific Language
- Microsoft MSDN: Best Practices for Assembly Loading