C#获取设备的IP和Mac类

 /// <summary>

    /// 此类用于获得设备的Ip和Mac

    /// </summary>

    public class Mac

    {

        [DllImport("Iphlpapi.dll")]

        private static extern int SendARP(Int32 dest, Int32 host, ref Int64 mac, ref Int32 length);

        [DllImport("Ws2_32.dll")]

        private static extern Int32 inet_addr(string ip); 



        //获取本机的IP

        public string getLocalIP()

        {

            string strHostName = Dns.GetHostName(); //得到本机的主机名

            IPHostEntry ipEntry = Dns.GetHostEntry(strHostName); //取得本机IP

            string strAddr = ipEntry.AddressList[0].ToString();

            return (strAddr);

        }

        //获取本机的MAC

        public string getLocalMac()

        {

            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);

        }



    }

  

你可能感兴趣的:(mac)