10
A
回答
7
无法获取被禁用的适配器的MAC地址:这是因为获取MAC地址需要查询驱动程序,并且未加载禁用的适配器的驱动程序(source)。
但是,您可以获取当前未连接的适配器的MAC地址。
这里的WMI路由不好,因为它显示的MAC地址为空,表示没有连接的适配器。好消息是,NetworkInterface.GetAllNetworkInterfaces()
路线工作得很好:
// using System.Net.NetworkInformation;
var nics = NetworkInterface.GetAllNetworkInterfaces();
// pick your NIC!
var selectedNic = nics.First();
var macAddress = selectedNic.GetPhysicalAddress().ToString();
1
您可以使用WMI:
public static string GetMACAddress()
{
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
{
MACAddress= mo["MacAddress"].ToString() ;
}
mo.Dispose();
}
return MACAddress;
}
1
请参阅此链接。这里
http://msdn.microsoft.com/en-us/library/system.net.networkinformation.physicaladdress.aspx
的例子显示所有接口的物理地址而不论其操作阶段的。 HTH。
相关问题
- 1. 获取C#中网络适配器的原始MAC地址#
- 2. C++:获取Vista上的网络适配器的MAC地址?
- 3. 从网络适配器读取MAC地址
- 4. 仅使用MAC地址标识网络适配器
- 5. Ping网络并获取mac地址
- 6. 如何从网络上的IP地址获取MAC地址?
- 7. 如何获得网络适配器的IP地址
- 8. 在WinXP上获取C++中无线适配器的mac地址
- 9. 如何可靠地获取计算机的板载网络适配器的MAC地址?
- 10. 获取本地网络中的现场主机MAC地址
- 11. 如何获取使用java的网络设备的MAC地址
- 12. 获取网络用户的IP地址
- 13. Arduino搜索网络的IP地址,并获得MAC地址
- 14. C#使用Mono获取MAC地址(适用于Mac平台)
- 15. 获取MAC地址
- 16. 获取网络上的所有IP和MAC地址
- 17. 如何获取WiFi网络接口的MAC地址?
- 18. 列表网络适配器名称与IPv4地址
- 19. 从默认网关获取mac地址?
- 20. 捕获网络适配器上/下和地址更改事件(Windows,C#)
- 21. 特定MAC地址扫描网络 - Android
- 22. Python扫描网络IP地址和mac
- 23. 区分VMware网络适配器与物理网络适配器 - 或 - 检测虚拟网络适配器
- 24. 使用msft_netadapter获取网络适配器的速度和IP
- 25. 获取适配器带宽和可用IP地址
- 26. 获取多个MAC地址
- 27. 获取MAC地址与Java
- 28. 获取MAC地址C#
- 29. 安卓获取Mac地址
- 30. win32 C API调用禁用网络适配器?
你可以发布你用在适配器启用了代码,然后提到在接听电话时,适配器被禁用不工作? – 2010-06-30 05:40:44