问题描述
您好,
为什么我们需要使用c#.net获取MAC地址的LAN网络连接?
当我禁用LAN网络时,没有获得MAC地址,为什么?
我想获得没有LAN网络的MAC地址,是否可能?
我也使用过两个代码: -
首先: -
public static String GetMACAddress()
{
#region获取MAC地址
尝试
{
ManagementClass mc = new ManagementClass( Win32_NetworkAdapterConfiguration);
ManagementObjectCollection moc = mc.GetInstances();
string MACAddress = String.Empty;
foreach(ManagementObject mo in moc)
{
if(MACAddress == String.Empty)//仅从第一张卡返回MAC地址
{
if((bool)mo [IPEnabled] == true)MACAddress = mo [MacAddress]。ToString();
}
mo.Dispose();
}
MACAddress = MACAddress.Replace(:,);
返回MACAddress;
}
catch(例外情况)
{
抛出新例外(ex .Message);
}
#endregion
}
第二名: -
public string GetMACAddress()
{
NetworkInterface [] nics = NetworkInterface.GetAllNetworkInterfaces();
字符串 sMacAddress = 字符串 .Empty;
foreach (NetworkInterface adapter in nics)
{
if (sMacAddress == String .Empty) // 仅从第一张卡返回MAC地址
{
IPInterfaceProperties properties = adapter.GetIPProperties();
sMacAddress = adapter.GetPhysicalAddress()。ToString();
}
} return sMacAddress;
}
但我的目的不是解决。
请帮帮我。
先谢谢。
Ankit Agarwal
软件工程师
Hello,
Why we need LAN network connectivity for Get MAC Address using c# .net?
When i disabled LAN network so, did not get MAC Address, Why?
I want to Get MAC Address without LAN Network, is it Possible?
I have used both code also:-
First:-
public static String GetMACAddress()
{
#region Get MAC Address
try
{
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
string MACAddress = String.Empty;
foreach (ManagementObject mo in moc)
{
if (MACAddress == String.Empty) // only return MAC Address from first card
{
if ((bool)mo["IPEnabled"] == true) MACAddress = mo["MacAddress"].ToString();
}
mo.Dispose();
}
MACAddress = MACAddress.Replace(":", "");
return MACAddress;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
#endregion
}
Second:-
public string GetMACAddress() { NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces(); String sMacAddress = string.Empty; foreach (NetworkInterface adapter in nics) { if (sMacAddress == String.Empty)// only return MAC Address from first card { IPInterfaceProperties properties = adapter.GetIPProperties(); sMacAddress = adapter.GetPhysicalAddress().ToString(); } } return sMacAddress; }
But my purpose is not solving.
Please help me.
Thanks in Advance.
Ankit Agarwal
Software Engineer
这篇关于为什么我们需要使用c#.net获取MAC地址的网络连接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!