vc++ 显示ip地址方法
展开全部
vs2010测试通过
#include<winsock2.h>
#pragma comment(lib,"ws2_32.lib")
void CLoginDlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
WSADATA wsaData;
char name[155];
char *ip;
PHOSTENT hostinfo;
if ( WSAStartup( MAKEWORD(2,0), &wsaData ) == 0 )
{ if( gethostname ( name, sizeof(name)) == 0)
{ if((hostinfo = gethostbyname(name)) != NULL)
{ ip = inet_ntoa(*(struct in_addr*)*hostinfo->h_addr_list);
char str[16]; sprintf(str, " 您的IP是: %s \n", ip);
::MessageBoxA(NULL,str, "提示",MB_OK);
}
}
WSACleanup( );
}
}
追问
这代码是不是 建立一个button,然后点进去放入的?
追答
嗯。
#include
#pragma comment(lib,"ws2_32.lib")
这两句放在头文件下面
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...
点击进入详情页
本回答由Storm代理提供
2013-12-17 · 知道合伙人软件行家
关注
展开全部
#include<winsock2.h>
#pragma comment(lib,"ws2_32.lib")
void CGetIPDlg::OnButtonGetip()
{
WSADATA wsaData;
char name[155];
char *ip;
PHOSTENT hostinfo;
if ( WSAStartup( MAKEWORD(2,0), &wsaData ) == 0 )
{
if( gethostname ( name, sizeof(name)) == 0)
{
if((hostinfo = gethostbyname(name)) != NULL)
{
ip = inet_ntoa(*(struct in_addr*)*hostinfo->h_addr_list);
char str[16];
sprintf(str, " 您的IP是: %s \n", ip); //把ip格式化到你的静态文本框
MessageBox(str, "提示");
}
}
WSACleanup( );
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询