VC获取本机IP地址

来源:互联网 发布:天津基础教育网络 编辑:程序博客网 时间:2024/05/17 06:20
char sHostName[100];
gethostname(sHostName,sizeof(sHostName));
struct hostent FAR * lpHostEnt=gethostbyname(sHostName);
if(lpHostEnt==NULL)
{
 MessageBox(_T("error"));
}
//获取IP
LPSTR lpAddr=lpHostEnt->h_addr_list[0];
if(lpAddr)
{
 struct in_addr inAddr;
 memmove(&inAddr,lpAddr,4);


 CString str;//IP地址

 str=inet_ntoa(inAddr);


//显示在IP控件中

 DWORD  dw1=inet_addr(inet_ntoa(inAddr));
 WORD  wd1=LOWORD(dw1);//取高十六位
 WORD  wd2=HIWORD(dw1);//取低十六位
 BYTE  bte1=LOBYTE(wd1);
 BYTE  bte2=HIBYTE(wd1);
 BYTE  bte3=LOBYTE(wd2);
 BYTE  bte4=HIBYTE(wd2);


 m_ip.SetAddress(bte1,bte2,bte3,bte4);

0 0