Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1468167
  • 博文数量: 218
  • 博客积分: 6394
  • 博客等级: 准将
  • 技术积分: 2563
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-08 15:33
个人简介

持之以恒

文章分类

全部博文(218)

文章存档

2013年(8)

2012年(2)

2011年(21)

2010年(55)

2009年(116)

2008年(16)

分类:

2010-05-06 22:59:37

IPV6无线路由器
WIFI
DHCPv6
代码:
 

    WSADATA wsaData;
    WORD version = MAKEWORD(2,2);
    int error = ::WSAStartup(version,&wsaData);
    if(error != 0)
    {
        ::MessageBoxW(NULL,_T("加载相应的WinSock库出错!"),_T("网络出错!"),MB_OK);
    }
    
//判断相应的版本是否是2.2的版本
    if ( LOBYTE( wsaData.wVersion ) != 2 || HIBYTE( wsaData.wVersion ) != 2 )
    {        
        ::WSACleanup();
    }


    struct addrinfo hints,*res;
    memset(&hints,0,sizeof(hints));

    hints.ai_family=AF_INET6;
    hints.ai_socktype=SOCK_STREAM;
    hints.ai_protocol=IPPROTO_TCP;
    hints.ai_flags=AI_PASSIVE;
    char cName[256];
    ::gethostname(cName,256);
    std::string    m_strPort = "4567";
    int rc=getaddrinfo(cName,m_strPort.c_str(),&hints,&res);
    if(rc != 0)
    {
        CString msg;
        msg.Format(L"地址解析出错!错误代码:%d",WSAGetLastError());
        MessageBox(msg,NULL,MB_ICONERROR);
        return ;
    }
    else
    {
        TCHAR IPV6[200];
        memset(IPV6,'\0',200);
        DWORD bufflen = 200;
        
//将本地地址转换成字符串显示 
        WSAAddressToString(res->ai_addr,res->ai_addrlen,NULL,IPV6,&bufflen);
        CString msg = IPV6;

        MessageBox(msg,NULL,MB_ICONERROR);
        return ;
    }

#include <winsock2.h>
#include <ws2tcpip.h>


阅读(1569) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~