一、前提条件

项目中增加对winsock的支持:在应用程序向导中勾选“Windows套接字”选项,也可以手工添加相关的*.h文件和代码实现。

二、编辑对话框资源,添加Button控件、Edit控件和Static Text空间,如下图:

为控件添加变量:

CString m_addr;//对应于Static Text,用于显示IP地址
CString m_host;//对应于Edit控件,用于编辑域名对应于Static Text,用于显示IP地址

三、添加Button事件代码:

void CMFCWinsockDlg::OnBnClickedButton1()
{
 LPHOSTENT lpHost;
 struct    sockaddr_in saDest;

UpdateData(TRUE);//通知把Edit控件的字符串内容传送到m_host变量
 
 lpHost = gethostbyname(m_host);//获得IP地址
 if (lpHost == NULL)
 {

//do somthing
  return;
 }
 
 saDest.sin_addr.s_addr = *((u_long FAR *) (lpHost->h_addr));
 m_addr = inet_ntoa(saDest.sin_addr);
 UpdateData(FALSE);//通知把m_addr字符串内容传送到Static Text控件显示
}

注意事项:在项目属性中设置使用多字节字符集,使用Unicode字符集时编译出错:

error C2664: “gethostbyname”: 不能将参数 1 从“CString”转换为“const char *” 。

另外,在设置成使用多字节字符集后,程序界面变成了传统界面风格,要变回XP风格,可以编辑一个.manifest文件加进项目中编译,我另文说明。

域名转换为IP地址示例相关推荐

  1. ios中域名转换为ip地址

    ios中域名转换为ip地址 2013-01-29 16:06 863人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载. [cpp] view plaincopy #i ...

  2. DNS这位“翻译官”是如何转换域名和IP地址的?

    DNS这位"翻译官"是如何转换域名和IP地址的? Linux就该这么学 1周前 DNS( Domain Name System)是"域名系统"的英文缩写,是一种 ...

  3. 域名和IP地址的联系

    什么是域名?什么是IP地址? 在Internet上有成千上万台主机,为了区分这些主机,每一台主机都被分配一个IP地址.但是由于IP地址难以记忆,因此有了方便记忆的域名. 域名由阿拉伯数字和英文字母.& ...

  4. 获取指定域名的IP地址

    获取指定域名的IP地址 所需函数:gethostbyname 函数原型: struct hostent* gethostbyname(const char *name) 参数:const char * ...

  5. 一文看懂:网址,URL,域名,IP地址,DNS,域名解析

    今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答形式让读者更加深刻理解网址.URL.IP地址.域名.DNS.域名解析,希望有助于读者的学习,面试和工 ...

  6. 网址,URL,域名,IP地址,DNS,域名解析

    网址,URL,域名,IP地址,DNS,域名解析 文章简介 一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文. 编写形式:QA 背景知识 互联网上的所有数据都是存储在主机(服务器)上互联 ...

  7. DNS(从域名到IP地址的对应)

    因特网上的主机可以使用多种方式进行标识.一种标识方法是用它的主机名,如cnn.com.www.yahoo.com等,这些名字便于记忆也乐于被人们接受.然而,主机名几乎没有提供关于主机在因特网中位置的信 ...

  8. gethostbyname()函数:通过域名获取IP地址

    客户端中直接使用 IP 地址会有很大的弊端,一旦 IP 地址变化(IP 地址会经常变动),客户端软件就会出现错误. 而使用域名会方便很多,注册后的域名只要每年续费就永远属于自己的,更换 IP 地址时修 ...

  9. linux shell 域名 ip,Shell脚本一种检查Linux中域名和IP地址所有权信息、检查多个域名的到期日期工具...

    Shell脚本一种检查Linux中域名和IP地址所有权信息.检查多个域名的到期日期工具 jwhois是一个命令行实用程序,可从whois服务器(whois数据库)中获取有关域名所有权的信息. Whoi ...

最新文章

  1. 远场语音识别错误率降低30%,百度提基于复数CNN网络的新技术
  2. 路飞学院-Python爬虫实战密训班-第2章
  3. 用fiddler解决跨域访问
  4. 电脑解锁后黑屏有鼠标_电脑开机黑屏只有鼠标如何解决
  5. 远程办公:如何招聘有自驱力的员工?
  6. 传统ORB-SLam中位姿优化中雅克比矩阵讲解
  7. 【转载】卸载Sql Server 2014数据库
  8. Jenkins checkout的文件 , TortoiseSVN 无法提交。 问题已经解决啦!
  9. 福州太冷?那就快来这些地方!不仅有威廉王子的蜜月圣地,也有贝克汉姆的度假天堂!全部免签or落地签...
  10. 用计算机画函数,用计算机画函数图像 优质课教案设计
  11. 安卓中COLOR的值分析
  12. 行人重识别通用数据集及介绍
  13. 安徽大学c语言作业题库,安徽大学C语言考试试卷
  14. 小程序滚动穿透解决方案
  15. Redis从生米煮成熟饭
  16. 滚动字幕怎么制作,视频的滚动字幕如何制作?
  17. 九天毕昇深度学习平台常见环境问题及解决
  18. 打开计算机网络自动连接,怎么让电脑一开机就自动连接到自己的wifi
  19. python装饰器与闭包---装饰器
  20. 基于单片机的功放protues_基于Proteus的音频放大器电路设计与仿真详解.doc

热门文章

  1. 强制退出当前ubuntu命令
  2. Java匿名类习题_输出英文字母表和希腊字母表
  3. 2021-08-30-全排列-逆序数-排列的奇偶性
  4. Java学习笔记,面向猴子记笔记2021/5/29更新
  5. 如何选型APS系统,还需明确这七大关键因素
  6. linux no root file or directory,安装Ubuntu时出现“no root file system is defined”的问题解决...
  7. 亮相Google I/O,字节跳动是这样应用Flutter的
  8. win10加装机械硬盘卡_win10重装,机械硬盘和SSD的C盘如何分区?记住这2点电脑10年不卡...
  9. 2018-12-22-jekyll-theme-H2O
  10. 有奖调研 | 让虚拟照入现实的完美AR开发平台长什么样?