C# 编译.NET版本程序集时使用了(目标版本)

C# 编译.NET版本程序集时使用了(目标版本),c#,.net,visual-studio,C#,.net,Visual Studio,很久很久以前,当您通过文件资源管理器查看文件属性时,我们常常看到编译库(dll)或可执行文件时使用的.net版本。 现在你不能,那么检查它现在使用的版本的最快方法是什么? 我一直在使用各种工具,比如ILSpy,但我需要一些易于安装的工具,比如reg条目,这样我就可以右键单击并查看版本 我们在多个服务器上加载了大量文件,包括客户端服务器。有时我们需要问一下您正在运行的是什么版本,目前证明很难 有什么想法吗?一个快速的方法(这不是我标记的副本)是使用文本编辑器编辑.dll并搜索以下阶段“.NETFr

很久很久以前,当您通过文件资源管理器查看文件属性时,我们常常看到编译库(dll)或可执行文件时使用的.net版本。 现在你不能,那么检查它现在使用的版本的最快方法是什么? 我一直在使用各种工具,比如ILSpy,但我需要一些易于安装的工具,比如reg条目,这样我就可以右键单击并查看版本

我们在多个服务器上加载了大量文件,包括客户端服务器。有时我们需要问一下您正在运行的是什么版本,目前证明很难

有什么想法吗?

一个快速的方法(这不是我标记的副本)是使用文本编辑器编辑.dll并搜索以下阶段“.NETFramework,Version=v”


v
旁边,您将获得构建程序集所依据的版本号(在我的例子中是4.6.1)。

确实如此,谢谢Adriani6!没问题,也看看下面我的答案。这不是我发现的复制品,但可能有用。如果不是,我将很高兴地删除..NET程序集的目标是运行时版本,而不是框架版本。因此,您将看到2.0.50727或v4.0.30319,即使您的目标是.NET 3.5或4.03。然而,他们无法在.NET4.5中保持这种可靠性,它有相当大的内部更改来支持WinRT。因此,现在的编译器也会发出一个[TargetFrameworkAttribute],它会为您提供框架版本,任何半正常的反编译器都可以向您展示。