首先我们知道台式机和笔记本的区别就在于是否有电源
如果有读取电源信息的API提供返回值,是不是就可以断定是笔记本或者台式机了呢?
下面先看一个API
GetSystemPowerStatus function
我们大体上可以知道
这是一个检索系统电源状态的函数,这个状态暗示了系统是直流电还是交流电,还有电池当前的装载清空等等等的呢。
下面我看看参数:
我们可见BatterFlag这个成员,他加载了电池的状况和包含的标志
可知当值为128和255时反应的是没电压或者读取不到电压,
所以可以敲以下代码:
#include <Windows.h>运行结果:
#include <stdio.h>
int main()
{
SYSTEM_POWER_STATUS a;
GetSystemPowerStatus(&a);
if (a.BatteryFlag == 128 && a.BatteryFlag == 255)
{
printf("台式电脑\n");
}
else
{
printf("笔记本电脑\n");
}
return 0;
}