关于这个主题有很多想法,但这个是关于Win32 / WinEventProc的dwmsEventTime.
MSDN http://msdn.microsoft.com/en-us/library/windows/desktop/dd373885(v=vs.85).aspx声明它是以毫秒为单位的事件时间,但没有提供进一步的解释.毫秒从哪里来?
以下是该事件返回的示例值:
dwmsEventTime: 1209382650
DateTime.Now: 05/21/2014 16:49:37 (this should be very close to dwmsEventTime)
有谁知道如何将此参数转换为.NET DateTime()?
最佳答案 您可以尝试以下方法:
static DateTime GetDateTimeFromMillisecondNumber(int millisecCount)
{
return DateTime.Now.AddMilliseconds(millisecCount - Environment.TickCount);
}
但请注意,如果系统是从重新启动计算机,因为获得了millisecCount,这将返回垃圾.如果它在与您获得计数的计算机不同的计算机上运行,则相同.
此外,这只是正确的“模49.7天”,即正确的日期和时间可能是49.7天的整数倍,大于或小于我的方法返回的值.