void CMyDlg::OnIPAddress() { // 此段代码:独立的获取本机IP 地址和计算机名 WORD wVersionRequested; WSADATA wsaData; char name[255]; CString ip; PHOSTENT hostinfo; wVersionRequested = MAKEWORD(2, 0); if (WSAStartup(wVersionRequested, &wsaData) == 0) { if(gethostname(name, sizeof(name)) == 0) { if((hostinfo = gethostbyname(name))
= NULL) { ip = inet_ntoa(*(struct in_addr *)*hostinfo->h_addr_list); } } WSACleanup( ); } // AfxMessageBox(name);//name 里是本机名 // AfxMessageBox(ip); //ip 中是本机IP m_IPAddress = ip; // m_IPAddress 是IP 控件对应的变量,ip 是Edit 控件对应的变量 // m_IP
SetAddress(255, 86, 255, 68); // 直接设置控件里显示的值 // 本段代码:已知IP Address 控件里显示的值,转换为CString 格式 /* // 下面代码实现:把 IP Address 控件里的值转化为 CString 格式 unsigned char *pIP; CString strIP; DWORD dwIP; m_IP
GetAddress(dwIP); // m_IP 为IP Address 控件对应的变量 pIP = (unsigned char*)&dwIP