C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法
更新時(shí)間:2017年10月25日 15:03:56 投稿:lqh
這篇文章主要介紹了C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法的相關(guān)資料,希望通過本文能幫助到大家,讓大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
C# 獲取硬件參數(shù)的實(shí)現(xiàn)方法
示例代碼:
private static string GetIdentifier(string wmiClass, string wmiProperty, string wmiMustBeTrue)
{
string result = "";
System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
System.Management.ManagementObjectCollection moc = mc.GetInstances();
foreach (System.Management.ManagementObject mo in moc)
{
if (mo[wmiMustBeTrue].ToString() == "True")
{
//Only get the first one
if (result == "")
{
try
{
result = mo[wmiProperty].ToString();
break;
}
catch
{
}
}
}
}
return result;
}
private static string GetIdentifier(string wmiClass, string wmiProperty)
{
string result = "";
System.Management.ManagementClass mc = new System.Management.ManagementClass(wmiClass);
System.Management.ManagementObjectCollection moc = mc.GetInstances();
foreach (System.Management.ManagementObject mo in moc)
{
//Only get the first one
if (result == "")
{
try
{
result = mo[wmiProperty].ToString();
break;
}
catch
{
}
}
}
return result;
}
// cpu id
GetIdentifier("Win32_Processor", "UniqueId");
//processor id
GetIdentifier("Win32_Processor", "ProcessorId");
//processor name
GetIdentifier("Win32_Processor", "Name");
//Manufacturer
GetIdentifier("Win32_Processor", "Manufacturer");
//BIOS Identifier
private static string GetBiosId()
{
return GetIdentifier("Win32_BIOS", "Manufacturer")
+ GetIdentifier("Win32_BIOS", "SMBIOSBIOSVersion")
+ GetIdentifier("Win32_BIOS", "IdentificationCode")
+ GetIdentifier("Win32_BIOS", "SerialNumber")
+ GetIdentifier("Win32_BIOS", "ReleaseDate")
+ GetIdentifier("Win32_BIOS", "Version");
}
//Main physical hard drive ID
private static string GetDiskId()
{
return GetIdentifier("Win32_DiskDrive", "Model")
+ GetIdentifier("Win32_DiskDrive", "Manufacturer")
+ GetIdentifier("Win32_DiskDrive", "Signature")
+ GetIdentifier("Win32_DiskDrive", "TotalHeads");
}
//Motherboard ID
private static string GetBaseId()
{
return GetIdentifier("Win32_BaseBoard", "Model")
+ GetIdentifier("Win32_BaseBoard", "Manufacturer")
+ GetIdentifier("Win32_BaseBoard", "Name")
+ GetIdentifier("Win32_BaseBoard", "SerialNumber");
}
//Primary video controller ID
private static string GetVideoId()
{
return GetIdentifier("Win32_VideoController", "DriverVersion")
+ GetIdentifier("Win32_VideoController", "Name");
}
//First enabled network card ID
private static string GetMacId()
{
return GetIdentifier("Win32_NetworkAdapterConfiguration", "MACAddress", "IPEnabled");
}
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
C#實(shí)現(xiàn)Excel轉(zhuǎn)PDF時(shí)設(shè)置內(nèi)容適應(yīng)頁面寬度
將Excel轉(zhuǎn)為PDF格式時(shí),通常情況下轉(zhuǎn)換出來的PDF頁面都是默認(rèn)的寬度大小。所以本文提供了C#實(shí)現(xiàn)Excel轉(zhuǎn)PDF時(shí)設(shè)置內(nèi)容適應(yīng)頁面寬度的示例代碼,需要的可以參考一下2022-04-04
C#后臺調(diào)用WebApi接口的實(shí)現(xiàn)方法
本文主要介紹了C#后臺調(diào)用WebApi接口的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06
C#實(shí)現(xiàn)啟動項(xiàng)管理的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)啟動項(xiàng)管理,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以了解一下2022-12-12
C#中關(guān)于zip壓縮解壓幫助類的封裝 附源碼下載
之前一個(gè)同學(xué)問了這個(gè)問題后,看了園子里其它園友的封裝,都很零碎,調(diào)用也不是很方便。所以自己就封裝了一個(gè)zip解壓的類。后來想整理下怕自己忘了。就把壓縮的類也一并封裝了2013-02-02
C#中Convert.ToInt32()和int.Parse()的區(qū)別介紹
Convert是一個(gè)類,繼承自system.Object;int是值類型,在本文為大家詳細(xì)介紹下它與int.Parse()的區(qū)別,感興趣的朋友可以參考下2013-10-10

