如果在Vista下面取网卡的MAC地址? 急!
下面这段代码是取MAC地址的,在2000和XP下面没有任何问题,无论是联网或者是断开都可以取得MAC地址.
但是在Vista下面,如果是连线状态可以取得MAC地址,但是断线就取不到MAC地址了.
哪位高人能指点一下是什么原因,谢谢了!
try
{
//获取网卡硬件地址
String sReturn = "";
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"] == true)
{
sReturn = mo["MacAddress"].ToString();
BFileLog file = new BFileLog();
file.fWriteLog(sReturn);
break;
}
}
moc = null;
mc = null;
sReturn = sReturn.Replace(":", "-");
return sReturn;
}
catch
{
return "";
}