【C#】获取电脑网卡MAC地址

1.获取电脑可用网卡MAC地址

csharp 复制代码
/// <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.调试结果

相关推荐
一品人家8 小时前
win32汇编使用GDI+入门教程之九
汇编·windows·win32汇编
.房东的猫11 小时前
ERP(金蝶云星空)开发【安装篇】
c#
小天源13 小时前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067
十五年专注C++开发14 小时前
MinHook:Windows 平台下轻量级、高性能的钩子库
c++·windows·钩子技术·minhook
dongdonglele52116 小时前
ros2环境安装
windows
muinomarts17 小时前
【Windows挂载夸克网盘到本地 AList+Raidrive】
windows
Sharewinfo_BJ18 小时前
PowerBI 2026年1月功能更新|效率升级,体验再优化
windows·microsoft·powerbi
yaoxin52112318 小时前
314. Java Stream API - 使用 Collectors.partitioningBy() 分区元素
java·windows
fie888919 小时前
基于C#的推箱子小游戏实现
开发语言·c#
云小逸19 小时前
【windows核心编程】Windows GDI编程深度解析:从消息循环到双缓冲动画的完整实现
windows