为控件设置数据
m_addr.SetAddress(192,168,0,2);
从控件得到数据
int GetAddress(
BYTE& nField0,
BYTE& nField1,
BYTE& nField2,
BYTE& nField3
);
int GetAddress(
DWORD& dwAddress
);
方法一就是使用第一个函数形式
BYTE b1,b2,b3,b4;
m_addr.GetAddress(b1,b2,b3,b4);
如果采用第二个重载函数,
int GetAddress(DWORD& dwAddress);
返回值:IP地址控件中非空域的数目。
参数: nField0 来自打包的IP地址的关于域0值的参考。
nField1 来自打包的IP地址的关于域1值的参考。
nField2 来自打包的IP地址的关于域2值的参考。
nField3 来自打包的IP地址的关于域3值的参考。
dwAddress 接收IP地址的DWORD值的地址的参考。请参阅说明,以了解如何填充dwAddress的表格。
说明:
此成员函数实现Win32消息IPM_GETADDESS的功能,如同在联机文档“平台SDK”中描述的。
在上面第一个原型中,控件中从域0到域3的数,从左到右读取,分别放入四个参数中。在上面第二个原型中,dwAddress如下设置:
域 包含域值的位
0 24到31
1 16到23
2 8到15
3 0到7
因此要想获取每个域的IP值,需将dwAddress中对应域值的位进行分离,具体方法如下
/*********************************************************
Function: IPToStr
Desc: change the IP address type from DWORD to CString
Input: dwIP, DWORD;
Output:
Return: CString ip address;
**********************************************************/
CString IPToStr(DWORD dwIP)
{
CString strIP = _T("");
WORD add1,add2,add3,add4;
add1=(WORD)(dwIP&255);
add2=(WORD)((dwIP>>8)&255);
add3=(WORD)((dwIP>>16)&255);
add4=(WORD)((dwIP>>24)&255);
strIP.Format("%d.%d.%d.%d",add4,add3,add2,add1);
return strIP;
}
CIPAddressCtrl类的使用(IP地址与CString的互相转化)
2008-09-23 16:22
//将CString 型IP地址在IPAddressCtrl中显示
CString strIP="192.168.0.10";
DWORD dwIP;
dwIP = inet_addr(strIP);
unsigned char *pIP = (unsigned char*)&dwIP;
m_ipAddr.SetAddress(*pIP, *(pIP+1), *(pIP+2), *(pIP+3));
//将IPAddressCtrl中的IP地址获得并转换成CString型
unsigned char *pIP;
CString strIP;
DWORD dwIP;
m_ipAddr.GetAddress(dwIP);
pIP = (unsigned char*)&dwIP;
strIP.Format("%u.%u.%u.%u",*(pIP+3), *(pIP+2), *(pIP+1), *pIP);
CIPAddressCtrl的用法
CIPAddressCtrl的用法
CIPAddressCtrl的值转换成CString,CString转换成CIPAddressCtrl
CString strIP="192.168.1.184";
m_IPAddr.SetWindowText(strIP);
CString strIP;
m_IPAddr.GetWindowText(strIP);
CString strIP="192.168.1.184";
DWORD dwAddress= ntohl( inet_addr(strIP));
m_IPAddr.SetAddress(dwAddress);
为控件设置数据
m_addr.SetAddress(192,168,0,2);
从控件得到数据
BYTE b1,b2,b3,b4;
m_addr.GetAddress(b1,b2,b3,b4);
2008-09-23 16:22
//将CString 型IP地址在IPAddressCtrl中显示
CString strIP="192.168.0.10";
DWORD dwIP;
dwIP = inet_addr(strIP);
unsigned char *pIP = (unsigned char*)&dwIP;
m_ipAddr.SetAddress(*pIP, *(pIP+1), *(pIP+2), *(pIP+3));
//将IPAddressCtrl中的IP地址获得并转换成CString型
unsigned char *pIP;
CString strIP;
DWORD dwIP;
m_ipAddr.GetAddress(dwIP);
pIP = (unsigned char*)&dwIP;
strIP.Format("%u.%u.%u.%u",*(pIP+3), *(pIP+2), *(pIP+1), *pIP);
CIPAddressCtrl的用法
CIPAddressCtrl的用法
CIPAddressCtrl的值转换成CString,CString转换成CIPAddressCtrl
CString strIP="192.168.1.184";
m_IPAddr.SetWindowText(strIP);
CString strIP;
m_IPAddr.GetWindowText(strIP);
CString strIP="192.168.1.184";
DWORD dwAddress= ntohl( inet_addr(strIP));
m_IPAddr.SetAddress(dwAddress);
为控件设置数据
m_addr.SetAddress(192,168,0,2);
从控件得到数据
BYTE b1,b2,b3,b4;
m_addr.GetAddress(b1,b2,b3,b4);