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;

}

相关推荐
Traced back4 小时前
怎么用 Modbus 让两个设备互相通信**,包含硬件接线、协议原理、读写步骤,以及 C# 实操示例。
开发语言·c#
vistaup4 小时前
windows git 更新当前目录下所有的文件(非递归)
windows·git
一个帅气昵称啊4 小时前
基于.NET AgentFramework开发OpenClaw智能体框架
人工智能·自然语言处理·c#·.net·openclaw
唐青枫5 小时前
C#.NET SpinLock 深入解析:自旋锁原理、使用边界与性能取舍
c#·.net
HelloTonyGo7 小时前
个人游戏笔记本免费“养龙虾”(Win10+WSL2+OpenClaw 部署与配置指南)
windows·ubuntu·wsl2·openclaw
待续3017 小时前
OpenClaw 安装及使用教程(Windows / macOS / Linux)
linux·windows·macos
sthnyph9 小时前
MySQL 8.0在windows环境安装及配置
windows·mysql·adb
深念Y9 小时前
Windows 11 23H2 搜狗输入法卸载后任务栏严重卡顿问题分析
windows
AI-小柒11 小时前
DataEyes 聚合平台 + Claude Code Max 编程实战
android·开发语言·人工智能·windows·python·macos·adb
luyun02020212 小时前
Word题库转换,吾爱出品
windows·word·figma