【C#】获取电脑网卡MAC地址
1.获取电脑可用网卡MAC地址
/// <summary>
/// 获取电脑MAC地址
/// </summary>
/// <returns></returns>
public static List<string> GetMacByWmi()
{string key = "SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\";List<string> macList = new List<string>();try{NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();foreach (NetworkInterface adapter in nics){if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet && adapter.GetPhysicalAddress().ToString().Length != 0){string fRegistryKey = key + adapter.Id + "\\Connection";RegistryKey rk = Registry.LocalMachine.OpenSubKey(fRegistryKey, false);if (rk != null){//string fPnpInstanceID = rk.GetValue("PnpInstanceID", "").ToString();//if (fPnpInstanceID.Length > 3 && fPnpInstanceID.Substring(0, 3) == "PCI"){string macAddress = adapter.GetPhysicalAddress().ToString();for (int i = 1; i < 6; i++){macAddress = macAddress.Insert(3 * i - 1, "-");}macList.Add(macAddress);//break;}}}}}catch (Exception ex){}return macList;
}
2.调试结果