前言
由于微软的操作系统Windows一直都在个人计算机领域有着广泛的应用和市场占有率,所以Windows网络编程技术也受到了越来越多的程序员和软件公司的青睐。为了便于大家更好地学习Windows网络编程技术,笔者编写了本书。
本书以Visual C++为开发环境,系统地讲解了Windows网络编程所涉及的各种技术。书中穿插了21个实战开发案例,帮助读者身临其境地体验实际的项目案例开发过程,从而提高开发水平。为了帮助读者高效而直观地学习本书内容,笔者专门为本书录制了大量的配套多媒体教学视频辅助读者学习。阅读完本书,相信读者对书中的项目案例适当修改,即可编写出功能更加强大的网络应用。
本书中的案例除了适合广大的Windows网络编程爱好者学习之外,还是大中专院校相关专业的学生做毕业设计和课题设计的绝佳参考。
本书有何特色
1.配多媒体教学视频光盘
本书提供了大量的多媒体语音教学视频,让读者更加直观地理解本书内容,提高学习效率。另外,配书光盘中还提供了本书涉及的实例源程序,以方便读者使用。
2.由浅入深,循序渐进
本书首先从C/S网络模型等网络编程基础知识开始向读者讲解,并在读者不断学习的过程中,引进新的知识点,鼓励读者独立修改各章中的实例程序。然后重点通过21个实战案例让读者进一步掌握Visual C++网络编程的各种技术。
3.案例精讲,实战为王
本书突出实用性强的特点,第4~12章以及第14章和第15章都提供了典型的网络开发案例精讲,涵盖了网络编程应用的主流应用,既涉及与服务器的交互,如FTP服务器、邮箱服务器,又涉及S/C结构应用的搭建,如聊天室、文件传输器等。
4.提供教学PPT,方便老师教学
本书适合能力培养型的院校和职业学校作为教学用书,所以专门制作了教学PPT,以方便各院校的老师教学时使用。
本书内容安排
第1篇 Visual C++网络开发基础(第1~3章)
本篇主要内容包括Visual C++网络编程概述、Socket套接字编程和多线程与异步套接字编程,让读者对网络编程有个系统的认识,有利于本书后面章节的学习。
第2篇 Visual C++网络开发典型应用(第4~12章)
本篇主要内容包括FTP客户端、网页浏览器、网络通信器、邮件接收和发送客户端、网络文件传输器、Q版聊天软件和聊天室等开发案例,让读者学会如何使用Visual C++编写软件。
第3篇 Visual C++串口通信开发(第13~15章)
本篇主要内容包括串口通信基础及应用和VC发送手机短信,让读者了解计算机串口,然后学会通过串口来控制计算机外围设备。本篇介绍通过串口给另一台计算机和短信猫发送数据来完成相应的功能。
本书读者对象
* Windows网络编程爱好者;
* 想提高Visual C++编程水平的人员;
* 大中专院校的学生;
* 相关培训班的学员。
编著者
导语摘要
本书结合21个实战开发案例,全面、系统地介绍了Visual C++网络开发所涉及的各种技术。读者可以以中的案例为基础,编写出功能更加强大的网络应用。另外,作者专门为本书录制了大量的配套教学视频,以帮助读者更好地学习内容。这些视频和书中的实例源代码一起收录于本书的配书光盘中。
共15章,分为3篇。第1篇介绍了Visual C++网络开发基础知识,包括Visual C++网络编程概述、Socket套接字编程和多线程与异步套接字编程。第2篇介绍了7大类网络开发典型应用案例的实现,包括FTP客户端实现之一、FTP客户端实现之二、网页浏览器、网络通信器、邮件接收和发送客户端之一、邮件接收和发送客户端之二、网络文件传输器、Q版聊天软件和聊天室。第3篇介绍了Visual C++串口通信开发,包括串口通信基础、串口通信编程应用和VC发送手机短信实战案例。
适合用Visual CH进行网络程序开发的人员阅读,也适合想进一步提升Visual C++网络编程水平的人员阅读。另外,非常适合大中专院校的学生作为毕业设计和课题设计的参考书。
超值、大容量DVD光盘
14小时配套教学视频及本书实例源文件
20.5小时Visual C++开发专题教学视频
11.3小时Visual C++开发进阶教学视频
13个Visual C++典型模块源文件
3个Visual C++拓展项目案例源文件
本书精华内容
Socket套接字编程(102分钟视频)
多线程与异步套接字编程(119分钟视频)
实现FTP客户端(125分钟视频)
构建网页浏览器(36分钟视频)
实现网络通信器(26分钟视频)
邮件接收和发送(151分钟视频)
网络文件传输(32分钟视频)
Q版聊天软件(44分钟视频)
聊天室(71分钟视频)
串口通信(69分钟视频)
短信猫发送短信(38分钟视频)
目录
第1篇 Visual C++网络开发基础
第1章 Visual C++网络编程概述( 教学视频:21分钟)
1.1 网络基础知识
1.1.1 OSI七层网络模型
1.1.2 TCP/IP协议
1.1.3 C/S编程模型
1.2 网络编程基础
1.2.1 Sockets套接字
1.2.2 网络字节顺序
1.3 Windows Sockets介绍
1.3.1 CAsyncSocket类
1.3.2 CSocket类
1.4 小结
第2章 Socket套接字编程( 教学视频:102分钟)
2.1 寻址方式和字节顺序
2.1.1 寻址方式
2.1.2 字节顺序
2.1.3 Socket相关函数
2.2 Winsock网络程序开发流程
2.2.1 VC中创建工程的步骤
2.2.2 Winsock编程流程
2.2.3 基于TCP的Sockets编程
2.2.4 基于UDP的Sockets编程
2.3 网络程序实例应用
2.3.1 TCP客户端程序
2.3.2 TCP服务器程序
2.4 小结
第3章 多线程与异步套接字编程( 教学视频:119分钟)
3.1 多线程技术
3.1.1 基本概念
3.1.2 创建线程
3.2 实现线程同步
3.2.1 临界区对象
3.2.2 事件对象
3.2.3 互斥对象
3.3 进程间通信
3.3.1 邮槽
3.3.2 命名管道
3.3.3 匿名管道
3.4 设置I/O模式
3.4.1 异步I/O模式
3.4.2 WSAAsyncSelect方法
3.5 小结
第2篇 Visual C++网络开发典型应用
第4章 FTP客户端实现之一( 教学视频:54分钟)
4.1 FTP工作原理
4.1.1 FTP数据结构
4.1.2 FTP数据传输模式
4.1.3 与服务器进行连接
4.1.4 登录验证
4.1.5 关闭数据连接
4.1.6 FTP常用命令
4.1.7 数据校验与重发控制
4.2 FTP客户端实例
4.2.1 创建工程
4.2.2 连接和登录验证
4.2.3 更新文件列表
4.2.4 文件上传
4.2.5 文件下载
4.2.6 安全退出
4.3 小结
第5章 FTP客户端实现之二( 教学视频:71分钟)
5.1 FTP客户端简介
5.1.1 树形结构的应用
5.1.2 列表结构的应用
5.1.3 信息框的应用
5.1.4 浮动对话框的应用
5.2 关键技术讲解
5.2.1 制作、使用浮动对话框
5.2.2 客户区的分割
5.2.3 树形视图项目拖动效果
5.2.4 列表视图项目拖动效果
5.3 实现FTP客户端
5.3.1 WinInet类介绍
5.3.2 FTP服务器操作
5.3.3 遍历本地文件夹资源
5.3.4 拖动文件实现上传
5.3.5 拖动文件实现下载
5.3.6 多次修改的头文件
5.4 小结 127
第6章 网页浏览器( 教学视频:36分钟)
6.1 HTTP协议
6.1.1 HTTP基础
6.1.2 HTTP请求
6.1.3 HTTP响应
6.2 应用Microsoft Web控件实例
6.2.1 创建工程
6.2.2 添加Microsoft Web控件
6.2.3 输入地址,载入网页
6.2.4 网页导航
6.3 应用CHtmlView实例
6.3.1 创建工程
6.3.2 输入地址,载入网页
6.3.3 网页导航
6.4 小结
第7章 网络通信器( 教学视频:26分钟)
7.1 通信原理及连接
7.1.1 通信原理
7.1.2 通信连接
7.2 服务器端程序
7.2.1 开启服务器
7.2.2 响应连接与读取
7.2.3 发送信息
7.2.4 断开连接
7.3 客户端程序
7.3.1 连接服务器
7.3.2 响应读取
7.3.3 发送信息
7.3.4 断开连接
7.4 客户端与服务器端
7.5 小结
第8章 邮件接收和发送客户端之一( 教学视频:57分钟)
8.1 调用Windows自带的邮件发送程序
8.1.1 调用Windows自带程序
8.1.2 CreateProcess()函数
8.2 SMTP会话过程
8.2.1 连接服务器
8.2.2 SMTP命令
8.2.3 发送命令与接收响应
8.3 SMTP客户端——发送邮件
8.3.1 准备工作
8.3.2 SMTP登录身份验证方式
8.3.3 连接登录服务器
8.3.4 构造并发送邮件
8.3.5 退出程序
8.4 POP3简介
8.5 POP3客户端——接收邮件
8.5.1 准备工作
8.5.2 连接登录服务器
8.5.3 获取邮件列表
8.5.4 获取并解析邮件内容
8.5.5 退出程序
8.6 小结
第9章 邮件接收和发送客户端之二( 教学视频:94分钟)
9.1 邮件管理器简介
9.1.1 程序主界面
9.1.2 “设置”对话框
9.1.3 收件箱
9.1.4 发件箱
9.1.5 “正在处理中…”对话框
9.2 Jmail简介
9.2.1 如何使用Jmail
9.2.2 属性
9.2.3 方法
9.2.4 发送和接收邮件示例
9.3 CBitButtonNL简介
9.3.1 按钮图像
9.3.2 按钮字体
9.3.3 按钮声音
9.3.4 自绘按钮
9.3.5 头文件总览
9.4 邮件管理程序示例
9.4.1 程序主窗体
9.4.2 设置窗体
9.4.3 收件箱窗体
9.4.4 发件箱窗体
9.4.5 “正在处理中…”窗体
9.5 小结
第10章 网络文件传输器( 教学视频:32分钟)
10.1 CFile类
10.1.1 构造函数
10.1.2 读写文件
10.1.3 文件关闭
10.1.4 文件定位
10.2 使用API函数操作文件
10.2.1 创建文件
10.2.2 操作文件
10.3 内存映射文件
10.4 文件传输服务器实例
10.5 文件传输客户端实例
10.6 小结
第11章 Q版聊天软件( 教学视频:44分钟)
11.1 设计软件通讯时的消息格式
11.2 Q版聊天服务器端
11.2.1 工程创建及界面设计
11.2.2 对话框的初始化
11.2.3 服务器的开启和关闭
11.2.4 自定义客户端信息结构
11.2.5 其他封装函数
11.2.6 自定义响应函数
11.2.7 QQ_serverDlg.h文件全观
11.3 Q版聊天客户端
11.3.1 工程创建及界面设计
11.3.2 主对话框的初始化
11.3.3 连接服务器
11.3.4 自定义封装函数
11.3.5 自定义响应函数
11.3.6 发送信息对话框
11.3.7 QQ_clientDlg.h文件全观
11.4 小结
第12章 聊天室( 教学视频:71分钟)
12.1 聊天室功能简介
12.1.1 开启聊天室服务器
12.1.2 登录聊天室
12.1.3 聊天对话框
12.2 CSocket简介
12.2.1 创建Socket
12.2.2 侦听连接请求
12.2.3 接受连接请求
12.2.4 发送信息
12.2.5 接收信息
12.3 我们约定个协议
12.4 灵活可靠的控件
12.4.1 位图按钮
12.4.2 IP地址编辑框
12.4.3 列表控件
12.4.4 图像组合框控件
12.5 聊天室服务器
12.5.1 聊天室服务器界面设计
12.5.2 添加套接字类
12.5.3 服务器功能实现
12.6 聊天室客户端
12.6.1 聊天室客户端界面设计
12.6.2 添加套接字类
12.6.3 客户端功能实现
12.7 小结
第3篇 Visual C++串口通信开发
第13章 串口通信基础( 教学视频:17分钟)
13.1 串口通信基本概念 352
13.1.1 串口通信概述 352
13.1.2 单工、半双工和全双工的定义 353
13.1.3 同步方式与异步方式 355
13.1.4 串口通信的应用方向 356
13.2 常用数据校验法 356
13.2.1 奇偶校验 356
13.2.2 循环冗余校验 357
13.3 小结 358
第14章 串口通信编程应用( 教学视频:52分钟)
14.1 MFC串口控件编程 359
14.1.1 VC中应用MSComm控件编程步骤
14.1.2 MSComm控件类 360
14.1.3 MSComm控件串行通信编程方法
14.1.4 在基于对话框的程序中使用MSComm控件
14.2 串口API编程 369
14.2.1 Windows API串口编程概述
14.2.2 API串口编程中用到的结构及相关概念说明
14.2.3 OVERLAPPED异步I/O重叠结构
14.2.4 Win32 API串口通信编程的一般流程
14.2.5 Win32 API同步串口编程实例
14.2.6 Win32 API异步串口编程实例
14.3 小结 385
第15章 VC发送手机短信( 教学视频:38分钟)
15.1 短信猫介绍
15.1.1 短信猫简介
15.1.2 短信猫分类
15.1.3 短信猫开发接口
15.2 实现与短信猫的硬件连接
15.2.1 短信猫的硬件设备
15.2.2 PC连接短信猫
15.3 相关AT指令介绍
15.3.1 AT指令介绍
15.3.2 AT指令
15.4 短信发送规则
15.4.1 Text模式
15.4.2 PDU模式
15.5 超级终端演示信息发送
15.5.1 连接短信猫
15.5.2 Text模式演示
15.5.3 PDU模式演示
15.6 VC短信发送示例
15.6.1 示例展示
15.6.2 封装串口操作
15.6.3 连接串口
15.6.4 PDU模式短信
15.6.5 Text模式短信
15.7 小结
内容摘要
本书结合21个实战开发案例,全面、系统地介绍了Visual C++网络开发所涉及的各种技术。读者可以以中的案例为基础,编写出功能更加强大的网络应用。另外,作者专门为本书录制了大量的配套教学视频,以帮助读者更好地学习内容。这些视频和书中的实例源代码一起收录于本书的配书光盘中。
共15章,分为3篇。第1篇介绍了Visual C++网络开发基础知识,包括Visual C++网络编程概述、Socket套接字编程和多线程与异步套接字编程。第2篇介绍了7大类网络开发典型应用案例的实现,包括FTP客户端实现之一、FTP客户端实现之二、网页浏览器、网络通信器、邮件接收和发送客户端之一、邮件接收和发送客户端之二、网络文件传输器、Q版聊天软件和聊天室。第3篇介绍了Visual C++串口通信开发,包括串口通信基础、串口通信编程应用和VC发送手机短信实战案例。
适合用Visual CH进行网络程序开发的人员阅读,也适合想进一步提升Visual C++网络编程水平的人员阅读。另外,非常适合大中专院校的学生作为毕业设计和课题设计的参考书。
超值、大容量DVD光盘
14小时配套教学视频及本书实例源文件
20.5小时Visual C++开发专题教学视频
11.3小时Visual C++开发进阶教学视频
13个Visual C++典型模块源文件
3个Visual C++拓展项目案例源文件
本书精华内容
Socket套接字编程(102分钟视频)
多线程与异步套接字编程(119分钟视频)
实现FTP客户端(125分钟视频)
构建网页浏览器(36分钟视频)
实现网络通信器(2
以下为对购买帮助不大的评价