MAC地址用于在网络中唯一标识一个网卡,在网络应用中用来确认网上设备的位置。
查到的获取MAC的几种方式(参考:https://www.cnblogs.com/diulela/archive/2012/04/07/2436111.html),其中通过WMI系统服务读取MAC地址的方式比较常用,方法如下:
///<summary>
/// 通过WMI读取MAC
///</summary>
///<returns></returns>
public static List<string> GetMacByWMI()
{
List<string> macs =new List<string>();
try
{
string mac ="";
ManagementClass mc =new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"])
{
mac = mo["MacAddress"].ToString();
macs.Add(mac);
}
}
moc =null;
mc =null;
}
catch
{
}
return macs;
}
经测试,这种方

本文介绍了在网络断开连接的情况下,如何使用C#编程获取本机MAC地址的问题。通常方法通过WMI服务获取MAC地址可能失败,但通过改进的NetworkInterface方式,即使在断网条件下也能确保获取MAC地址,以满足如MQ通信等场景的需求。通过排序多个网卡的MAC地址,选择最大或最小值来确保获取到稳定的MAC标识。
最低0.47元/天 解锁文章
1164

被折叠的 条评论
为什么被折叠?



