木子屋 Dnawo's BLOG

C#使用WMI获取本机网卡MAC地址示例

👤 dnawo 📅 2014-07-08 👁 6477 👍 0 💬 0 🔄 来源:本站原创
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * FROM Win32_NetworkAdapterConfiguration");
ManagementObjectCollection collection = searcher.Get();
foreach (ManagementObject item in collection)
{
    if (item["IPEnabled"].ToString() == "True")
    {
        Console.WriteLine(item["MacAddress"]);
    }
}

说明:这种方法获取不到未连接和已禁用的网卡MAC地址。

NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in nics)
{
    string mac = adapter.GetPhysicalAddress().ToString();
    if (mac != null && mac.Length == 12)
    {
        Console.WriteLine(mac);
    }
}

说明:这种方法获取不到已禁用的网卡MAC地址。

参考资料

[1].C#获取IP及MAC地址:http://www.cnblogs.com/deckard/archive/2009/04/07/1430807.html
[2].C#获取MAC地址方法(补充版):http://blog.csdn.net/yysyangyangyangshan/article/details/7091783
[3].Win32_NetworkAdapterConfiguration:http://msdn.microsoft.com/en-us/library/aa394217.aspx
[4].WMI使用的WIN32_类库名:http://blog.csdn.net/fer_ba/article/details/4280983
[5].WMI使用:http://blog.163.com/gaoguangtao_love/blog/static/3848371520105189051916/
[6].WMI问题答案集锦(C#) :http://blog.sina.com.cn/s/blog_53d599430100owxm.html

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 google.com.hk迁移出香港了? 下一篇 → 我家宝宝不会哭----分享在美国养孩子的妈妈经[转]