
其实就是取本地主机IP
char sHostName[256]; // 存放本机名
gethostname(sHostName,256); // 取本机名
HOSTENT pHost = gethostbyname(sHostName);// 取本机信息
if(pHost != NULL)
{
CString sIP; //存放本机IP
in_addr addr =(in_addr) (pHost->h_addr_list); // 取第一个IP地址
sIPFormat("本机IP: %s", inet_ntoa(addr[0])); // IP地址格式化
}
String^ ip=System::Net::Dns::GetHostAddresses(Environment::MachineName)[0]->ToString();
System::Net::Dns::GetHostAddresses(Environment::MachineName)返回一个array<System::Net::IPAddress^>的数组,分别存有本机的所有IP地址(一般电脑都只有一个IP,所以直接用上面一句就可以得到IP地址的字符串。
1用GetDlgItem获取该控件指针,如:
CIPAddressCtrl p=(CIPAddressCtrl )GetDlgItem(IDC_IPADDRESS1);
2用SetAddress设置IP地址:
p->SetAddress(192,168,1,1);
3用GetAddress获取IP地址:
BYTE x1,x2,x3,x4;
p->GetAddress(x1,x2,x3,x4);
更复杂的用法可以查看文档,希望帮到你
IP控件也是常用的控件之一,也是最简单的一个控件,MFC对他的封装无非就是一个字符串的处理。使用起来也相当简便。
首先拖动控件到指定的地方,用ClassWizard为其关联一个变量,我们看到变量的类型任然是一个类,IPAddressCtrl的类,下面介绍几种常用的 *** 作:
1, 将IP地址输出到Ip控件显示:只需要短短两行代码,假定要显示的IP地址是19216811,则在确定的消息相应函数添加
Cpp代码
CString a="19216811";
m_ipSetWindowText(a);
2 将IP地址输入到程序中:
Cpp代码
BYTE a1,a2,a3,a4;
m_ipGetAddress(a1,a2,a3,a4);
CString str;
strFormat("%d%d%d%d",a1,a2,a3,a4);//这里的nf得到的值是IP值了
MessageBox(str);
以上就是关于如何在MFC中显示TCP/IP的信息全部的内容,包括:如何在MFC中显示TCP/IP的信息、MFC网络编程怎样获取本机DNS等主机配置信息、mfc ip控件问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)