源代码:
#include<atlbase.h>
#include<atlconv.h>
#include"iphlpapi.h"

#pragma comment(lib,"Iphlpapi.lib")

int main(int argc,char*argv[])
{
    PIP_ADAPTER_INFO pAdapterInfo;
    PIP_ADAPTER_INFO pAdapter=NULL;
    DWORD dwRetVal=0;
    pAdapterInfo=(IP_ADAPTER_INFO*)malloc(sizeof(IP_ADAPTER_INFO));
    ULONG ulOutBufLen=sizeof(IP_ADAPTER_INFO);
    if(GetAdaptersInfo(pAdapterInfo,&ulOutBufLen)!=ERROR_SUCCESS)
    {
        GlobalFree(pAdapterInfo);
        pAdapterInfo=(IP_ADAPTER_INFO*)malloc(ulOutBufLen);
            
    }
    
    if((dwRetVal=GetAdaptersInfo(pAdapterInfo,&ulOutBufLen))==NO_ERROR)
    {
        pAdapter=pAdapterInfo;
        while(pAdapter)
        {
            if(strstr(pAdapter->Description,"PCI")>=0//pAdapter->Description中包含"PCI"为:物理网卡
              || pAdapter->Type==71          //pAdapter->Type是71为:无线网卡
              )
          {
              printf("--------\n");
              printf("AdapterName:%s\n",pAdapter->AdapterName);
              printf("AdapterDesc:%s\n",pAdapter->Description);
              printf("AdapterAddr:");
              for(UINT i=0;i<pAdapter->AddressLength;i++)
              {
                  printf("%02X%c",pAdapter->Address[i],i==pAdapter->AddressLength-1?'\n':'-');
              }
              printf("AdapterType:%d\n",pAdapter->Type);
              printf("IPAddress:%s\n",pAdapter->IpAddressList.IpAddress.String);
              printf("IPMask:%s\n",pAdapter->IpAddressList.IpMask.String);
          }
          pAdapter=pAdapter->Next;
      }
    }
    else
    {
        printf("CalltoGetAdaptersInfofailed\n");
    }

return 0;
}

备注: "iphlpapi.h","Iphlpapi.lib"可能找不到,这个库在VC安装目录可能有,也可能没有,如果没有,可以安装winddk,在winddk相应目录能找到该头文件和库文件,找到之后,将头文件所在目录加入到工程的additional include directories,将库文件所在目录加入到工程的additional library path。

GetAdaptersInfo获取MAC地址相关推荐

  1. 获取mac地址方法之一 GetAdaptersInfo()

    GetAdaptersInfo -20151116 防止返回的mac出现null 20151116 From:http://blog.csdn.net/weiyumingwww/article/det ...

  2. 用 Windows API “GetAdaptersInfo” 获取 MAC 时遇到的问题

    前段时间有个项目需要获取客户端的 MAC 地址,用作统计去重的参考数据.从网上查到的获取 MAC 地址的代码,大多是用同一段代码修改的.于是我也用了那段代码.代码如下: [cpp] view plai ...

  3. Windows/Linux获取Mac地址和CPU序列号实现

    UUID(Universally Unique Identifier)即通用唯一标识符,是指在一台机器上生成的数字,保证在全球范围的唯一性.可用的开源库如libuuid,可参考https://blog ...

  4. 获取MAC地址的四种方法(转)

    https://www.cnblogs.com/zlshmily/p/10058560.html zlshmily 在实际的应用系统中,我们往往会需要在程序运行时获取当前机器的网卡的MAC地址,以便作 ...

  5. java 根据ip获取mac地址_利用java如何根据IP获取mac地址

    利用java如何根据IP获取mac地址 发布时间:2020-11-25 15:49:42 来源:亿速云 阅读:74 作者:Leah 利用java如何根据IP获取mac地址?针对这个问题,这篇文章详细介 ...

  6. iOS7以下设备获取mac地址

    注意,是iOS7以下的设备,直接上源码,获取mac地址都是为了唯一标识一个设备的,但iOS7设备的mac地址为 020000000000 MacAddress.h #include <sys/s ...

  7. C# 获取MAC地址

    /*********************************************************************** C# 获取MAC地址* 说明:* 在C#中获取本机的M ...

  8. wince下获取mac地址的简单方法!

    下,可以通过访问注册表获取mac地址,可是非常可惜的是有些系统的注册表不提供这个键值,另外也可以通过 DeviceIoControl这类函数获得,但是所有方法要么不全面,要么不够简单或者有些平台bsp ...

  9. Python根据IP地址获取MAC地址

    Python3根据IP地址获取MAC地址(不能获取本机IP,可以获取与本机同局域网设备IP的MAC) main.py #!/usr/bin/env python3 # -*- coding: utf- ...

最新文章

  1. 聊聊数据库优化的4大手段
  2. JSP标签:jsp内置标签、jstl标签、自定义标签
  3. java磁盘读写b 树_原来你是这样的B+树
  4. Axis2 POJO实现WebService(一)发布
  5. Knowledge Graph Alignment Network with Gated Multi-Hop Neighborhood Aggregation-学习笔记
  6. SmoothNLP 中文NLP文本处理工具 Python 实战示范
  7. Gitbook/Markdown中插入复杂(合并单元格)的表格
  8. 通过分区(Partitioning)提高Spark的运行性能
  9. PERC5/6 RAID配置中文手册
  10. 隐马尔可夫模型python_隐马尔可夫模型HMM及Python实现
  11. 关于银行卡四要素返回数据解析问题
  12. HTML网页拓展名有哪些,网页文件的扩展名有哪些
  13. efs android 分区 img,选择别人efs文件包都是.img格式的,怎么添加你们的.efs文? 爱问知识人...
  14. 电脑不分盘有没有关系
  15. 新底座、新产品、新方案,2022用友BIP技术大会三大数智化突破
  16. 开放式运动耳机好不好用,五款最好用的骨传导耳机推荐
  17. 普通用户申请微软的OneDrive免费网盘,容量5T、5T、5T,重要事情说三遍!!!!!
  18. 2023/1/2总结
  19. java中this关键变量
  20. 如何使用SQL批量替换数据库特定字段中部分特定数据

热门文章

  1. java 计算工具类_java精确计算工具类
  2. python pandas dataframe 排序,如何按两列或更多列对python pandas中的dataFrame进行排序?...
  3. 但行好事,莫问前程!
  4. Tensorflow模型加载与保存、Tensorboard简单使用
  5. 如何获取枚举字符串,值及遍历枚举(转)
  6. 51nod 1307 绳子与重物 二分+dfs / 并查集
  7. poj 2503 Trie树
  8. Java——容器(泛型)
  9. 贷款购房 房贷 每月还款额是如何计算出来的? 每月还款额计算步骤/方法
  10. Linux 输入子系统原理理解(原创)