MFC下如何获取本机IP和mac地址?
2015-05-13 15:34
267 查看
CString <span style="color:#cc0000;">myIP</span>,<span style="color:#cc0000;">myMac</span>; <span style="color:#6600cc;background-color: rgb(255, 255, 255);">GetLocoalIPandMac</span>(myIP, myMac); bool <span style="color:#000099;">yourClassName</span>::<span style="color:#6600cc;">GetLocoalIPandMac</span>(CString& csIP,CString& myMac) { // UCHAR MacAddress[6]; bool bNetReady = false; ULONG outBufLen = 0; DWORD dwRetVal = 0; PIP_ADAPTER_INFO pAdapterInfo; PIP_ADAPTER_INFO pAdapterInfoTmp = NULL; pAdapterInfo = (IP_ADAPTER_INFO*)GlobalAlloc(GMEM_ZEROINIT, sizeof(IP_ADAPTER_INFO)); ULONG ulOutBufLen = sizeof(IP_ADAPTER_INFO); if(GetAdaptersInfo(pAdapterInfo, &ulOutBufLen) != ERROR_SUCCESS) { GlobalFree (pAdapterInfo); pAdapterInfo = (IP_ADAPTER_INFO*)GlobalAlloc(GMEM_ZEROINIT, ulOutBufLen); } if((dwRetVal = GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)) == NO_ERROR) { pAdapterInfoTmp = pAdapterInfo; csIP = ""; /*dwIP = 0; dwMask = 0;*/ while(pAdapterInfoTmp) { if(pAdapterInfoTmp->Type == MIB_IF_TYPE_ETHERNET) { if(pAdapterInfoTmp->CurrentIpAddress) { csIP = pAdapterInfoTmp->CurrentIpAddress->IpAddress.String; /*dwIP = inet_addr(pAdapterInfoTmp->CurrentIpAddress->IpAddress.String); dwMask = inet_addr(pAdapterInfoTmp->CurrentIpAddress->IpMask.String);*/ } else { csIP = pAdapterInfoTmp->IpAddressList.IpAddress.String; /*dwIP = inet_addr(pAdapterInfoTmp->IpAddressList.IpAddress.String); dwMask = inet_addr(pAdapterInfoTmp->IpAddressList.IpMask.String);*/ } } if(!csIP.IsEmpty() && (csIP.CompareNoCase(_T("0.0.0.0")) != 0)) { bNetReady = true; myMac.Format(_T("%02X%02X%02X%02X%02X%02X"), pAdapterInfoTmp->Address[0], pAdapterInfoTmp->Address[1], pAdapterInfoTmp->Address[2], pAdapterInfoTmp->Address[3], pAdapterInfoTmp->Address[4], pAdapterInfoTmp->Address[5]); break; } pAdapterInfoTmp = pAdapterInfoTmp->Next; } } GlobalFree (pAdapterInfo); return bNetReady; }
相关文章推荐
- 如何用C语言获取网卡的mac地址?(当然,你也可以用类似方法获取所有ip)
- MFC 获取外网IP地址和MAC地址
- 如何获取本机MAC地址 和 IP
- IE下通过javascript如何获取本地网卡IP,MAC地址,计算机名
- C#编程之 如何获取本地和远程主机的IP及MAC地址(转)
- 如何从HttpServletRequest中获取外网IP地址
- 使用nginx后如何在web应用中获取用户ip
- 如何让路由自动获取公网的IP
- 如何在不同系统下使用 Java 获取系统 IP
- c#.net如何获取本机ip
- 使用Nginx后如何在web应用中获取用户ip及原理解释
- 如何获取客户端IP、WEB服务器IP
- Android_获取手机IP和MAC地址
- nginx反向代理后应用程序如何获取客户端真实IP?
- 通过IP获取局域网的MAC地址
- nginx做反向代理负载均衡 后端服务器如何获取用户的IP
- c#中如何获取本机MAC地址、IP地址、硬盘ID、CPU序列号等系统信息
- MFC 获取本地电脑的IP和MAC地址
- c#中如何获取本机用户名、MAC地址、IP地址、硬盘ID、CPU序列号、系统名称、物理内存
- C#获取本地计算机名,IP,MAC地址,硬盘ID