关键词搜索

源码搜索 ×
×

Windows上获取网卡的mac地址

发布2022-06-12浏览2404次

详情内容

最近,搞了一个Windows工具,需要获取网卡mac, 这个太熟悉了,之前也经常玩,搞起:

  1. #include <stdio.h>
  2. #include <winsock2.h>
  3. #include <iphlpapi.h>
  4. #pragma comment(lib, "iphlpapi.lib")
  5. int main()
  6. {
  7. int i = 0;
  8. int ret = 0;
  9. unsigned long size = 0;
  10. PIP_ADAPTER_INFO pIpAdapterInfo = new IP_ADAPTER_INFO();
  11. ret = GetAdaptersInfo(pIpAdapterInfo,&size);
  12. if (ERROR_BUFFER_OVERFLOW == ret)
  13. {
  14. delete pIpAdapterInfo;
  15. pIpAdapterInfo = (PIP_ADAPTER_INFO)new BYTE[size];
  16. ret = GetAdaptersInfo(pIpAdapterInfo, &size);
  17. }
  18. if (ERROR_SUCCESS == ret)
  19. {
  20. while (pIpAdapterInfo) // 每个网卡对应一个链表结点
  21. {
  22. for (i = 0; i < pIpAdapterInfo->AddressLength; i++)
  23. {
  24. if (i < pIpAdapterInfo->AddressLength - 1)
  25. {
  26. printf("%02X-", pIpAdapterInfo->Address[i]);
  27. }
  28. else
  29. {
  30. printf("%02X\n", pIpAdapterInfo->Address[i]);
  31. }
  32. }
  33. pIpAdapterInfo = pIpAdapterInfo->Next;
  34. }
  35. }
  36. if (pIpAdapterInfo)
  37. {
  38. delete pIpAdapterInfo;
  39. pIpAdapterInfo = NULL;
  40. }
  41. return 0;
  42. }

测试了一下,OK.

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载