Listing all of the assemblies loaded in a PowerShell session?
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.
Solution
Table of Contents
Table of Contents
Let's keep this short and sweet.
Time needed: 2 minutes.
How to list all of the assemblies loaded in a PowerShell session?
Fire up PowerShell (PS 5+ should work just fine)
Run the script in PowerShell
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.
[System.AppDomain]::CurrentDomain.GetAssemblies() | Where-Object Location | Sort-Object -Property FullName | Select-Object -Property FullName, Location, GlobalAssemblyCache, IsFullyTrusted | Out-GridView
Observe the output!
You should get an output somewhat like this:
Output from CurrentDomain.GetAssemblies() formatted nicely in an Out-GridViewYou should see all of the assemblies PowerShell has in memory!
And there you go!
Did this work for you? Not what you wanted? Let me know in the comments -section below!
Comments