首页 新闻 搜索 专区 学院

获取MAC地址

0
悬赏园豆:10 [已解决问题] 解决于 2011-01-06 17:38

我在获取MAC地址是出现"未处理COMException"异常是怎么回事,下面是我的代码:string mac = null;
            ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection queryCollection = query.Get();
            foreach (ManagementObject mo in queryCollection)
            {
                if (mo["IPEnabled"].ToString() == "True")
                    mac = mo["MacAddress"].ToString();
            }
            return (mac);

异常出现在循环读取的地方,好像是queryCollection.count引发的异常,该如何解决呀?

邓大林的主页 邓大林 | 初学一级 | 园豆:200
提问于:2010-12-24 13:33
< >
分享
最佳答案
0

这个是因为你的本机中的mac地址有问题,或者你的系统本身有问题了,不是你的程序的问题,建议重装系统

收获园豆:10
hongchenxinxi | 菜鸟二级 |园豆:265 | 2011-01-04 15:00
其他回答(2)
0

获取mac地址代码如下:

string mac = "";

ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");

ManagementOjbectCollection moc = mc.GetInstances();

foreach(ManagementObject moin moc)

{

if(mo["IPEnabled"].ToString() == "True")

{

  mac = mo["MacAddress"].ToString();

}

}

Lsp000 | 园豆:225 (菜鸟二级) | 2010-12-24 13:57
这个我都实现过,但是还是出现那个同样的问题呀!
支持(0) 反对(0) 邓大林 | 园豆:200 (初学一级) | 2010-12-27 15:32
0

ManagementClass mc;
ManagementObjectCollection moc;
mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
moc = mc.GetInstances();
string str = "";
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"] == true)
{
str = mo["MacAddress"].ToString();
break;
}
}
return str;

死白的man | 园豆:2135 (老鸟四级) | 2010-12-24 14:49
这个我都实现过,但是还是出现那个同样的问题呀!
支持(0) 反对(0) 邓大林 | 园豆:200 (初学一级) | 2010-12-27 15:31
@邓大林:你有没有引用 System.Management.dll
支持(0) 反对(0) 死白的man | 园豆:2135 (老鸟四级) | 2010-12-27 15:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册