nim调用GetSystemPowerStatus判断笔记本电脑是否接通外接电源


title: nim调用GetSystemPowerStatus判断笔记本电脑是否接通外接电源
tags:nim,winapi,dll


转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接。否则拒绝转载。

nim调用GetSystemPowerStatus判断笔记本电脑是否接通外接电源:

type
    SYSTEM_POWER_STATUS* {.final, pure.} = object
        ACLineStatus*: int8
        BatteryFlag*: int8
        BatteryLifePercent*: int8
        Reserved1*: int8
        BatteryLifeTime*: int32
        BatteryFullLifeTime*: int32

var test:SYSTEM_POWER_STATUS

proc getPowerStatus*(stat:var SYSTEM_POWER_STATUS):int {.stdcall, dynlib:"kernel32", 
    importc:"GetSystemPowerStatus", discardable.}

test.getPowerStatus
echo test
echo "电池电量:",test.BatteryLifePercent

if test.ACLineStatus == 0:
    echo "笔记本,断电了"
elif test.ACLineStatus == 1:
    echo "笔记本,接通外接电源中"
else:
    echo "我觉得我可能是运行在一台台式电脑上了。"

代码抄自:
https://github.com/nim-lang/oldwinapi

codegay
2017年12月01日 20时26分02秒

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,098评论 25 709
  • 去年,我从市里的一所初中转学到我现在所在的学校,这是一所建在村里的初中,规模不大,学生也不多。整个学校就像是一大户...
    倚木阅读 3,688评论 0 0
  • 在学习Dubbo的时候需要学习Netty的流程等,在此做一个简单的入门学习。Dubbo中使用的是Netty3,所以...
    加大装益达阅读 3,680评论 0 0