gethostname() and gethostbyname()

解决方案 »

  1.   

    WSADATA wsaData;
    CString strTemp;
    char chLocalInfo[64]; if(WSAStartup(WINSOCK_VERSION,&wsaData))
    {
    strTemp.Format("Socket初始化失败,当前Socket版本号:%x 。",wsaData.wVersion);
    strTemp += _T("\r\n");
    AddMessage(strTemp);
    WSACleanup();
    return;
    } if(gethostname(chLocalInfo,sizeof(chLocalInfo)))
    {
    AddMessage(_T("\n无法取得主机名,请确认网络属性的配置\n"));
    return;
    }
      

  2.   

    BYTE *p; 
    char temp[100]; 
    struct hostent *hp;
    char ip[16];if(gethostname(temp, sizeof(temp))== 0)
    {
    if((hp =gethostbyname(temp))!=0)
    {
    p =(BYTE *)hp->h_addr; 
    wsprintf(ip, "%d.%d.%d.%d", p[0], p[1], p[2], p[3]);
    MessageBox(NULL, ip, "IP Address", MB_OK);
    }
    }