使用C#獲取MAC地址
在一些需要注冊(cè)碼的軟件中,常常使用電腦的MAC地址作為加密串的基礎(chǔ)。在這篇文章中,我將介紹如何使用C#獲取本機(jī)的MAC地址(物理地址)。 添加引用和命名空間 首先,我們需要添加.Net引用 ,并在
在一些需要注冊(cè)碼的軟件中,常常使用電腦的MAC地址作為加密串的基礎(chǔ)。在這篇文章中,我將介紹如何使用C#獲取本機(jī)的MAC地址(物理地址)。
添加引用和命名空間
首先,我們需要添加.Net引用 ,并在代碼中添加命名空間 using ; 這樣才能使用相關(guān)的類(lèi)和方法。
建立CIM管理類(lèi)
接下來(lái),我們需要建立一個(gè)CIM管理類(lèi) ManagementClass,代碼如下:
ManagementClass mc new ManagementClass("Win32_NetworkAdapterConfiguration");
Win32_NetworkAdapterConfiguration 是WMI中的一個(gè)Win32類(lèi)。
獲取WMI實(shí)例集合
然后,我們需要獲取WMI實(shí)例的集合,代碼如下:
ManagementObjectCollection moc ();
遍歷集合獲取MAC地址
最后,我們可以通過(guò)遍歷集合獲取MAC地址,代碼如下:
string mac "";
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"] true)
{
mac mo["MacAddress"].ToString();
break;
}
}
這里只是獲取到了一個(gè)可用的MAC地址,讀者可以根據(jù)需要進(jìn)行修改或刪除相關(guān)語(yǔ)句。
封裝成方法
如果需要多次使用獲取MAC地址的代碼,我們可以將其封裝成一個(gè)方法:
public static string GetNetworkAdpaterID()
{
try
{
string mac "";
ManagementClass mc new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc ();
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"] true)
{
mac mo["MacAddress"].ToString();
break;
}
}
moc null;
mc null;
return ();
}
catch (Exception e)
{
return "獲取失敗";
}
}
這樣就可以通過(guò)調(diào)用 GetNetworkAdpaterID() 方法來(lái)獲取MAC地址了。