用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
'print
$2'
查看硬盘温度
sudo
apt-get
install
hddtemp
sudo
hddtemp
/dev/sda

以上是关于用C语言怎么得到电脑的CPU序列号,硬盘序列号等信息的主要内容,如果未能解决你的问题,请参考以下文章

VC++如何获取机器码?硬盘序列号、CPU编号、BIOS编号等~

批处理 命令获取主板序列号 硬盘序列号 CPU ID?

C语言获取硬件信息(CPU序列号,硬盘序列号,网卡IPMAC地址是否插入网线)

Python获取电脑CPU序列号主板序列号BIOS序列号硬盘序列号列表网卡MAC地址

VC++怎么获取计算机的机器码

怎么查CPU序列号