我有一个从.NET应用程序崩溃的minidump。有没有办法知道使用Windbg或其他工具的故障机器(生成故障转储)的CLR版本(例如mscorwks.dll的版本)?
答案 0 :(得分:14)
在WinDbg中:最简单的方法是使用!eeversion
命令,但是如果您需要其他信息,可以使用lm
命令和运行时模块的v
详细选项{ {1}}。如果您使用的是.NET 4,则运行时称为mscorwks
,因此在这种情况下您需要相应地更改命令。
clr
答案 1 :(得分:4)
!EEVersion应该提供CLR版本。
答案 2 :(得分:3)
在WinDbg中详细说明:
>lm v
............. (lots of modules).......
687d0000 68d06000 System_Xml_ni (deferred)
Image path: C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Xml\38b9d09539b67b08ee996db6c71f8a9b\System.Xml.ni.dll
Image name: System.Xml.ni.dll
Has CLR image header, track-debug-data flag not set
Timestamp: Mon Oct 06 20:43:49 2008 (48EADAF5)
CheckSum: 00000000
ImageSize: 00536000
File version: 2.0.50727.3074
Product version: 2.0.50727.3074
File flags: 0 (Mask 3F)
File OS: 4 Unknown Win32
File type: 2.0 Dll
File date: 00000000.00000000
Translations: 0409.04b0
CompanyName: Microsoft Corporation
ProductName: Microsoft® .NET Framework
InternalName: System.Xml.dll
OriginalFilename: System.Xml.dll
ProductVersion: 2.0.50727.3074
FileVersion: 2.0.50727.3074 (QFE.050727-3000)
FileDescription: .NET Framework
LegalCopyright: © Microsoft Corporation. All rights reserved.
Comments: Flavor=Retail
或者,在Visual Studio中加载转储并使用Debug | Windows |模块工具窗口显示部分信息。
两个不同.Net版本的示例,使用clr.dll的版本信息:
.Net 4.0(.x?)
Image name: clr.dll
Timestamp: Thu Mar 18 21:39:07 2010 (4BA21EEB)
...
File version: 4.0.30319.1
Product version: 4.0.30319.1
.Net 4.5.2
Image name: clr.dll
Timestamp: Fri Nov 07 20:09:21 2014 (545CA861)
...
File version: 4.5.27.0
Product version: 4.0.30319.0