图书介绍

精通Windows Sockets网络开发 基于Visual C++实现PDF|Epub|txt|kindle电子书版本网盘下载

精通Windows Sockets网络开发 基于Visual C++实现
  • 孙海民编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:7115179115
  • 出版时间:2008
  • 标注页数:462页
  • 文件大小:192MB
  • 文件页数:477页
  • 主题词:窗口软件-网络软件-程序设计;C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

精通Windows Sockets网络开发 基于Visual C++实现PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇 网络开发基础篇3

第1章 准备开发环境3

1.1 Windows Sockets开发概述3

1.1.1 网络程序开发应用3

1.1.2 网络程序结构——C/S、B/S3

1.1.3 网络程序通信基础——网络协议4

1.1.4 网络程序通信技术——Windows Sockets介绍4

1.2 连接网络6

1.2.1 TCP/IP设置6

1.2.2 TCP/IP是否工作正常8

1.2.3 系统与网络适配器间的通信8

1.2.4 默认网关8

1.2.5 ping其他计算机IP地址9

1.3 创建应用程序9

1.3.1 控制台程序10

1.3.2 MFC应用程序11

1.4 调试两个应用程序12

1.4.1 启动两个工程13

1.4.2 将一个工程加入到另一个工程空间13

1.5 配置开发环境14

1.6 小结15

第2章 TCP/IP简介16

2.1 开放系统互连参考模型16

2.2 TCP/IP协议概述17

2.2.1 TCP/IP模型17

2.2.2 UDP18

2.2.3 TCP18

2.2.4 端口19

2.3 小结19

第3章 Windows Sockets基础20

3.1 Windows Sockets20

3.1.1 应用程序与Windows Sockets的关系20

3.1.2 套接字21

3.2 协议特征22

3.2.1 面向连接与面向无连接22

3.2.2 可靠性与次序性22

3.2.3 面向消息22

3.2.4 部分消息23

3.2.5 从容关闭23

3.2.6 路由选择24

3.2.7 广播数据24

3.3 IP定址24

3.3.1 IP定址25

3.3.2 字节顺序问题25

3.4 基本TCP套接字编程26

3.4.1 WSAStartup()函数26

3.4.2 socket()函数28

3.4.3 bind()函数28

3.4.4 listen()函数29

3.4.5 accept()函数29

3.4.6 recv()函数30

3.4.7 send()函数31

3.4.8 closesocket()函数31

3.4.9 shutdown()函数31

3.4.10 connect()函数32

3.5 TCP示例程序32

3.5.1 服务器实现33

3.5.2 客户端实现35

3.6 基本UDP套接字编程37

3.6.1 recvfrom()函数37

3.6.2 sendto()函数37

3.7 UDP示例程序38

3.7.1 服务器实现38

3.7.2 客户端实现40

3.8 套接字选项41

3.8.1 getsockopt()函数41

3.8.2 setsockopt()函数42

3.8.3 SOL SOCKET选项级别43

3.9 小结44

第2篇 Visual C++网络模式开发篇47

第4章 阻塞模式开发47

4.1 套接字的阻塞模式47

4.1.1 阻塞模式47

4.1.2 设置套接字的阻塞模式49

4.1.3 阻塞模式套接字的优势和不足49

4.2 客户端与服务器相互问候50

4.3 服务器设计50

4.3.1 启动50

4.3.2 接受请求50

4.3.3 接收数据51

4.3.4 退出51

4.3.5 错误提示51

4.4 服务器实现51

4.4.1 初始化52

4.4.2 创建套接字54

4.4.3 绑定套接字54

4.4.4 监听56

4.4.5 接受请求56

4.4.6 接收数据56

4.4.7 发送数据58

4.4.8 退出59

4.5 客户端设计59

4.5.1 启动59

4.5.2 连接服务器60

4.5.3 接收数据60

4.5.4 退出60

4.6 客户端实现60

4.6.1 初始化61

4.6.2 创建套接字61

4.6.3 连接服务器62

4.6.4 发送数据63

4.6.5 接收数据63

4.6.6 退出64

4.7 小结64

第5章 非阻塞模式开发65

5.1 套接字的非阻塞模式65

5.1.1 非阻塞模式65

5.1.2 设置套接字的非阻塞模式65

5.1.3 非阻塞模式套接字的优势和不足68

5.2 远程算数运算程序68

5.2.1 需求分析68

5.2.2 数据包设计69

5.3 服务器设计69

5.3.1 多线程设计69

5.3.2 界面设计71

5.4 服务器实现71

5.4.1 主线程72

5.4.2 接受客户端请求线程77

5.4.3 客户端类78

5.4.4 清理资源线程86

5.5 客户端设计88

5.5.1 多线程设计88

5.5.2 界面设计89

5.6 客户端实现89

5.6.1 主线程89

5.6.2 数据发送线程97

5.6.3 数据接收线程99

5.7 小结100

第6章 Select模型开发101

6.1 套接字Select模型101

6.1.1 Select模型101

6.1.2 select()函数102

6.1.3 Select模型的优势和不足106

6.2 远程文件下载107

6.2.1 需求分析107

6.2.2 数据包设计107

6.3 服务器设计108

6.3.1 多线程设计108

6.3.2 界面设计109

6.3.3 发送目录结构设计109

6.4 服务器实现110

6.4.1 静态类图110

6.4.2 初始化113

6.4.3 启动服务114

6.4.4 接收处理客户端目录和文件长度的请求116

6.4.5 接收客户端数据120

6.4.6 向客户端发送目录123

6.4.7 上传文件129

6.4.8 退出133

6.5 客户端设计133

6.5.1 多线程设计133

6.5.2 界面设计134

6.6 客户端实现136

6.6.1 静态类图136

6.6.2 初始化138

6.6.3 连接服务器139

6.6.4 发送请求接收目录140

6.6.5 浏览目录147

6.6.6 下载文件149

6.6.7 显示下载文件进度159

6.6.8 退出160

6.7 小结160

第7章 WSAAsyncSelect模型开发161

7.1 套接字WSAAsyncSelect模型分析161

7.1.1 WSASsyncSelect模型161

7.1.2 与Select模型比较162

7.2 套接字WSAAsyncSelect模型实现162

7.2.1 WSAAsyncSelect()函数163

7.2.2 窗口例程163

7.2.3 创建窗口164

7.3 WSAAsyncSelect模型示例程序167

7.3.1 声明自定义消息168

7.3.2 声明窗口例程168

7.3.3 注册窗口类169

7.3.4 创建和显示窗口169

7.3.5 创建套接字169

7.3.6 注册感兴趣的网络事件169

7.3.7 绑定套接字169

7.3.8 开始监听170

7.3.9 消息循环170

7.3.10 程序退出170

7.3.11 窗口例程170

7.3.12 CClient类171

7.3.13 管理客户端套接字的链表171

7.3.14 网络事件消息处理函数172

7.4 调用WSAAsyncSelect()函数注意问题173

7.4.1 接收不到网络事件173

7.4.2 关于accept()函数173

7.4.3 关于FD READ网络事件174

7.4.4 如何判断套接字已经关闭174

7.4.5 发送数据失败174

7.5 发生网络事件的条件174

7.5.1 FD_READ事件174

7.5.2 FD_WRITE事件174

7.5.3 FD_ACCEPT事件175

7.5.4 FD_CONNECT事件175

7.5.5 FD_CLOSE事件175

7.6 WSAAsyncSelect模型优势和不足175

7.7 局域网简易聊天程序176

7.7.1 需求分析176

7.7.2 用户状态设计177

7.7.3 数据包类设计179

7.8 服务器设计180

7.8.1 界面设计180

7.8.2 通信层架构设计182

7.9 服务器实现182

7.9.1 开发前的准备182

7.9.2 静态类图183

7.9.3 启动服务器186

7.9.4 初始化191

7.9.5 接受客户端请求194

7.9.6 接收数据196

7.9.7 处理数据203

7.9.8 删除用户210

7.9.9 用户离线212

7.9.10 退出213

7.10 客户端设计218

7.10.1 界面设计218

7.10.2 通信层架构设计220

7.10.3 显示的消息格式设计220

7.11 客户端实现220

7.11.1 静态类图220

7.11.2 初始化223

7.11.3 接收服务器数据227

7.11.4 显示离线消息228

7.11.5 创建聊天窗口229

7.11.6 在线聊天231

7.11.7 发送离线消息234

7.11.8 被动聊天234

7.11.9 保存聊天记录235

7.12 小结236

第8章 WSAEventSelect模型开发238

8.1 套接字WSAEventSelect模型238

8.1.1 WSAEventSelect模型238

8.1.2 与其他模型的比较238

8.2 套接字WSAEventSelect模型实现239

8.2.1 WSAEventSelect()函数239

8.2.2 WSACreateEvent()函数240

8.2.3 WSAResetEvent()函数241

8.2.4 WSACloseEvent()函数241

8.2.5 WSAWaitForMultipleEvents()函数241

8.2.6 WSAEnumNetworkEvents()函数242

8.3 WSAEventSelect模型示例程序244

8.3.1 CClient类245

8.3.2 管理客户端套接字的链表245

8.3.3 定义事件对象数组等变量246

8.3.4 创建套接字246

8.3.5 为监听套接字注册网络事件246

8.3.6 开始监听247

8.3.7 等待网络事件247

8.3.8 获取发生的网络事件247

8.3.9 FD_ACCEPT网络事件248

8.3.10 FD_READ网络事件249

8.3.11 FD_WRITE网络事件249

8.3.12 FD_CLOSE网络事件249

8.3.13 退出250

8.4 调用WSAEventSelect()函数注意的问题250

8.4.1 多次调用WSAEventSelect()函数250

8.4.2 一个套接字不要关联多个事件对象250

8.4.3 取消为套接字注册的网络事件251

8.4.4 关于accept()函数251

8.4.5 关于FD_READ网络事件251

8.4.6 关于FD_WRITE网络事件251

8.4.7 关于FD_CLOSE网络事件251

8.5 WSAEventSelect模型的优势和不足251

8.6 网络五子棋游戏252

8.6.1 需求分析252

8.6.2 游戏规则253

8.6.3 用户状态设计253

8.6.4 数据包设计253

8.7 服务器设计254

8.7.1 多线程设计254

8.7.2 界面设计255

8.8 服务器实现255

8.8.1 静态类图255

8.8.2 初始化260

8.8.3 启动服务262

8.8.4 服务器运行264

8.8.5 接收客户端请求266

8.8.6 接收数据270

8.8.7 更新用户列表273

8.8.8 发送用户列表277

8.8.9 客户端退出278

8.8.10 服务器退出278

8.9 客户端设计279

8.9.1 多线程设计279

8.9.2 界面设计279

8.10 客户端实现281

8.10.1 静态类图282

8.10.2 创建切分窗口287

8.10.3 初始化289

8.10.4 工作线程294

8.10.5 与服务器通信295

8.10.6 更新用户列表299

8.10.7 开始游戏301

8.10.8 下棋306

8.10.9 结束游戏317

8.10.10 退出318

8.11 小结319

第9章 重叠I/O模型开发320

9.1 套接字重叠I/O模型320

9.1.1 重叠I/O模型320

9.1.2 与其他模型的比较321

9.2 套接字重叠I/O模型实现概述322

9.3 Win32重叠I/O相关技术322

9.3.1 CreateFile()函数322

9.3.2 OVERLAPPED结构323

9.3.3 ReadFile()函数323

9.3.4 WriteFile()函数324

9.3.5 GetOverlappedResult()函数324

9.3.6 示例程序325

9.4 套接字重叠I/O327

9.4.1 创建套接字327

9.4.2 接收数据327

9.4.3 WSAOVERLAPPED结构328

9.4.4 WSAWaitForMultipleEvents()函数329

9.4.5 WSAGetOverlappedResult()函数329

9.4.6 发送数据329

9.5 事件通知330

9.5.1 CClient类331

9.5.2 管理客户端的链表332

9.5.3 声明变量和函数333

9.5.4 套接字的创建、绑定和监听333

9.5.5 创建服务线程334

9.5.6 接受客户端连接请求334

9.5.7 服务线程335

9.6 完成例程336

9.6.1 CClient类337

9.6.2 管理客户端的链表339

9.6.3 套接字的创建、绑定和监听339

9.6.4 接受客户端连接请求339

9.6.5 服务线程340

9.7 实例开发——网络词典340

9.7.1 需求分析341

9.7.2 数据包设计341

9.7.3 数据库设计342

9.8 服务器设计342

9.8.1 多线程设计342

9.8.2 界面设计343

9.9 服务器实现345

9.9.1 开发前的准备346

9.9.2 静态类图347

9.9.3 初始化351

9.9.4 启动服务358

9.9.5 服务器运行359

9.9.6 接收数据361

9.9.7 查询单词含义364

9.9.8 发送数据366

9.9.9 查看未知单词367

9.9.10 数据库操作370

9.9.11 退出375

9.10 客户端设计376

9.10.1 多线程设计376

9.10.2 界面设计376

9.11 客户端实现377

9.11.1 静态类图377

9.11.2 启动客户端380

9.11.3 连接服务器381

9.11.4 工作线程382

9.11.5 发送数据385

9.11.6 接收数据388

9.11.7 显示单词含义390

9.11.8 退出391

9.12 小结391

第10章 完成端口模型开发392

10.1 套接字完成端口模型392

10.1.1 利用完成端口接收数据392

10.1.2 完成端口模型393

10.1.3 与重叠I/O模型比较394

10.2 完成端口模型实现395

10.2.1 创建完成端口对象395

10.2.2 创建服务线程396

10.2.3 套接字与完成端口关联397

10.2.4 发起重叠I/O操作398

10.2.5 等待重叠I/O操作结果399

10.2.6 取消异步操作400

10.2.7 投递完成通知包400

10.3 完成端口示例程序401

10.3.1 声明单I/O操作数据结构402

10.3.2 CClient类403

10.3.3 管理客户端的链表404

10.3.4 声明变量和函数405

10.3.5 创建完成端口405

10.3.6 创建服务线程405

10.3.7 套接字的创建、绑定和监听405

10.3.8 套接字与完成端口关联406

10.3.9 发起重叠I/O操作407

10.3.10 等待I/O操作结果407

10.4 考试系统409

10.4.1 需求分析409

10.4.2 数据包设计410

10.4.3 数据库设计410

10.5 服务器设计411

10.5.1 多线程设计411

10.5.2 界面设计412

10.6 服务器实现414

10.6.1 静态类图414

10.6.2 初始化419

10.6.3 启动服务427

10.6.4 接受客户端请求线程430

10.6.5 服务线程432

10.6.6 接收客户端数据433

10.6.7 验证学号437

10.6.8 发送数据438

10.6.9 考生交卷440

10.6.10 跟踪客户端连接状态442

10.6.11 服务器退出443

10.7 客户端设计446

10.8 客户端实现447

10.8.1 静态类图448

10.8.2 初始化450

10.8.3 连接服务器并接收试卷450

10.8.4 初始化试卷头454

10.8.5 初始化试卷455

10.8.6 答卷459

10.8.7 发送心跳包460

10.8.8 交卷460

10.9 小结462

热门推荐