用C语言怎么得到电脑的CPU序列号,硬盘序列号等信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用C语言怎么得到电脑的CPU序列号,硬盘序列号等信息相关的知识,希望对你有一定的参考价值。
获取CPU序列号要使用 汇编指令比较麻烦
static DWORD g_eax; // 存储返回的eax
static DWORD g_ebx; // 存储返回的ebx
static DWORD g_ecx; // 存储返回的ecx
static DWORD g_edx; // 存储返回的edx
void Executecpuid(DWORD veax)
asm("cpuid"
:"=a"(g_eax),
"=b"(g_ebx),
"=c"(g_ecx),
"=d"(g_edx)
:"a"(g_eax));
int isSupport;
void GetSerialNumber(WORD nibble[6])
Executecpuid(1); // 执行cpuid,参数为 eax = 1
isSupport = g_edx & (1<<18); // edx是否为1代表CPU是否存在序列号
if (FALSE == isSupport) // 不支持,返回false
return ;
Executecpuid(3); // 执行cpuid,参数为 eax = 3
memcpy(&nibble[4], &g_eax, 4); // eax为最高位的两个WORD
memcpy(&nibble[0], &g_ecx, 8); // ecx 和 edx为低位的4个WORD
参考技术A http://bbs.csdn.net/topics/90404526
LINUX中,如何查看CPU,MEM,DISK,主板的相关信息?
参考技术A 下面是ubuntu的命令查看CPU信息
cat
/proc/cpuinfo
显示当前硬件信息
sudo
lshw
获取CPU序列号或者主板序列号
#CPU
ID
sudo
dmidecode
-t
4
|
grep
ID
#Serial
Number
sudo
dmidecode
|
grep
Serial
#CPU
sudo
dmidecode
-t
4
#BIOS
sudo
dmidecode
-t
0
#主板:
sudo
dmidecode
-t
2
#OEM:
sudo
dmidecode
-t
11
显示当前内存大小
free
-m
|grep
"Mem"
|
awk
$2'
查看硬盘温度
sudo
apt-get
install
hddtemp
sudo
hddtemp
/dev/sda
以上是关于用C语言怎么得到电脑的CPU序列号,硬盘序列号等信息的主要内容,如果未能解决你的问题,请参考以下文章
VC++如何获取机器码?硬盘序列号、CPU编号、BIOS编号等~
C语言获取硬件信息(CPU序列号,硬盘序列号,网卡IPMAC地址是否插入网线)