使用以下代码应该返回当前时间,而是返回错误的时间,如“131956027702298694”。
相关代码是:
long filetime;
GetSystemTimePreciseAsFileTime(out filetime);
并导入方法:
[DllImport("Kernel32.dll", CallingConvention = CallingConvention.Winapi)]
private static extern void GetSystemTimePreciseAsFileTime(out long filetime);
什么可能是错的任何线索?
编辑:正如Jarrod和Hans指出的那样,我错过了它陈述参考时间的部分。出于某种原因,我预计它将成为通常的纪元时间参考。所以它确实回归了正确的时间,而不是我天真的预期。
long filetime;
GetSystemTimePreciseAsFileTime(out filetime);
var whatYoureLookingFor = DateTime.FromFileTimeUtc(filetime);
赠品是函数返回long
。 long
是一个整数。它永远不会像DateTime
。