没装SDK
拷了一个IPHlpApi.h 和IPHlpApi.lib
提示,没有
#include <iprtrmib.h>
#include <ipexport.h>
#include <iptypes.h>
还要包含几个头文件

解决方案 »

  1.   

    http://blog.csdn.net/zgl7903/archive/2009/09/26/4595918.aspx
      

  2.   

    我的问题是我现在是没有装SDK,
    从别的地方拷过来的拷了一个IPHlpApi.h 和IPHlpApi.lib 
    编译时提示IPHlpApi.h里调用的三个头文件找不到,
    这个是不是三个头文件也要从别的地方拷过来
    <iprtrmib.h> 
    <ipexport.h> 
    <iptypes.h> 
      

  3.   

    需要SDK才可以.有相当多的头文件呢..
    #include <Iphlpapi.h>  // 需要SDK,这个头文件包含很多其他文件,等等
    #pragma comment(lib, "Iphlpapi.lib")bool GetLoaclMac()
    {
    DWORD             err;
    DWORD             adapterinfosize=0;
    PIP_ADAPTER_INFO padapterinfo;
    PIP_ADAPTER_INFO pAdapter = NULL;
    PIP_ADAPTER_INFO pNextAdapter = NULL;

    if((err=GetAdaptersInfo(NULL,&adapterinfosize))!=0)
    {
    if(err!=ERROR_BUFFER_OVERFLOW)
    {
    printf("GetAdapterInfo 大小错误: %d\n",GetLastError());
    return false;
    }
    }

    if((padapterinfo=(PIP_ADAPTER_INFO)GlobalAlloc(GPTR,adapterinfosize))==NULL)
    {
    printf("内存分配错误: %d\n",GetLastError());
    return false;
    }

    if((err=GetAdaptersInfo(padapterinfo,&adapterinfosize))!=0)
    {
    printf("GetAdaptersInfo 错误: %d\n",GetLastError());
    GlobalFree(padapterinfo);
    return false;
    }
    pNextAdapter = padapterinfo;
    pAdapter = pNextAdapter;
    bool FindRealAdapter = false;
    for (int i = 1;pNextAdapter;i++)
    {
    pAdapter = pNextAdapter;
    pNextAdapter = pNextAdapter->Next;
    printf("找到网卡: %s\n", pAdapter->Description);
    BYTE* hostmac = pAdapter->Address;
    printf("网卡地址: %.2X-%.2X-%.2X-%.2X-%.2X-%.2X\n",
    hostmac[0],hostmac[1],hostmac[2],hostmac[3],hostmac[4],hostmac[5]);
    } GlobalFree(padapterinfo); return true;
    }
      

  4.   

    我从网上下了个 winsdk2006.rar 绿色版的,只有7M,带头文件和库了...
    你找个比较新的吧.估计还是比较小的.非安装版本的.