C# 获取windows 系统开关机时间

关机时间,引用:https://www.coder.work/article/1589448

public static DateTime GetLastSystemShutdown()

{

string sKey = @"System\CurrentControlSet\Control\Windows";

Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(sKey);

string sValueName = "ShutdownTime";

byte[] val = (byte[])key.GetValue(sValueName);

long valueAsLong = BitConverter.ToInt64(val, 0);

return DateTime.FromFileTime(valueAsLong);

}

开机时间:

public static DateTime GetStartTime()

{

DateTime n = DateTime.Now;

foreach (var o in new ManagementObjectSearcher("SELECT LastBootUpTime FROM Win32_OperatingSystem").Get())

{

var obj = (ManagementObject)o;

var LastBootUpTime = obj.GetPropertyValue("LastBootUpTime").ToString();

LastBootUpTime = LastBootUpTime.Split('.').FirstOrDefault();

System.IFormatProvider format = new System.Globalization.CultureInfo("zh-CN", true);

//string strDateFormat = "yyyyMMdd";

n = DateTime.ParseExact(LastBootUpTime, "yyyyMMddHHmmss", format, DateTimeStyles.AllowWhiteSpaces);

break;

}

return n;

}

相关推荐
钢铁男儿2 小时前
C# 表达式和运算符(表达式和字面量)
开发语言·c#
林鸿群3 小时前
C#子线程更新主线程UI及委托回调使用示例
开发语言·c#
o0向阳而生0o3 小时前
63、.NET 异常处理
c#·.net·异常处理
SteveDraw6 小时前
C++动态链接库封装,供C#/C++ 等编程语言使用——C++动态链接库概述(总)
开发语言·c++·c#·封装·动态链接库
nenchoumi31196 小时前
AirSim/Cosys-AirSim 游戏开发(一)XBox 手柄 Windows + python 连接与读取
windows·python·xbox
Kookoos6 小时前
性能剖析:在 ABP 框架中集成 MiniProfiler 实现性能可视化诊断
后端·c#·.net·abp vnext·miniprofiler
love530love7 小时前
【PyCharm必会基础】正确移除解释器及虚拟环境(以 Poetry 为例 )
开发语言·ide·windows·笔记·python·pycharm
阿翰8 小时前
自动 GitHub Readme 20 种语言翻译平台 - OpenAiTx 开源免费
c#·.net
黄交大彭于晏8 小时前
发送文件脚本源码版本
java·linux·windows
枫叶kx12 小时前
1Panel运行的.net程序无法读取系统字体(因为使用了docker)
c#