Powershell: List .NET library/assembly references and dependencies

Hi,

.NET assemblies often have some dependencies. You can use .NET reflection tolist the dependencies:

1
2
3
4
5
6
7
8
9
10
$ASM=[Reflection.Assembly]::LoadFile("C:\temp\webdriver\lib\netstandard2.0\WebDriver.dll")
$ASM.GetReferencedAssemblies()
 
Version        Name
-------        ----
2.0.0.0        netstandard
8.0.0.0        System.Text.Json
8.0.0.0        Microsoft.Bcl.AsyncInterfaces
4.2.0.1        System.Threading.Tasks.Extensions
8.0.0.0        System.Text.Encodings.Web

When loading and you got an “Retrieve the LoaderExceptions property for more information.” add the Add-Type call into a try/catch block to get a verbose answer:

Eable logging

1
reg add HKLM\Software\Microsoft\Fusion /v EnableLog /d 1 /t REG_DWORD
1
2
3
4
5
6
7
try {
 Add-Type -Path D:\Temp\TestWebDriverNetCore\bin\Debug\net8.0\WebDriver.dll
}
catch
{
 write-host ( $_.Exception.LoaderExceptions)
}

Michael