为了查询硬件信息,可以使用wmic命令:
查看CPU:wmic cpu get processorid
查看主板:wmic baseboard get serialnumber
查看硬盘:wmic diskdrive get serialnumber
但这里有个小问题:
对于XP系统查不到硬盘ID;
对于win7系统硬盘ID是HEX格式的文本(40位),如:202020202020325a4b415244544;
对于win10系统硬盘ID是字符串格式,如:XYZ1234567890;
对于win8.1系统和win10一样.
对于win8和vista没有裸机测试,所以结果未知.
对于有多块硬盘的系统,wmic列出的硬盘顺序可能是乱的, 目前不知道排序规则,可以肯定的是排在第1个的不一定就是当前系统盘;(猜测可能是BIOS中的启动顺序???)
Windows的物理硬盘序号\\.\PHYSICALDRIVE0-X是按照主板接口顺序(SATA0-X)排序的,PHYSICALDRIVE0不一定是当前启动系统的那块硬盘.
那么如何得知当前系统所在的硬盘呢,并读取硬盘ID呢?
目前看来,可以假定当前系统盘一定是C盘,所以通过读取C盘的磁盘信息,获取C盘所在磁盘的编号,这个编号就是\\.\PHYSICALDRIVEx中的x;
如果想查看该硬盘的信息,可以使用:wmic diskdrive where deviceid='\\\\.\\PHYSICALDRIVEx'