dll の .NET Framework バージョンを確認する 質問する

dll の .NET Framework バージョンを確認する 質問する

.NET Framework に対してコンパイルされ、展開された古い dll があります。どのバージョンの .NET Framework に対してコンパイルされたのかわかりません。この dll がどのバージョンの .NET Framework に対してコンパイルされたのかをどうやって確認すればよいのでしょうか。ソース コードは Visual Studio 2008 にアップグレードされ、.NET Framework バージョン 3.5 に変更されたと思われるため、信頼できません。

ベストアンサー1

PowerShell では、次のコマンドを使用してターゲット ランタイムを取得できます。

$path = "C:\Some.dll"
[Reflection.Assembly]::ReflectionOnlyLoadFrom($path).ImageRuntimeVersion

これをPowerShellに適応させたのはベン・グリスウォルドの答え

Visual Studio で指定されているターゲット フレームワークのバージョンを確認するには、次のコマンドを使用します。

$path = "C:\Some.dll"
[Reflection.Assembly]::ReflectionOnlyLoadFrom($path).CustomAttributes |
Where-Object {$_.AttributeType.Name -eq "TargetFrameworkAttribute" } | 
Select-Object -ExpandProperty ConstructorArguments | 
Select-Object -ExpandProperty value

次のようなものが得られるはずです

.NETFramework、バージョン=v4.5.2

おすすめ記事