Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在脱机和联机期间获得了不同的MAC地址?_C#_Mac Address - Fatal编程技术网

C# 在脱机和联机期间获得了不同的MAC地址?

C# 在脱机和联机期间获得了不同的MAC地址?,c#,mac-address,C#,Mac Address,我正在编写一个部分,其中软件需要获取当前PC的MAC地址,并发现此解决方案也适用于脱机: 我使用方法1获得了相同的MAC地址,但在使用方法2时,离线和在线获得了不同的地址,任何人都可以向我解释为什么?仅供参考,我的笔记本电脑只有一张网卡 方法2: public static string GetMACAddress2() { NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfac

我正在编写一个部分,其中软件需要获取当前PC的MAC地址,并发现此解决方案也适用于脱机:

我使用方法1获得了相同的MAC地址,但在使用方法2时,离线和在线获得了不同的地址,任何人都可以向我解释为什么?仅供参考,我的笔记本电脑只有一张网卡

方法2:

 public static string GetMACAddress2()
        {
            NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
            String sMacAddress = string.Empty;
            foreach (NetworkInterface adapter in nics)
            {
                if (sMacAddress == String.Empty)// only return MAC Address from first card  
                {
                    sMacAddress = adapter.GetPhysicalAddress().ToString();
                }
            }
            return sMacAddress;
        }
我的结果是:

Online:
Method1: C85B76FD53xx
Method2: 6A00E3D94Exx

Offline:
Method1: C85B76FD53xx
Method2: C85B76FD53xx

谢谢。

在命令/powershell提示符下,运行
ipconfig/all
查看您有哪些适配器,您可能有离线消失的虚拟适配器您想获取当前电脑的MAC地址吗?MAC地址属于设备,即网络接口(卡),在本例中,不属于PC。如果您需要特定的MAC地址,还应检查网络接口名称/标识符。您的机器将有多个网络接口,其中一些将有一个MAC地址。NIC添加到集合的顺序不相关。WMI和.Net类的工作方式不同。在命令/powershell提示符下,运行
ipconfig/all
查看您有哪些适配器,您可能有离线消失的虚拟适配器要获取当前PC的MAC地址吗?MAC地址属于设备,即网络接口(卡),在本例中,不属于PC。如果您需要特定的MAC地址,还应检查网络接口名称/标识符。您的机器将有多个网络接口,其中一些将有一个MAC地址。NIC添加到集合的顺序不相关。WMI和.Net类的工作方式不同。