各位大侠:以下是我获取以太网卡物理地址的程序,但是当用adsl上网时获取到是adsl的物理地址,请问怎么修改
string strMac = "";
ManagementClass objmc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection objnics = objmc.GetInstances();
foreach(ManagementObject objnic in objnics)
{
if(Convert.ToBoolean(objnic["ipEnabled"]) == true)
{
strMac = objnic["MACAddress"].ToString();
break;
}
}
return strMac;

解决方案 »

  1.   

    简单的方法 ipconfig/all 分析输出
      

  2.   

    如机器上有多张网卡就把所有MAC和网卡名称全部输出再对名称进行分析        private void button1_Click(object sender, EventArgs e)
            {
                string strMac = "";
                string catption = "";
                ManagementClass objmc = new ManagementClass("Win32_NetworkAdapterConfiguration");
                ManagementObjectCollection objnics = objmc.GetInstances();
                foreach (ManagementObject objnic in objnics)
                {
                    if (Convert.ToBoolean(objnic["ipEnabled"]) == true)
                    {
                        strMac = objnic["MACAddress"].ToString();
                        catption = objnic["Caption"].ToString();
                        MessageBox.Show("Caption: " + catption +" \n MAC:"+ strMac );
                    }
                }                   }
      

  3.   

    感谢以上两位的答复,我是想在程序中自动获得以太网卡物理地址并赋值给strMac,而不adsl的物理地址
      

  4.   

    http://www.cnblogs.com/guoyilin/archive/2009/04/01/1426846.html