提供了大量的网络通信编程实例,涉及到网络编程的各个领域;每个实例都提供了完整的源代码和编译通过的应用程序,读者可以在此基础上很方便地进行二次开发;所有的实例都按照设计思路、相关概念、原理,具体的实现方式进行介绍,读者能够很容易地掌握整个应用程序开发的全过程。本书精选了大量网络编程应用案例,基本上涵盖了当前网络通信编程领域的热点问题。本书是一本介绍利用VisualC++进行网络通信程序开发的书籍。书中精选了大量网络实例,涵盖了本地计算机网络编程、局域网网络通信编程、IE网络编程、网络通信协议编程、串口通信编程、代理服务器编程和高级网络通信编程。每个工程实例都提供了完整的源代码,读者可以很容易地根据需要进行二次开发。本书可以作为软件开发人员的指导用书,同时也可以作为科研单位、高校相关专业的指导用书。
目录
- 第1章 Visual C++网络通信编程基础 1
- 1.1 Winsock1.1编程技术 1
- 1.1.1 Winsock的基本概念 1
- 1.1.2 Winsock的编程特点 2
- 1.1.3 Winsock基本的API 2
- 1.1.4 Winsock的异步模式 6
- 1.2 Winsock 2.0编程技术 8
- 1.2.1 Winsock 2.0技术说明 8
- 1.2.2 Winsock2.0新增函数 12
- 1.2.3 Winsock网络程序——聊天室 13
- 1.3 CAsyncSocket编程技术 23
- 1.3.1 CAsyncSocket类的组成 23
- 1.3.2 CAsyncSocket编程模型 24
- 1.4 CSocket编程技术 25
- 1.4.1 CSocket类的组成 25
- 1.4.2 CSocket应用实例——聊天室 26
- 1.5 WinInet编程技术 32
- 第2章 本地计算机网络编程 37
- 2.1 获取计算机的名称和IP地址 37
- 2.2 获取计算机的子网掩码 40
- 2.3 获取计算机的DNS设置 41
- 2.4 获取计算机的网卡地址 42
- 2.5 获取计算机安装的协议 45
- 2.6 获取计算机提供的服务 47
- 2.7 获取计算机的所有网络资源 49
- 2.8 修改本地计算机的网络设置 49
- 2.9 获取计算机TCP/IP的所有信息 53
- 第3章 局域网网络通信编程实例 58
- 3.1 获取网上邻居 58
- 3.1.1 实现原理 59
- 3.1.2 实例实现 62
- 3.2 IP地址和计算机名之间的转换 66
- 3.2.1 实现原理 66
- 3.2.2 实例实现 68
- 3.3 映射网络驱动器 72
- 3.3.1 实现原理 72
- 3.3.2 实例实现 74
- 3.4 局域网内的消息发送程序Net Send 78
- 3.4.1 实现原理 78
- 3.4.2 实例实现 82
- 3.5 获取局域网内其他计算机的信息 84
- 第4章 IE编程实例 93
- 4.1 简单的浏览器的实现 93
- 4.1.1 实现原理 93
- 4.1.2 实例实现 94
- 4.2 删除IE相关历史记录 98
- 4.2.1 实现原理 99
- 4.2.2 实例实现 100
- 4.3 将应用程序加入到IE工具栏 104
- 4.3.1 实现原理 105
- 4.3.2 实例实现 105
- 4.4 超级链接的实现 109
- 4.4.1 实现原理 110
- 4.4.2 实例实现 110
- 4.5 禁止IE的弹出窗口 115
- 4.5.1 实现原理 115
- 4.5.2 实例实现 116
- 4.6 禁止浏览某些网站 124
- 4.6.1 实现原理 124
- 4.6.2 实例实现 124
- 4.7 IE收藏夹 130
- 4.7.1 实现原理 130
- 4.7.2 实例实现 130
- 4.8 创建桌面快捷方式和活动桌面 133
- 4.8.1 实现原理 133
- 4.8.2 实例实现 134
- 第5章 基本网络编程实例 139
- 5.1 点对点文件传输 139
- 5.1.1 实现原理 139
- 5.1.2 实例实现 140
- 5.2 大型文件传输 154
- 5.3 端口扫描程序 156
- 5.3.1 实现原理 156
- 5.3.2 实例实现 157
- 5.4 Finger编程 163
- 5.4.1 实现原理 164
- 5.4.2 实例实现 166
- 5.5 Sniff编程 168
- 5.5.1 实现原理 168
- 5.5.2 实例实现 169
- 5.6 Internet文件下载 181
- 5.6.1 实现原理 181
- 5.6.2 实例实现 183
- 第6章 网络通信协议编程实例 187
- 6.1 FTP协议 187
- 6.1.1 FTP工作原理 187
- 6.1.2 FTP客户端程序设计原理和实例实现 196
- 6.1.3 FTP服务器端实例实现 205
- 6.2 Email协议 221
- 6.2.1 SMTP协议 221
- 6.2.2 SMTP的会话 227
- 6.2.3 发送无附件Email程序的实现 232
- 6.2.4 发送有附件的邮件的实例实现 235
- 6.2.5 POP3协议 254
- 6.2.6 POP3实例实现 258
- 6.3 ICMP协议 266
- 6.3.1 ICMP报文格式 266
- 6.3.2 ICMP时间戳请求与应答 267
- 6.3.3 Ping程序的实现 269
- 6.3.4 TraceRoute程序的实现 278
- 6.4 RAS协议 286
- 6.4.1 拨号和连接管理 286
- 6.4.2 电话簿和用户凭证管理 291
- 6.4.3 拨号方式 292
- 6.4.4 RAS高级拨号程序 293
- 6.5 TAPI协议 306
- 6.5.1 TAPI机制 306
- 6.5.2 TAPI程序的实现 311
- 6.6 Telnet协议 317
- 6.6.1 Telnet协议 318
- 6.6.2 NVT ASCII字符集 319
- 6.6.3 协商选项 319
- 6.6.4 BBS实例实现 320
- 6.7 HTTP协议 333
- 6.7.1 HTTP协议内容 333
- 6.7.2 请求消息 333
- 6.7.3 响应消息 334
- 6.7.4 HTTP客户端程序的实现 335
- 6.7.5 HTTP服务器高级程序 336
- 第7章 Modem/串口通信编程实例 347
- 7.1 AT命令 347
- 7.1.1 Modem状态 347
- 7.1.2 AT命令 348
- 7.1.3 Modem返回信息码 348
- 7.2 MSCOMM控件编程实例 349
- 7.2.1 实现原理 349
- 7.2.2 实例实现 349
- 7.3 串口通信API编程实例 353
- 7.3.1 打开和关闭串口API 354
- 7.3.2 串口配置API 356
- 7.3.3 串口属性设置API 359
- 7.3.4 缓冲区控制API 361
- 7.3.5 读写串口API 361
- 7.3.6 通信事件API 363
- 7.3.7 设备控制命令API 364
- 7.3.8 实例实现 365
- 第8章 代理服务器编程实例 374
- 8.1 Socks 5协议编程 374
- 8.1.1 实例原理 382
- 8.1.2 实例实现 384
- 8.2 HTTP代理服务器实例 393
- 8.2.1 主框架代码分析 393
- 8.2.2 代理类CProxyServer的实现 395
- 第9章 高级网络通信编程实例解析 404
- 9.1 串口通信高级编程实例 404
- 9.1.1 主程序结构和流程 404
- 9.1.2 实例演示 404
- 9.1.3 实例原理 405
- 9.1.4 实例设计 409
- 9.1.5 代码分析 409
- 9.2 网络流量监控实例 420
- 9.2.1 主程序结构和流程 421
- 9.2.2 实例演示 421
- 9.2.3 实例原理 421
- 9.2.4 实例设计 423
- 9.2.5 代码分析 424
- 9.3 网站下载实例 434
- 9.3.1 主程序结构和流程 434
- 9.3.2 实例演示 435
- 9.3.3 实例原理 435
- 9.3.4 实例设计 437
- 9.3.5 代码分析 438
- 9.4 网络五子棋系统 454
- 9.4.1 主程序结构和流程 454
- 9.4.2 实例演示 455
- 9.4.3 实例原理 455
- 9.4.4 实例设计 455
- 9.4.5 代码分析 456
- 9.5 语音聊天实例 470
- 9.5.1 主程序结构和流程 470
- 9.5.2 实例演示 471
- 9.5.3 实例原理 471
- 9.5.4 实例设计 476
- 9.5.5 代码分析 476
- 9.6 远程监控实例 486
- 9.6.1 主程序结构和流程 487
- 9.6.2 实例演示 488
- 9.6.3 实例原理 489
- 9.6.4 实例设计 490
-
9.6.5 代码分析 491