用ClassWizard定义一个IPAddress控件的变量m_host,类型是control:CIPAddressCtrl
BYTE ips[4];
CString m_host_string;
m_host.GetAddress(ips[0],ips[1],ips[2],ips[3]); //读取IP //int GetAddress( BYTE& nField0, BYTE& nField1, BYTE& nField2, BYTE& nField3 );
m_host_string.Format("%d.%d.%d.%d",ips[0],ips[1],ips[2],ips[3]);
其他函数(我没有试过):
//将IPAddressCtrl中的IP地址获得并转换成CString型
unsigned char *pIP;
CString strIP;
DWORD dwIP;
m_ipAddr.GetAddress(dwIP); // int GetAddress( DWORD& dwAddress );
pIP = (unsigned char*)&dwIP;
strIP.Format("%u.%u.%u.%u",*(pIP+3), *(pIP+2), *(pIP+1), *pIP);
unsigned char *pIP;
CString strIP;
DWORD dwIP;
m_ipAddr.GetAddress(dwIP); // int GetAddress( DWORD& dwAddress );
pIP = (unsigned char*)&dwIP;
strIP.Format("%u.%u.%u.%u",*(pIP+3), *(pIP+2), *(pIP+1), *pIP);
//或者这样提取IP
DWORD dwIPAddress;
m_ptrIPCtrl.GetAddress(dwIPAddress);
CString m_strIPValue;
m_strIPValue.Format("%d.%d.%d.%d",
HIBYTE(HIWORD(dwIPAddress)),
LOBYTE(HIWORD(dwIPAddress)),
HIBYTE(LOWORD(dwIPAddress)),
LOBYTE(LOWORD(dwIPAddress))
);
m_ptrIPCtrl为IP控件对应的变量
m_strIPValue为得到的字符串形式的IP地址
m_ptrIPCtrl.GetAddress(dwIPAddress);
CString m_strIPValue;
m_strIPValue.Format("%d.%d.%d.%d",
HIBYTE(HIWORD(dwIPAddress)),
LOBYTE(HIWORD(dwIPAddress)),
HIBYTE(LOWORD(dwIPAddress)),
LOBYTE(LOWORD(dwIPAddress))
);
m_ptrIPCtrl为IP控件对应的变量
m_strIPValue为得到的字符串形式的IP地址