添加引用:

using System.Management;

代码:

class HardWareInfo
{
	/// <summary>
	/// 获取 CPUID , 更多 cpu 信息参考
	/// </summary>
	/// <returns> cpuid </returns>
	public static string GetCpuId()
	{
		string cpuid = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_Processor");
			foreach (ManagementObject mo in searcher.Get())
			{
				cpuid = mo.Properties["ProcessorId"].Value.ToString();

				break;
			}
		}
		catch
		{

		}

		return cpuid;
	}

	/// <summary>
	/// 获取硬盘序列号
	/// </summary>
	/// <returns> 硬盘序列号 </returns>
	public static string GetDiskSerialNumber()
	{
		string HDid = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_DiskDrive");
			foreach (ManagementObject mo in searcher.Get())
			{
				HDid = (string)mo.Properties["SerialNumber"].Value;

				break;
			}
		}
		catch
		{

		}

		return HDid;
	}
	
	/// <summary>
	/// 获取硬盘产品型号
	/// </summary>
	/// <returns>硬盘产品型号</returns>
	public static string GetDiskModelNumber()
	{
		string HDid = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_DiskDrive");
			foreach (ManagementObject mo in searcher.Get())
			{
				HDid = (string)mo.Properties["Model"].Value;

				break;
			}
		}
		catch
		{

		}
		
		return HDid;
	}

	/// <summary>
	/// 获取 Mac 地址 ,更多网卡信息参考 :
	/// </summary>
	/// <returns> Mac 地址 </returns>
	public static string GetMacAddress()
	{
		string mac = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_NetworkAdapterConfiguration");
			foreach (ManagementObject mo in searcher.Get())
			{
				if ((bool)mo["IPEnabled"] == true)
				{
					mac = mo["MacAddress"].ToString();

					break;
				}
			}
		}
		catch
		{

		}
		
		return mac;
	}

	/// <summary>
	/// 获取 ip 地址
	/// </summary>
	/// <returns> ip 地址 </returns>
	public static string GetIpAddress()
	{
		string st = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_NetworkAdapterConfiguration");
			foreach (ManagementObject mo in searcher.Get())
			{
				if ((bool)mo["IPEnabled"] == true)
				{
					System.Array ar;
					ar = (System.Array)(mo.Properties["IpAddress"].Value);
					st = ar.GetValue(0).ToString();

					break;
				}
			}
		}
		catch
		{

		}
		
		return st;
	}

	/// <summary>
	/// 获取主板序列号
	/// </summary>
	/// <returns> 主板序列号 </returns>
	public static string GetBIOSSerialNumber()
	{
		string sBIOSSerialNumber = "";

		try
		{
			ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_BIOS");
			foreach (ManagementObject mo in searcher.Get())
			{
				sBIOSSerialNumber = mo.GetPropertyValue("SerialNumber").ToString().Trim();

				break;
			}
		}
		catch
		{

		}

		return sBIOSSerialNumber;
	}

}

相关文章: