网卡的描述,就比如“Intel(R) PRO/100 VE Network Connection”或者“Realtek RTL8139(A) PCI Fast Ethernet Adapter”,
ipconfig命令就可以得到该值
但是,我通过GetAdaptersInfo获得的网卡描述,却和执行ipconfig命令输出的不一样通过GetAdaptersInfo可以获得一个IP_ADAPTER_INFO 结构
其中IP_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;
如何获得正确的网卡描述,谢谢回复!!!

解决方案 »

  1.   

    推荐一个好方法,使用WinPcap函数库,我们编程经常用它,非常好使。
    你的要求两个函数就搞定。
    vckbase有下载,最新的要去           http://winpcap.polito.it顺便愤青几句:国人应该多开发这些方便的函数库,我用到的库为什么都是外国人编的?
      

  2.   

    http://www.codeproject.com/system/netcardinfo.asp
    A Class for Getting NetCard Adapter Information
    This class can be used to get netcard adapter information such as MAC,IP,DHCP
      

  3.   

    to codelover and laolaoliu2002:你们推荐的解决方法是否支持多操作平台,谢谢我要获得网卡的信息是被要求支持winnt4.0,win2000,以及win98,winXP我发现winnt4.0下ipconfig的实现方法和win2000下的实现方法就不一样通过dump看它们各自调用的动态链接库的函数就不一样。所以想问一下