如何在.net 7控制台应用程序中检查笔记本电脑电池状态?



我想在。net 7控制台应用程序中检查电池状态。我怎样才能干净利落地做到这一点呢?

What I tried:

  • 我已经检查了Microsoft Docs中提到的Windows。. net 7中不支持的表单:https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.powerstatus?view=windowsdesktop-7.0.

  • 另一种方法是使用Windows系统信息并提取它,但是在Windows中可能有更好的/内置选项。

对于。net 6+(当然包括。net 7),我编写了一个围绕win32系统电源状态api的包装器。我的代码不仅以一种方便的方式包装GetSystemPowerStatus(它给出了电池和电源状态的快照),而且还允许您订阅操作系统事件,以便在以下情况下通知:

  • 电源变化
  • 电池百分比变化
  • 电池保护程序打开/关闭
  • 当前监视器显示状态变化
  • 盖子打开/关闭
  • 电源方案变化
  • 主监视器打开/关闭
  • 会话显示状态改变
  • 系统进入/离开"模式">
  • 系统未空闲
  • 用户处于/非活动状态

https://www.nuget.org/packages/PowerStatus

相关内容

最新更新