Dot-Net

在.NET DateTime 結構中解釋 UInt64 dateData?

  • May 8, 2015

在通過 SOS.dll 查看調試器中的 DateTime 結構時,我看到…

 0:096> !DumpVC 000007feed1ddff8  000000028036d890 
 Name:        System.DateTime
 MethodTable: 000007feed1ddff8
 EEClass:     000007feecbed6b0
 Size:        24(0x18) bytes
 File:          C:\Windows\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.  dll
 Fields:
               MT    Field   Offset                 Type VT     Attr            Value Name
 000007feed1e1158  40000d6        0        System.UInt64  1 instance 5246421159766325152 dateData

如何將“5246421159766325152”解釋為日期時間?有沒有辦法可以從這個值創建一個 DateTime 來獲得人類可讀的版本?

DateTime.FromBinary(5246421159766325152)

!Psscor2.PrintDateTime OBJADDR 或!sosex.mdt System.DateTime DATAADDR.

引用自:https://stackoverflow.com/questions/10759287