100分求获取能代表计算机唯一的硬件信息
请问如何获取能代表计算机唯一的硬件信息,比如硬盘或cpu,获取它们的序列号,试了一些用wmi的办法,若是同型号的硬件会显示成一样的结果,请问有没有能唯一标识一台计算机的硬件信息,如果有请赐教获取方法!在下不胜感激!请高手指教!分不是问题!
下面是我现在获取硬盘ID的方法:
private string getHardDiskSn()
{
string HDid = " ";
ManagementClass cimobject = new ManagementClass( "Win32_DiskDrive ");
ManagementObjectCollection moc = cimobject.GetInstances();
foreach(ManagementObject mo in moc)
{
HDid += (string)mo.Properties[ "Model "].Value+ ", ";
}
return HDid;
}
但是获取同型号硬件的计算机的结果是相同的,请问该如何解决?
------解决方案--------------------public string DiskDrive
{//硬盘厂商
get
{
string strDiskDrive;
ManagementObjectSearcher opSearch;
ManagementObjectCollection mocSystem;
strDiskDrive= " ";
try
{
opSearch = new ManagementObjectSearcher( "SELECT * FROM Win32_DiskDrive ");
mocSystem=opSearch.Get();
foreach( ManagementObject opInfo in mocSystem)
{
strDiskDrive+= opInfo[ "PNPDeviceID "].ToString().Trim() ;
}
}
catch
{
//TO DO:添加异常处理
}
return strDiskDrive;
}
}
------解决方案--------------------什么都不行,如果你要是有这个需求,数字证书是最好的解决方案
------解决方案--------------------不能绝对实现吧
你可以硬盘id+网卡id
网卡一般来说是唯一的,这样几乎就可以确定啦