int CNetTestDlg::GetLocalHostName( CString& sHostName ) // 获取机器名 { char szHostName[256]; int nRetCode; nRetCode = gethostname(szHostName, sizeof(szHostName)); if (nRetCode != 0) { memcpy(szHostName, ("Not Available"), sizeof("Not Available")); return WSAGetLastError(); } sHostName = szHostName; return 0; }
int CNetTestDlg::GetIPAddress(const CString& sHostName, CString& sIPAddress) // 获取IP地址 { struct hostent *lpHostEnt = gethostbyname(sHostName); if (lpHostEnt == NULL) { sIPAddress = ""; return WSAGetLastError(); } LPSTR lpAddr = lpHostEnt->h_addr; if (lpAddr) { struct in_addr inAddr; memmove(&inAddr, lpAddr, 4); // 将地址进行转换成常规形式 sIPAddress = inet_ntoa(inAddr); if (sIPAddress.IsEmpty()) { sIPAddress = "Not available"; } } return 0; }
转载于:https://www.cnblogs.com/killer-xc/p/6610188.html
最后
以上就是任性皮皮虾最近收集整理的关于gethostname()和gethostbyname()获取IP地址和计算机名的全部内容,更多相关gethostname()和gethostbyname()获取IP地址和计算机名内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复