当前位置:网站首页>MFC获取本机IP(网络通讯时用得多)

MFC获取本机IP(网络通讯时用得多)

2022-04-23 19:24:00 ToneChip

CString CUDPDlg::GetIP()    //获取本地IP
{
	WORD wVersionRequested;
	WSADATA wsaData;
	char name[255];    // 本地主机名字符数组变量
	CString m_ip;      // IP地址字符串变量
	PHOSTENT hostinfo;  // hostent结构指针
	wVersionRequested = MAKEWORD(2, 0);   //连接应用程序与winsock Dll
	if (WSAStartup(wVersionRequested, &wsaData) == 0)
	{
		if (gethostname(name, sizeof(name)) == 0)  //得到本地主机名

		{
			if ((hostinfo = gethostbyname(name)) != NULL) //得到主机信息
			{
				m_ip = inet_ntoa(*(struct in_addr *)*hostinfo->h_addr_list); //转换得到IP地址
			}
			else m_ip = "IP检测失败";
		}
		WSACleanup();   // 中止winsock DLL的使用
	}
	return m_ip;  //返回IP地址字符串
}

调用如下

	CString localIP;
	localIP = GetIP();   //得到本机IP
	SetDlgItemText(IDC_IP1, localIP);	//获取到的本机IP显示到界面

版权声明
本文为[ToneChip]所创,转载请带上原文链接,感谢
https://tonechip.blog.csdn.net/article/details/122943159