PowerShell not loading them DLLs

How to list all of the assemblies loaded in a PowerShell session?

This post was most recently updated on September 19th, 2021.

< 1 min read.

In this article, I’ll do my best to explain how to list all loaded assemblies in a PowerShell session. You see, PowerShell is great at caching assemblies in the weirdest possible way, so ending up with all kinds of mismatches in loaded DLL versions is pretty common. Or just being plainly blocked from loading a new one as you already have a cached reference. I mean, I’ve run into all kinds of issues even if I only use PowerShell occasionally.

Maybe that’s the reason.

Anyhow, below, I’ll share a script that will list all of the currently loaded assemblies.


Table of Contents

Let’s keep this short and sweet. The script below will select all assemblies that are currently loaded, select the ones with a defined location, and display their name, location, and statuses of GAC deployment and full trust in a GridView.

Go ahead and run it in PowerShell:

[System.AppDomain]::CurrentDomain.GetAssemblies() | Where-Object Location | Sort-Object -Property FullName | Select-Object -Property FullName, Location, GlobalAssemblyCache, IsFullyTrusted | Out-GridView

You should get an output somewhat like this:

Output from CurrentDomain.GetAssemblies() formatted nicely in a Out-GridView
Output from CurrentDomain.GetAssemblies() formatted nicely in an Out-GridView

And there you go! You should see all of the assemblies PowerShell has in memory.


5 4 votes
Article Rating
Notify of
most voted
newest oldest
Inline Feedbacks
View all comments