zoukankan      html  css  js  c++  java
  • 学习c++一点一滴读取网络适配器信息

    昨天搞 了一天的注册表,今天把读取网卡信息搞定了,相比之下,速度要比昨天快的多。孰能生巧,大家多多联系啊 !~不废话,直接上。

    PIP_ADAPTER_INFO   结构   存储网络适配器信息

    typedef struct _IP_ADAPTER_INFO {
      struct _IP_ADAPTER_INFO* Next;
      DWORD ComboIndex;
      char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
      char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
      UINT AddressLength;
      BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
      DWORD Index;
      UINT Type;
      UINT DhcpEnabled;
      PIP_ADDR_STRING CurrentIpAddress;
      IP_ADDR_STRING IpAddressList;
      IP_ADDR_STRING GatewayList;
      IP_ADDR_STRING DhcpServer;
      BOOL HaveWins;
      IP_ADDR_STRING PrimaryWinsServer;
      IP_ADDR_STRING SecondaryWinsServer;
      time_t LeaseObtained;
      time_t LeaseExpires;
    } IP_ADAPTER_INFO,
    *PIP_ADAPTER_INFO;

    GetAdaptersInfo        函数   获取所有的适配器信息

    DWORD GetAdaptersInfo(
      PIP_ADAPTER_INFO pAdapterInfo,
      PULONG pOutBufLen
    );

     

    IP_ADDR_STRING  结构 IP列表

    typedef struct _IP_ADDR_STRING {
      struct _IP_ADDR_STRING* Next;
      IP_ADDRESS_STRING IpAddress;
      IP_MASK_STRING IpMask;
      DWORD Context;
    } IP_ADDR_STRING, *PIP_ADDR_STRING;

     

     

    直接付源码:

     

    Code

     

  • 相关阅读:
    Git 远程仓库 git remote
    同一台电脑关于多个SSH KEY管理
    dotnet core on Linux 环境搭建及入门demo
    Cannot load JDBC driver class 'com.mysql.jdbc.Driver '
    Mac OS 配置Maven
    Linux中profile、bashrc、bash_profile之间的区别和联系
    如何在Mac的Finder中显示/usr、/tmp、/var等隐藏目录
    Mac OS X 下查看和设置JAVA_HOME
    SSM框架整合(IntelliJ IDEA + maven + Spring + SpringMVC + MyBatis)
    事件
  • 原文地址:https://www.cnblogs.com/baiye/p/1520393.html
Copyright © 2011-2022 走看看