private void Form1_Load(object sender, EventArgs e)
{
MessageBox.Show("硬盘:" + C());
MessageBox.Show("CPU:" + A()); }
static string C()
{
System.Management.ManagementClass mc = new System.Management.ManagementClass("Win32_PhysicalMedia");
//网上有提到,用Win32_DiskDrive,但是用Win32_DiskDrive获得的硬盘信息中并不包含SerialNumber属性。 Win32_PhysicalMedia
System.Management.ManagementObjectCollection moc = mc.GetInstances();
if (moc.Count == 0)
{
mc = new System.Management.ManagementClass("Win32_DiskDrive");
//网上有提到,用Win32_DiskDrive,但是用Win32_DiskDrive获得的硬盘信息中并不包含SerialNumber属性。 Win32_PhysicalMedia
moc = mc.GetInstances();
}
string strID = "";
foreach (System.Management.ManagementObject mo in moc)
{
if (mo.Properties["SerialNumber"] != null
&& mo.Properties["SerialNumber"].Value != null)
{
strID += mo.Properties["SerialNumber"].Value.ToString();
}
break;
}
return strID.Trim();
}以上代码在XP,WIN2008,WIN64可以正常
但是在Win2003取不到信息谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货