通过Visual Studio读取Win7和Win10的Windows启动时间

时间:2019-03-14 12:54:00

标签: c# wpf

我能够从Win7计算机上读取开始时间。

public static DateTime WindowsStartTime()
{
    DateTime dt = new DateTime();

    try
    {
        dt = DateTime.Now - new TimeSpan(0, 0, 0, 0, System.Environment.TickCount);
        return dt;
    }
    catch (Exception ex)
    {
        return dt;
    }
}

不幸的是,此代码在Win10计算机上不起作用。 有人知道为什么这不起作用吗?

1 个答案:

答案 0 :(得分:2)

好吧,由于System.Environment.TickCount的类型为int,因此它具有最大值

 int.MaxValue = 2147483647 // milliseconds

 2147483647 ms = 
 2147483.647 seconds ~ 
 24.85 days

因此,如果您在一个月或更早之前打开工作站,则会由于整数溢出(不是Windows版本而出现错误时间) >)