How do I manually install an assembly into the Global Assembly Cache?

book

Article ID: 181876

calendar_today

Updated On:

Products

Management Platform (Formerly known as Notification Server) Inventory Solution

Issue/Introduction

 

Resolution

Question

How do I manually install an assembly - DLL file - into the Global Assembly Cache?

Answer
To manually install a new DLL file into the GAC (NS6 physical path is %windir%\assembly\gac, NS7 uses %windir%\assembly\gac_msil):

  1. Stop all Altiris services
  2. Stop IIS
  3. Open Windows Explorer and navigate to the %WINDIR%\Assembly folder (this is not the physical path, but is a view into the combined GACs)
  4. Copy and Paste (Drag and drop) the new DLL file into the Assembly folder

Occassionally, this may encounter an error (due to the file being locked by some process that was not shutdown) which Explorer does not report back. Usually if the file is locked Explorer will tell you, but there are times where it does not. To workaround this:

  • Enable viewing of the GAC by creating: HKLM > Software > Microsoft > Fusion > DisableCacheViewer:DWORD = 1
  • Stop the Altiris Services
  • Stop the IIS Services
  • Copy the file to the %WINDIR%\Assembly\ folder
  • Install the file in the GAC using the command line:
    %WINDIR%\Microsoft.NET\Framework\v1.1.4322\gacutil.exe /f /i <path to assembly>