多语言展示
当前在线:1618今日阅读:23今日分享:25

C#实现的小功能:[5]C#获取MAC地址(网卡ID)

在一些需要注册码的软件中,经常会用到以电脑MAC地址为基础的加密串,这里笔者就给大家介绍C#获取本机的MAC地址(物理地址)。
工具/原料
1

Visual Studio(VS)2010 C#

2

.Net Framework 4.0及以上

方法/步骤
1

这里要用到三个类:ManagementClass 、 ManagementObjectCollection 和 ManagementObject需要添加.Net引用:System.Management并添加命名空间:using System.Management;

2

首先建立一个CIM管理类:ManagementClass mc = new ManagementClass('Win32_NetworkAdapterConfiguration');Win32_NetworkAdapterConfiguration 是WMI中的一个Win32类

3

然后得到WMI实例的集合:ManagementObjectCollection moc = mc.GetInstances();

4

最后遍历集合即可得到MAC地址(一个):string mac = '';foreach (ManagementObject mo in moc)    if ((bool)mo['IPEnabled'] == true)    {        mac += mo['MacAddress'].ToString() + ' ';        break;    }这里只是得到了一个可用的MAC地址,读者可以根据需要修改,删除if判断、break等语句。

5

读者也可以将其封装成一个方法:        ///

        /// 获取网卡ID代码         ///         ///         public static string GetNetworkAdpaterID()        {            try            {                string mac = '';                ManagementClass mc = new ManagementClass('Win32_NetworkAdapterConfiguration');                ManagementObjectCollection moc = mc.GetInstances();                foreach (ManagementObject mo in moc)                    if ((bool)mo['IPEnabled'] == true)                    {                        mac += mo['MacAddress'].ToString() + ' ';                        break;                    }                moc = null;                mc = null;                return mac.Trim();            }            catch (Exception e)            {                return 'uMnIk';            }        }

6

OK,搞定,这样就可以获得MAC地址了,呵呵!

注意事项

如果此文章对您有所帮助,请关注本人并收藏此文章。谢谢您的支持!(任何疑问,欢迎留言!)

推荐信息