ASP.NET获取客户端网卡使用的MAC地址信息

方式一:利用.NET自带的类库直接就可以获得

[c-sharp] view plaincopy

1. using System; 

2. using System.Collections.Generic; 

3. using System.Linq; 

4. using System.Web; 

5. using System.Web.UI; 

6. using System.Web.UI.WebControls; 

7. //添加引用,并导入命名空间

8. using System.Management; 

9. namespace WebApp 

10. { 

11. public partial class WebForm1 : System.Web.UI.Page 

12.     { 

13. protected void Page_Load(object sender, EventArgs e) 

14.         { 

15.             Response.Write("计算机名称: " + System.Net.Dns.GetHostName() + "<br>"); 

16. //调用GetMacAddress函数,获取网卡地址信息

17.             Response.Write("MAC地址: " + GetMacAddress()); 

18.         } 

19. /// <summary>

20. /// 获取网卡地址信息

21. /// </summary>

22. /// <returns></returns>

23. string GetMacAddress() 

24.         { 

25. try

26.             { 

27. string mac = ""; 

28.                 ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); 

29.                 ManagementObjectCollection moc = mc.GetInstances(); 

30. foreach (ManagementObject mo in moc) 

31.                 { 

32. if ((bool)mo["IPEnabled"] == true

33.                     { 

34.                         mac = mo["MacAddress"].ToString(); 

35. break

36.                     } 

37.                 } 

38.                 moc = null

39.                 mc = null

40. return mac; 

41.             } 

42. catch

43.             { 

44. return "unknow"; 

45.             } 

46.         } 

47.     } 

48. } 

运行结果:
计算机名称: lenovo-05d886ff
MAC地址: 00:26:22:05:8C:C7

注意:上传到服务器测试,发现获得的是服务器的MAC地址

方式二:通过win32特性获得
优点:无需在客户端设置;
缺点:无法获取服务器的mac(经测试总为0,其实感觉没有必要获取服务器的mac,所以也不算缺点)(能否跨网段获取还没有测试)

[c-sharp] view plain

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值