猿问

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

我可以从我的 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 计算机。有人知道为什么这不起作用吗?


小唯快跑啊
浏览 99回答 1
1回答

慕勒3428872

好吧,由于System.Environment.TickCount是类型int,它具有最大值 int.MaxValue = 2147483647 // milliseconds这是 2147483647 ms =   2147483.647 seconds ~   24.85 days因此,如果您在大约一个月前或更早之前打开工作站,您会因为整数溢出而出现错误的时间(不是Windows 版本)
随时随地看视频慕课网APP
我要回答