我有C#应用程序,当我做了更改,我得到错误消息:
WindowsFormsApplication1.exe中发生类型为"System.TypeLoadException"的未经处理的异常
补充信息:无法加载类型
来自程序集"TIProData,版本= 1.0.0.0,区域性=非特定,公钥标记= null"的"TradeIdeas. TIProData. OddsMakerColumnConfiguration"。
这个消息说dll(TIProData)的版本号是1.0.0.0。我想有一个更高的版本可用。我如何知道我的机器上的dll的版本号?
5条答案
按热度按时间wr98u20j1#
可以使用Reflector、ILDASM或ILSpy获取程序集版本。
您通常可以在
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\ildasm.exe
中找到ILDASM(其中v8.1A
是安装的Windows SDK的版本)。插图:
反射器:
ktca8awb2#
有几种方法可以做到这一点:
kxxlusnw3#
如果您知道属于程序集的Class,则可以使用GetTypeInfo
字符串ver=运行时版本。版本;
此示例适用于https://developers.de/blogs/damir_dobric/archive/2017/06/27/how-to-deal-with-assembly-version-in-net-core.aspx中的.Net Core
zsbz8rwp4#
你可以从一个小的util应用程序中使用
AssemblyName.GetAssemblyName(string path)
。更多详情请参见MSDN。
am46iovg5#
来自Powershell(PSCore):
$assembly = [System.Reflection.Assembly]::LoadFrom("$pwd\System.Memory.dll")
除了$assembly.FullName
之外,您可以从对象中拾取任何其他 prop 。