返回「计算机、信息技术与工程」

c#获取的mac地址为00:00:00:00:00:0000EE是为什么

c 获取的mac地址为00:00:00:00:00:0000EE是为什么

更多
Markdown 结构化数据
本文目录 3 个章节

c#获取的mac地址为00:00:00:00:00:0000EE是为什么

note · 我的 UWA 问答 本文收录我在 UWA 问答发表的公开回答。问题内容归原提问者;回答保留当时语境,技术结论可能受 Unity 版本、平台和项目条件限制。

问题

c#获取的mac地址为00:00:00:00:00:0000EE是为什么,代码是这样写的

大部分是能够获取正常的mac地址的,但是会有个别机子获取的是0的情况

public static string GetWindowsMac()

{

        NetworkInterface[] Net = NetworkInterface.GetAllNetworkInterfaces();

        string macs = null;

        ;

        foreach (NetworkInterface item in Net)

        {

            if (!string.IsNullOrEmpty(item.GetPhysicalAddress().ToString()))

            {

                macs = item.GetPhysicalAddress().ToString();

                for (int i = 1; i < 6; i++)

                {

                    macs = macs.Insert(3 * i - 1, ":");

                }

            }

        }

        return macs;

}
  • 提问者:程序猿小Y
  • 提问时间:2021-07-16 23:13:40

我的回答

首先这个脚本不太合理,GetAllNetworkInterfaces会获取到多个网络接口的信息,foreach 每次都修改变量macs,最终只能返回 最后一个网络接口的mac地址。

可以把所有接口的mac地址都打出来试试。用命令行 ipconfig /all 也可以查看。

如果系统的网络接口地址确实有问题,可以看看是不是网络驱动的问题,升级或重装驱动试试。

  • 回答时间:2021-08-04 09:32:59
  • 最后更新:2021-08-04 09:32:59
  • 采纳状态:未采纳

来源与关系