内容简介
第1章 网络编程基础
1.1 网络编程相关的基本概念
1.1.1 网络编程与进程通信
1.1.2 Internet中网间进程的标识
1.1.3 网络协议的特征
1.1.4 高效的用户数据报协议
1.1.5 可靠的传输控制协议
1.2 三类网络编程
1.2.1 基于TCP/IP协议栈的网络编程
1.2.2 基于WWW应用的网络编程
1.2.3 基于.NET框架的Web Services网络编程
1.3.1 网络应用软件的地位和功能
1.3 客户机/服务器交互模式
1.3.2 客户机/服务器模式
1.3.3 客户机与服务器的特性
1.3.4 容易混淆的术语
1.3.5 客户机与服务器的通信过程
1.3.6 网络协议与C/S模式的关系
1.3.7 错综复杂的C/S交互
1.3.8 服务器如何同时为多个客户机服务
1.3.9 标识一个特定服务
习题
第2章 UNIX套接字网络编程接口
2.1 UNIX套接字网络编程接口的产生与发展
2.1.1 问题的提出
2.1.3 套接字编程接口的两种实现方式
2.1.2 套接字编程接口的起源与应用
2.1.4 套接字通信与UNIX操作系统的输入/输出
2.2 套接字编程的基本概念
2.2.1 什么是套接字
2.2.2 套接字的特点
2.2.3 套接字的应用场合
2.2.4 套接字使用的数据类型和相关的问题
2.3 面向连接的套接字编程
2.3.1 套接字的工作过程
2.3.2 UNIX套接字编程接口的系统调用
2.3.3 面向连接的套接字编程实例
2.3.4 进程的阻塞问题和对策
2.4 无连接的套接字编程
2.4.1 无连接的套接字编程的两种模式
2.4.2 两个专用的系统调用
2.4.3 数据报套接字的对等模式编程实例
习题
第3章 Windows环境的网络编程
3.1 Windows Sockets规范
3.1.1 概述
3.1.2 Windows Sockets规范
3.1.3 WinSock规范与Berkeley套接口的区别
3.2 WinSock 1.1的库函数
3.2.1 WinSock的注册与注销
3.2.2 WinSock的错误处理函数
3.2.3 主要的WinSock函数
3.2.4 WinSock的辅助函数
3.2.5 WinSock的信息查询函数
3.2.6 WSAAsyncGetXByY类型的扩展函数
3.3 网络应用程序的运行环境
习题
第4章 MFC编程
4.1 MFC概述
4.1.1 MFC是一个编程框架
4.1.2 典型的MDI应用程序的构成
4.2 MFC和Win32
4.2.1 MFC对象和Windows对象的关系
4.2.2 几个主要的类
4.3 Cobject类
4.3.1 CObject类的定义
4.3.2 CObject类的特性
4.4 消息映射的实现
4.5 MFC对象的创建
4.5.1 MFC对象的关系
4.5.2 MFC提供的接口
4.5.3 MFC对象的创建过程
4.6 应用程序的退出
习题
第5章 MFC WinSock类的编程
5.1 CAsyncSocket类
5.1.1 使用CAsyncSocket类的一般步骤
5.1.2 创建CAsyncSocket类对象
5.1.3 关于CAsyncSocket类可以接受并处理的消息事件
5.1.4 客户机端套接字对象请求连接到服务器端套接字对象
5.1.5 服务器接受客户机的连接请求
5.1.6 发送与接收流式数据
5.1.7 关闭套接字
5.1.8 错误处理
5.1.9 其他的成员函数
5.2 CSocket类
5.2.1 创建CSocket对象
5.2.2 建立连接
5.2.3 发送和接收数据
5.2.4 CSocket类、CArchive类和CSocketFile类
5.3 CSocket类的编程模型
5.2.5 关闭套接字和清除相关的对象
5.4 CAsyncSocket类的应用实例
5.4.1 实现目标
5.4.2 创建客户机端应用程序
5.4.3 客户机端程序的类与消息驱动
5.4.4 客户机端程序主要功能的代码和分析
5.4.5 创建服务器端程序
5.4.6 服务器端程序的流程和消息驱动
5.4.7 点对点交谈的服务器端程序主要功能的代码和分析
5.5 用CSocket类实现的聊天室程序
5.5.1 聊天室程序的功能
5.5.2 创建聊天室的服务器端程序
5.5.3 聊天室服务器端程序的主要实现代码和分析
5.5.4 创建聊天室的客户机端程序
5.5.5 聊天室客户机端程序的主要实现代码和分析
习题
第6章 WinInet编程
6.1 使用WinInet API的共性问题
6.1.1 WinInet API函数使用的HINTERNET句柄
6.1.2 典型的操作流程和它们使用的句柄
6.1.3 如何获取WinInet API函数执行的错误信息
6.1.4 关于返回信息的缓冲区参数
6.1.5 WinInet API的异步操作模式
6.1.6 回调函数的定义实现与注册
6.2.1 一般步骤
6.2 使用WinInet API编制FTP客户机程序的要点
6.2.2 搜寻并列举FTP服务器上的文件和目录
6.2.3 查知或改变FTP服务器的当前目录
6.2.4 操作服务器上的目录
6.2.5 下载FTP服务器中的文件
6.2.6 上传文件
6.2.7 删除FTP服务器中的文件
6.2.8 重命名FTP服务器上的文件或目录
6.3 MFC WinInet类
6.3.1 概述
6.3.2 MFC WinInet所包含的类
6.3.3 使用WinInet类编程的一般步骤
6.3.4 创建CInternetSession类对象
6.3.6 创建连接类对象
6.3.5 查询或设置Internet请求选项
6.3.7 使用文件检索类
6.3.8 重载OnStatusCallback函数
6.3.9 创建并使用网络文件类对象
6.3.10 CInternteException类
6.4 MFC WinInet类应用程序编程实例
6.4.1 程序要实现的功能
6.4.2 创建应用程序的过程
习题
第7章 WinSock的多线程编程
7.1 WinSock为什么需要多线程编程
7.1.1 WinSock的两种I/O模式
7.2.1 Win32 OS是单用户多任务的操作系统
7.2 Win32操作系统下的多进程多线程机制
7.1.2 两种模式的优缺点及解决方法
7.2.2 Win32 OS是支持多线程的操作系统
7.2.3 多线程机制在网络编程中的应用
7.3 VC++6.0对多线程网络编程的支持
7.3.1 MFC支持的两种线程
7.3.2 创建MFC的工作线程
7.3.3 创建并启动用户界面线程
7.3.4 终止线程
7.4 多线程网络编程的例子
7.4.1 编写线程函数
7.4.2 添加事件处理函数
习题
8.1 select模型
第8章 WinSock的I/O模型
8.2 WSAAsyncSelect异步I/O模型
8.3 WSAEventSelect事件选择模型
8.4 其他模型
习题
第9章 HTTP及高级编程
9.1 HTTP
9.1.1 HTTP的基本概念
9.1.2 HTTP的应用
9.2 利用CHtmlView类创建Web浏览器型的应用程序
9.2.1 CHtmlView类与WebBrowser控件
9.2.2 CHtmlView类的成员函数
9.2.3 创建一个Web浏览器型的应用程序的一般步骤
9.3.1 程序实现的目标
9.3 Web浏览器应用程序实例
9.3.2 创建实例程序
习题
第10章 电子邮件协议与编程
10.1 电子邮件系统的工作原理
10.1.1 电子邮件的特点
10.1.2 电子邮件系统的构成
10.1.3 电子邮件系统的实现
10.2 简单邮件传送协议
10.2.1 概述
10.2.2 SMTP客户机与SMTP服务器之间的会话
10.2.3 常用的SMTP命令
10.2.4 常用的SMTP响应码
10.2.5 SMTP的会话过程
10.2.6 使用WinSock来实现电子邮件客户机与服务器的会话
10.3 电子邮件信件结构详述
10.3.1 Internet文本信件的格式标准——RFC822
10.3.2 信件的头部
10.3.3 构造和分析符合RFC822标准的电子信件
10.4 MIME编码解码与发送附件
10.4.1 MIME概述
10.4.2 MIME定义的新的信头字段
10.4.3 MIME邮件的内容类型
10.4.4 MIME邮件的编码方式
10.5.2 POP3的会话过程
10.5.1 POP3
10.5 POP3与接收电子邮件
10.5.3 POP3会话的3个状态
10.5.4 POP3标准命令
10.5.5 接收电子邮件的一般步骤
10.6 接收电子邮件的程序实例
10.6.1 实例程序的目的和实现的技术要点
10.6.2 创建应用程序的过程
10.7 发送电子邮件的程序实例
10.7.1 实例程序的目的和实现的技术要点
10.7.2 创建应用程序的过程
习题
参考文献