vc获取本地ipv6地址的出错?

cai_yu_chao 2012-07-12 09:28:44
#include "IPHelper/Iphlpapi.h"
#pragma comment(lib, "IPHelper/IPHLPAPI.LIB")
void getLocalIPV6(char *IPAddr)
{
PIP_ADAPTER_ADDRESSES pAddresses;
ULONG outBufLen = 0;
DWORD dwRetVal = 0;
char buff[100];
DWORD bufflen=100;
int addrLen = sizeof(SOCKADDR_STORAGE);
pAddresses = (IP_ADAPTER_ADDRESSES*) malloc(sizeof(IP_ADAPTER_ADDRESSES));
// 第一次使用 GetAdaptersAddresses 从 outBufLen 中获取需要的缓冲区大小
if (GetAdaptersAddresses(AF_INET6, 0, NULL, pAddresses, &outBufLen) == ERROR_BUFFER_OVERFLOW)
{
free(pAddresses);
pAddresses = (IP_ADAPTER_ADDRESSES*) malloc(outBufLen);
}

// 第二次调用GetAdaptersAddresses 获取实际想获取的信息.
if ((dwRetVal = GetAdaptersAddresses(AF_INET6, 0 , NULL, pAddresses, &outBufLen)) == NO_ERROR)
{
PIP_ADAPTER_ADDRESSES pCurrAddresses = pAddresses;
while (pCurrAddresses)
{
if(pCurrAddresses->FirstUnicastAddress !=NULL)
{
WSAAddressToString(pCurrAddresses->FirstUnicastAddress->Address.lpSockaddr,
pCurrAddresses->FirstUnicastAddress->Address.iSockaddrLength,NULL,buff,&bufflen);
if (strncmp(buff,"fe80",4)==0||strcmp(buff,"::1") ==0)
{
}
else
{
memcpy(IPAddr,buff,bufflen);
return;
}
}
pCurrAddresses = pCurrAddresses->Next;
}
}
}


出错的原因是:
error LNK2001: unresolved external symbol _GetAdaptersAddresses@20

网上说是IPHLPAPI.LIB没有加进来,但是我已经加了,还是报错,求高手解决一下。

...全文
1096 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Huer 2013-11-08
  • 打赏
  • 举报
回复
您好,我也是遇到了这个问题,请问是如何解决的?
fishjam 2013-04-19
  • 打赏
  • 举报
回复
链接错误,看看是不是使用的 IPHLPAPI.LIB 版本太老了,里面没有这个函数。 我机器上这个库有好几个版本: E:\Microsoft SDKs\Windows\v7.1\Lib C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib C:\Program Files (x86)\Microsoft SDKs\Windows\v5.0\Lib\IA64 通过 "Windows SDK Configuration Tool" 工具设置一下VS使用的SDK版本
cxy20121005 2012-12-17
  • 打赏
  • 举报
回复
楼主,好啊.我也碰到这样的问题,是什么原因?交流一下QQ:1049568282
oyljerry 2012-07-12
  • 打赏
  • 举报
回复
IPHLPAPI.lib路径等是否正确
zgl7903 2012-07-12
  • 打赏
  • 举报
回复
MSDN 有例子
GetAdaptersAddresses function
直接编译下看看

是不是SDK版本太低了
danscort2000 2012-07-12
  • 打赏
  • 举报
回复
server 2003 r2 SDK安装了吗?
是否在VC6里指定了头文件以及库的连接次序是SDK优先?

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧