当前位置: 首页 > 编程技术 > 正文

MFC-IP地址控件获取IP地址方法

在MFC中提供了IP地址空间,如果是编写网络程序并且需要获取IP的话,那么就要用到IP地址控件,

在MFC中,与IP地址相关的函数被封装在CIPAddressCtrl类中,如果你对这个类感兴趣的话可以通过MSDN查询它的详细信息

这里假设我添加了一个IP地址控件,控件的ID为IDC_SingleIP;

那么获取IP地址控件输入的IP地址可以用下面的方法实现:

CString IP;
BYTE f1,f2,f3,f4; //用于判断IP地址是否输入合法,为GetAddress四个参数
char tmp[255]; //并无实际用途,主要用做itoa的第二个参数
CIPAddressCtrl * Out_SingleIP	=(CIPAddressCtrl *)GetDlgItem(IDC_SingleIP);  //获取IP地址控件的句柄
/* 这里说明下,通过CIPCIPAddressCtrl的类成员函数GetAddress获得输入的IP地址的每一位,
IP地址的每一位存放到四个参数中,返回值为非空白区域的个数,如果小于4的话,说明IP地址输入不合法
*/
if(Out_SingleIP->GetAddress(f1,f2,f3,f4)<4){  
MessageBox("请输入正确的IP","警告",MB_ICONWARNING);
return ;
}
//转换为点分十进制IP形式
IP = _itoa(f1,tmp,10);   
/*通过itoa函数将BYTE转换为char *或者是CString型,第二个参数为输出参数,第三个参数为进制,
返回值为char *型
*/
IP+='.';
IP+=_itoa(f2,tmp,10);
IP+='.';
IP+=_itoa(f3,tmp,10);
IP+='.';  //增加IP地址的".";
IP+=_itoa(f4,tmp,10);

//最后就得到了CString型的IP地址

这样就完全从MFC的IP地址控件中获取到了IP地址了,但是现在保存在CString类中,有时如果需要将IP地址转换为char *的话,可以参考前面的文章:CString转int,CString转char,Char转int,int转char的实现



本文固定链接: http://kuaile.in/archives/546 | 蒲公英的博客

该日志由 蒲公英 于2012年03月02日发表在 编程技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: MFC-IP地址控件获取IP地址方法 | 蒲公英的博客
关键字:
【上一篇】
【下一篇】

MFC-IP地址控件获取IP地址方法:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter