You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.9 KiB
95 lines
2.9 KiB
using System.Management;
|
|
|
|
namespace SunlightCentralizedControlManagement_SCCM_.UserClass
|
|
{
|
|
/// <summary>
|
|
/// 获取硬件SN
|
|
/// </summary>
|
|
internal class HardwareSN
|
|
{
|
|
/// <summary>
|
|
/// 获取cpuid
|
|
/// </summary>
|
|
public static string GetCPUSerialNumber()
|
|
{
|
|
try
|
|
{
|
|
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
|
|
string cpuSerialNumber = "";
|
|
foreach (ManagementObject mo in searcher.Get())
|
|
{
|
|
cpuSerialNumber = mo["ProcessorId"].ToString().Trim();
|
|
break;
|
|
}
|
|
return cpuSerialNumber;
|
|
}
|
|
catch
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获取主板id
|
|
/// </summary>
|
|
public static string GetBIOSSerialNumber()
|
|
{
|
|
try
|
|
{
|
|
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_BIOS");
|
|
string biosSerialNumber = "";
|
|
foreach (ManagementObject mo in searcher.Get())
|
|
{
|
|
biosSerialNumber = mo.GetPropertyValue("SerialNumber").ToString().Trim();
|
|
break;
|
|
}
|
|
return biosSerialNumber;
|
|
}
|
|
catch
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获取硬盘id
|
|
/// </summary>
|
|
public static string GetHardDiskSerialNumber()
|
|
{
|
|
try
|
|
{
|
|
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
|
|
string hardDiskSerialNumber = "";
|
|
foreach (ManagementObject mo in searcher.Get())
|
|
{
|
|
hardDiskSerialNumber = mo["SerialNumber"].ToString().Trim();
|
|
break;
|
|
}
|
|
return hardDiskSerialNumber;
|
|
}
|
|
catch
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获取网卡id
|
|
/// </summary>
|
|
public static string GetNetCardMACAddress()
|
|
{
|
|
try
|
|
{
|
|
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapter WHERE ((MACAddress Is Not NULL) AND (Manufacturer <> 'Microsoft'))");
|
|
string netCardMACAddress = "";
|
|
foreach (ManagementObject mo in searcher.Get())
|
|
{
|
|
netCardMACAddress = mo["MACAddress"].ToString().Trim();
|
|
break;
|
|
}
|
|
return netCardMACAddress;
|
|
}
|
|
catch
|
|
{
|
|
return "";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|