Skip to main content

Install DLL in GAC - Windows 2008/2012 (Using Powershell, No GacUtil.exe)

If you want to install a DLL in the GAC and do not have the GACUtil.exe available. Powershell is properly the easiest way to procede.

Before Powershell you would properly just drag the DLL file into the C:\Windows\Assembly but this option is usually not available anymore.

Powershell - Add DLL to GAC

So to install a DLL file in the GAC simply execute the below Powershell script. Remember you migth want to run the Powershell prompt as an administrator.
[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")            
$publish = New-Object System.EnterpriseServices.Internal.Publish            
$publish.GacInstall("c:\temp\MyDllFile.dll")            
iisreset

The first line adds a reference to the assembly we need to be able to mange the GAC.
The second and third lines retrives the GAC object and publish a new DLL file to it.
The last line resets the Internet Information Services. This is only needed if your DLL file is used in a website hosted in the IIS.

Powershell - Remove DLL from GAC

If you need to remove a DLL file from the GAC there is also a script for this.
[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")            
$publish = New-Object System.EnterpriseServices.Internal.Publish            
$publish.GacRemove("c:\temp\MyDllFile.dll")            
iisreset

Comments

  1. great post, and really helpful, however sometimes the above commands dose nothing, install or remove doesn't do any changes on the GAC, what would be the problem?

    ReplyDelete
  2. This doesnot work for win server 2008, do we need to change any parameter?

    ReplyDelete

Post a Comment

Popular posts from this blog

Azure DevOps - Gantt Chart

It's been a while since my last post - in the past couple of weeks I have played around with some videos of topics I find interesting. One of these topics are a very cool way of displaying a Gantt Chart upon your Azure DevOps board's. Check it out here!

How to integrate MS Planner in MS Roadmap (Gantt chart)

Hi, It is no secret i am exited about the new Roadmap service from Microsoft. Even though only limited features have been released I beleive Roadmap and the new Project home have great potential. Anyway, check out my video on how to connect Planner into Roadmap with Microsoft Flow.

Project online sync to Outlook

Project online sync to Outlook Ever since the "Sync to Outlook" button have been disabled I have looked for other ways to do this. The other day I found a way for a project manager to do this - it requires a little bit of configuration though. In the following we will create a calendar for one project and have the team members connect to that project. SharePoint calendar On your project site create a new calendar. Give it the same name as your project. Flow -> As a project manager go to Flow and create a new blank flow: https://emea.flow.microsoft.com/  Insert a new trigger of the type "When a new task is created". Type in your PWA URL. Insert a new condition and configure it match your project name. If the condition is not met let the flow exit without any further steps. If the condition is met configure the flow to create a new SharePoint list item and chose your calendar as the list. Set the start, end and title t