ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C# 通过VMI接口获取硬件ID

2021-08-08 16:03:06  阅读:157  来源: 互联网

标签:searcher string VMI C# mo ManagementObjectSearcher static HDid ID


添加引用: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;
	}
 
}

标签:searcher,string,VMI,C#,mo,ManagementObjectSearcher,static,HDid,ID
来源: https://www.cnblogs.com/LyShark/p/15115115.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有