得到本机的IP地址和MAC地址的工具类

类代码如下:
using System;
using System.Collections.Generic;
using System.Collections;
using System.Text;
using System.Management;
using System.Net; 

namespace Operationlayer
{
    public class IpMacInformation
    {
        /// <summary>
        /// 得到主机的IP地址
        /// </summary>
        /// <returns>IP地址的字符串</returns>
        public String GetHostIp(){
        string strIP = "";
        System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
        for(int i = 0; i < addressList.Length; i++)
        {
            strIP += addressList[i].ToString() + "\n";
        }
        return strIP;
}

///   <summary>
/// 得到取第一块网卡的MAC地址
/// </summary>  
///   <returns>返回网卡MAC地址的字符串<</returns>  

        public string GetHostMac()
        {   //注意必须在解决方案中添加引用System.Mangement的引用
            string szMac = "";
            ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection moc = mc.GetInstances();
            foreach (ManagementObject mo in moc)
            {
                if ((bool)mo["IPEnabled"] == true)
                {
                    szMac = mo["MacAddress"].ToString().Replace(":", "-");
                    break;  //如果你要获取多块网卡MAC地址,可以把break去掉
                }
            }
            return szMac;
        }
    }
}

posted @ 2007-07-18 15:52  Hm  阅读(1190)  评论(1编辑  收藏  举报