我正在用C#开发窗口应用程序。我使用以下代码获取MAC地址
private void Form1_Load(object sender, EventArgs e)
{
lbl1.Text = "Hi";
string macAddresses = "";
foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces())
{
if (nic.OperationalStatus == OperationalStatus.Up)
{
macAddresses += nic.GetPhysicalAddress().ToString();
break;
}
}
lbl1.Text = macAddresses;
}
在上面的代码中,我没有得到主LAN卡的MAC地址。在我的计算机中,我创建了两个环回适配器A& B.我有一张物理Lan卡。现在我想获得主物理Lan卡的MAC地址而不是A& B.怎么做?能否请您提供我可以解决上述问题的任何代码或链接?
答案 0 :(得分:3)
将条件更改为:
// instead of nic.OperationalStatus == OperationalStatus.Up
nic.NetworkInterfaceType != NetworkInterfaceType.Loopback
或者使用它:
nic.NetworkInterfaceType == NetworkInterfaceType.Ethernet || nic.NetworkInterfaceType == etworkInterfaceType.FastEthernetFx || nic.NetworkInterfaceType == NetworkInterfaceType.FastEthernetT
答案 1 :(得分:0)
如果您使用localhost作为目标IP地址,我想您可以使用此链接...
How to get the Mac address