Windows网络编程

Windows网络编程
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: ,
2011-04
版次: 1
ISBN: 9787115248541
定价: 40.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 348页
字数: 586千字
109人买过
  •    随着Internet技术的应用和普及,人类社会已经进入了信息化的网络时代。大多数应用程序都是运行在网络环境下,这就要求程序员能够在应用最广泛的Windows操作系统上开发网络应用程序。本教程结合大量的实例,介绍了开发Windows网络应用程序的必备知识,并完整地讲述了几个Windows网络应用程序实例的开发过程。这些实例包括局域网探测器、基于P2P技术的BT下载工具和基于WinPcap技术的网络数据包捕获、过滤和分析工具等。

     《Windows网络编程》可以作为大学本科、大专及高职相关专业的教材,也可作为广大Windows网络应用程序开发人员的参考资料。 目录
    第1篇基础协议
    第1章Internet与网络通信模型概述

    1.1Internet概述

    1.1.1Internet的发展历史

    1.1.2Internet的管理机构

    1.1.3国内Internet网络建设的现状

    1.2网络通信模型和协议簇

    1.2.1OSI参考模型

    1.2.2TCP/IP协议簇体系结构

    习题
    第2章TCP/IP协议簇及其应用

    2.1IP

    2.1.1IP基础

    2.1.2IP的关键机制

    2.2TCP和UDP

    2.2.1TCP的网络功能

    2.2.2TCP段结构

    2.2.3TCP的基本工作流程

    2.2.4UDP

    2.3其他常用协议

    2.3.1ARP

    2.3.2ICMP

    2.3.3Telnet

    2.3.4FTP

    2.3.5SMTP和POP3

    习题
    第3章IP地址和子网规划

    3.1IP地址

    3.1.1IP地址的结构

    3.1.2IP地址的分类

    3.1.3特殊的IP地址

    3.2子网划分

    3.2.1子网

    3.2.2子网掩码

    3.2.3CIDR表示法

    3.2.4单播、组播和广播地址

    习题
    第2篇网络编程
    第4章网络编程基础

    4.1网络编程相关的基本概念

    4.1.1网络编程与进程通信

    4.1.2Internet中网间进程的标识

    4.1.3网络协议的特征

    4.1.4高效的用户数据报协议

    4.1.5可靠的传输控制协议

    4.2三类网络编程

    4.2.1基于TCP/IP协议栈的网络编程

    4.2.2基于WWW应用的网络编程

    4.2.3基于.NET框架的Web Services网络编程

    4.3客户机/服务器交互模式

    4.3.1网络应用软件的地位和功能

    4.3.2客户机/服务器模式

    4.3.3客户机与服务器的特性

    4.3.4容易混淆的术语

    4.3.5客户机与服务器的通信过程

    4.3.6网络协议与C/S模式的关系

    4.3.7错综复杂的C/S交互

    4.3.8服务器如何同时为多个客户机服务

    4.3.9标识一个特定服务

    4.4P2P模式

    4.4.1P2P技术的兴起

    4.4.2P2P的定义和特征

    4.4.3P2P的发展

    4.4.4P2P的关键技术

    4.4.5P2P系统的应用与前景

    习题
    第5章Socket编程基础

    5.1Socket网络编程接口的产生与发展

    5.1.1Socket编程接口起源于UNIX操作系统

    5.1.2Socket编程接口在Windows和Linux操作系统中得到继承和发展

    5.2Socket的工作原理和基本概念

    5.2.1Socket协议的工作原理

    5.2.2什么是Socket

    5.2.3Socket的服务方式和类型

    5.3WinSock编程基础

    5.3.1构建WinSock应用程序框架

    5.3.2IP地址的表示形式

    5.4面向连接的Socket编程

    5.4.1面向连接的Socket通信流程

    5.4.2socket()函数

    5.4.3bind()函数

    5.4.4listen()函数

    5.4.5accept()函数

    5.4.6recv()函数

    5.4.7send()函数

    5.4.8closesocket()函数

    5.4.9shutdown()函数

    5.4.10connect()函数

    5.4.11TCP Socket服务器应用程序编程实例

    5.4.12TCP Socket客户端应用程序编程实例

    5.5面向非连接的Socket编程

    5.5.1面向非连接的Socket通信流程

    5.5.2sendto()函数

    5.5.3recvfrom()函数

    5.6Socket选项

    5.6.1调用getsockopt()函数获取Socket选项

    5.6.2调用setsockopt()函数设置Socket选项

    习题
    第6章探测网络中的在线设备

    6.1获取本地计算机的网络信息

    6.1.1使用ipconfig命令获取本地网络信息

    6.1.2获取本地网络信息的开发接口IP Helper API

    6.1.3获取本地网络适配器信息

    6.1.4获取本地主机名、域名和DNS服务器信息

    6.1.5获取本地计算机网络接口的基本信息

    6.1.6获取本地计算机IP地址表

    6.1.7添加和删除IP地址

    6.2扫描子网中的地址

    6.2.1计算指定子网内包含的所有IP地址

    6.2.2实现ping的功能

    6.2.3扫描子网

    习题
    第7章NetBIOS网络编程技术

    7.1NetBIOS协议及应用

    7.1.1NetBIOS协议

    7.1.2使用NBTSTAT命令

    7.2NetBIOS开发接口

    7.2.1NetBIOS操作

    7.2.2NCB结构体

    7.2.3其他常用NetBIOS结构体

    7.2.4Netbios()函数

    7.2.5获取LANA上的所有NetBIOS名字

    7.2.6获取网络适配器上的MAC地址

    7.3在程序中实现NBTSTAT命令的功能

    7.3.1本实例的工作原理

    7.3.2定义的结构体

    7.3.3为获取NetBIOS信息而定义的函数

    7.3.4实现NBTSTAT命令功能的主函数

    习题
    第8章高级Socket编程技术

    8.1Socket编程模型概述

    8.2阻塞与非阻塞模式Socket编程

    8.2.1设置非阻塞模式Socket

    8.2.2非阻塞模式服务器应用程序编程实例

    8.2.3非阻塞模式客户端应用程序编程实例

    8.2.4基于非阻塞模式的多线程服务器应用程序编程实例

    8.3基于Select模型的Socket编程

    8.3.1select()函数

    8.3.2基于Select模型的服务器应用程序实例

    8.4基于WSAAsyncSelect模型的Socket编程

    8.4.1WSAAsyncSelect()函数

    8.4.2创建窗口

    8.4.3窗口例程

    8.4.4基于WSAAsyncSelect模型的服务器编程

    8.5基于WSAEventSelect模型的Socket编程

    8.5.1WSAEventSelect()函数

    8.5.2创建和管理事件对象

    8.5.3WSAWaitForMultipleEvents()函数

    8.5.4WSAEnumNetworkEvents()函数

    8.5.5基于WSAEventSelect模型的服务器编程

    8.6基于重叠I/O模型的Socket编程

    8.6.1WSASocket()函数

    8.6.2调用WSASend()函数发送数据

    8.6.3调用WSARecv()函数接收数据

    8.6.4GetOverlappedResult()函数

    8.6.5使用事件通知来管理重叠I/O操作

    8.6.6使用完成例程来管理重叠I/O操作

    8.7基于完成端口模型的Socket编程

    8.7.1完成端口模型的工作原理

    8.7.2创建完成端口对象

    8.7.3等待重叠I/O的操作结果

    8.7.4基于完成端口模型的服务器应用程序实例

    习题
    第9章基于WinPcap技术的网络数据包捕获、过滤和分析技术

    9.1WinPcap技术基础

    9.1.1WinPcap的体系结构

    9.1.2NIC驱动器和NDIS

    9.1.3网络组包过滤(NPF)模块

    9.1.4捕获数据包的原理和步骤

    9.2下载和安装WinPcap开发包

    9.2.1下载WinPcap

    9.2.2安装WinPcap

    9.2.3源代码的目录结构

    9.3在Visual C++中使用WinPcap技术

    9.3.1环境配置

    9.3.2获取与网络适配器绑定的设备列表

    9.3.3获取网络适配器的高级属性信息

    9.3.4打开网络适配器并实现抓包功能

    9.3.5不使用事件处理器进行抓包

    9.3.6过滤数据包

    9.3.7分析数据包

    习题
    第3篇实例应用
    第10章设计局域网探测器

    10.1局域网探测器的主要功能

    10.2基础模块设计

    10.2.1基础函数

    10.2.2本地主机类CLocalhost

    10.2.3设备类CDevice

    10.2.4子网类CSubnet

    10.3系统主界面设计

    10.3.1系统主界面中包含的控件

    10.3.2设计菜单项

    10.4加载和退出主界面

    10.4.1加载主界面的代码实现

    10.4.2在文本编辑框中输出描述信息

    10.4.3自动调整控件的大小

    10.4.4退出系统并保存自定义子网

    10.5管理子网

    10.5.1添加和编辑子网

    10.5.2删除子网

    10.6扫描指定的子网

    10.6.1设计执行扫描子网操作的对话框

    10.6.2启动子网扫描

    10.7检测子网的状态

    10.7.1设计检测子网状态的对话框

    10.7.2启动状态检测
    第11章设计基于P2P技术的BT下载工具

    11.1P2P技术的工作原理和应用

    11.1.1P2P技术的工作原理

    11.1.2P2P网络模型

    11.1.3BT下载

    11.1.4FTKernelAPI兼容BT协议网络内核库

    11.2系统主界面设计

    11.2.1系统主界面中包含的控件

    11.2.2设计菜单项

    11.2.3设计工具栏

    11.3加载主窗口

    11.3.1加载主窗口的代码实现

    11.3.2在StartContext()函数中初始化FTKernelAPI环境

    11.3.3在InitNatTunnel()函数中初始化穿透内网的操作

    11.4实现BT下载

    11.4.1打开种子文件

    11.4.2开始下载

    11.4.3停止下载

    11.4.4显示下载进度

    11.4.5删除文件

    11.4.6打开目录
  • 内容简介:
       随着Internet技术的应用和普及,人类社会已经进入了信息化的网络时代。大多数应用程序都是运行在网络环境下,这就要求程序员能够在应用最广泛的Windows操作系统上开发网络应用程序。本教程结合大量的实例,介绍了开发Windows网络应用程序的必备知识,并完整地讲述了几个Windows网络应用程序实例的开发过程。这些实例包括局域网探测器、基于P2P技术的BT下载工具和基于WinPcap技术的网络数据包捕获、过滤和分析工具等。

     《Windows网络编程》可以作为大学本科、大专及高职相关专业的教材,也可作为广大Windows网络应用程序开发人员的参考资料。
  • 目录:
    目录
    第1篇基础协议
    第1章Internet与网络通信模型概述

    1.1Internet概述

    1.1.1Internet的发展历史

    1.1.2Internet的管理机构

    1.1.3国内Internet网络建设的现状

    1.2网络通信模型和协议簇

    1.2.1OSI参考模型

    1.2.2TCP/IP协议簇体系结构

    习题
    第2章TCP/IP协议簇及其应用

    2.1IP

    2.1.1IP基础

    2.1.2IP的关键机制

    2.2TCP和UDP

    2.2.1TCP的网络功能

    2.2.2TCP段结构

    2.2.3TCP的基本工作流程

    2.2.4UDP

    2.3其他常用协议

    2.3.1ARP

    2.3.2ICMP

    2.3.3Telnet

    2.3.4FTP

    2.3.5SMTP和POP3

    习题
    第3章IP地址和子网规划

    3.1IP地址

    3.1.1IP地址的结构

    3.1.2IP地址的分类

    3.1.3特殊的IP地址

    3.2子网划分

    3.2.1子网

    3.2.2子网掩码

    3.2.3CIDR表示法

    3.2.4单播、组播和广播地址

    习题
    第2篇网络编程
    第4章网络编程基础

    4.1网络编程相关的基本概念

    4.1.1网络编程与进程通信

    4.1.2Internet中网间进程的标识

    4.1.3网络协议的特征

    4.1.4高效的用户数据报协议

    4.1.5可靠的传输控制协议

    4.2三类网络编程

    4.2.1基于TCP/IP协议栈的网络编程

    4.2.2基于WWW应用的网络编程

    4.2.3基于.NET框架的Web Services网络编程

    4.3客户机/服务器交互模式

    4.3.1网络应用软件的地位和功能

    4.3.2客户机/服务器模式

    4.3.3客户机与服务器的特性

    4.3.4容易混淆的术语

    4.3.5客户机与服务器的通信过程

    4.3.6网络协议与C/S模式的关系

    4.3.7错综复杂的C/S交互

    4.3.8服务器如何同时为多个客户机服务

    4.3.9标识一个特定服务

    4.4P2P模式

    4.4.1P2P技术的兴起

    4.4.2P2P的定义和特征

    4.4.3P2P的发展

    4.4.4P2P的关键技术

    4.4.5P2P系统的应用与前景

    习题
    第5章Socket编程基础

    5.1Socket网络编程接口的产生与发展

    5.1.1Socket编程接口起源于UNIX操作系统

    5.1.2Socket编程接口在Windows和Linux操作系统中得到继承和发展

    5.2Socket的工作原理和基本概念

    5.2.1Socket协议的工作原理

    5.2.2什么是Socket

    5.2.3Socket的服务方式和类型

    5.3WinSock编程基础

    5.3.1构建WinSock应用程序框架

    5.3.2IP地址的表示形式

    5.4面向连接的Socket编程

    5.4.1面向连接的Socket通信流程

    5.4.2socket()函数

    5.4.3bind()函数

    5.4.4listen()函数

    5.4.5accept()函数

    5.4.6recv()函数

    5.4.7send()函数

    5.4.8closesocket()函数

    5.4.9shutdown()函数

    5.4.10connect()函数

    5.4.11TCP Socket服务器应用程序编程实例

    5.4.12TCP Socket客户端应用程序编程实例

    5.5面向非连接的Socket编程

    5.5.1面向非连接的Socket通信流程

    5.5.2sendto()函数

    5.5.3recvfrom()函数

    5.6Socket选项

    5.6.1调用getsockopt()函数获取Socket选项

    5.6.2调用setsockopt()函数设置Socket选项

    习题
    第6章探测网络中的在线设备

    6.1获取本地计算机的网络信息

    6.1.1使用ipconfig命令获取本地网络信息

    6.1.2获取本地网络信息的开发接口IP Helper API

    6.1.3获取本地网络适配器信息

    6.1.4获取本地主机名、域名和DNS服务器信息

    6.1.5获取本地计算机网络接口的基本信息

    6.1.6获取本地计算机IP地址表

    6.1.7添加和删除IP地址

    6.2扫描子网中的地址

    6.2.1计算指定子网内包含的所有IP地址

    6.2.2实现ping的功能

    6.2.3扫描子网

    习题
    第7章NetBIOS网络编程技术

    7.1NetBIOS协议及应用

    7.1.1NetBIOS协议

    7.1.2使用NBTSTAT命令

    7.2NetBIOS开发接口

    7.2.1NetBIOS操作

    7.2.2NCB结构体

    7.2.3其他常用NetBIOS结构体

    7.2.4Netbios()函数

    7.2.5获取LANA上的所有NetBIOS名字

    7.2.6获取网络适配器上的MAC地址

    7.3在程序中实现NBTSTAT命令的功能

    7.3.1本实例的工作原理

    7.3.2定义的结构体

    7.3.3为获取NetBIOS信息而定义的函数

    7.3.4实现NBTSTAT命令功能的主函数

    习题
    第8章高级Socket编程技术

    8.1Socket编程模型概述

    8.2阻塞与非阻塞模式Socket编程

    8.2.1设置非阻塞模式Socket

    8.2.2非阻塞模式服务器应用程序编程实例

    8.2.3非阻塞模式客户端应用程序编程实例

    8.2.4基于非阻塞模式的多线程服务器应用程序编程实例

    8.3基于Select模型的Socket编程

    8.3.1select()函数

    8.3.2基于Select模型的服务器应用程序实例

    8.4基于WSAAsyncSelect模型的Socket编程

    8.4.1WSAAsyncSelect()函数

    8.4.2创建窗口

    8.4.3窗口例程

    8.4.4基于WSAAsyncSelect模型的服务器编程

    8.5基于WSAEventSelect模型的Socket编程

    8.5.1WSAEventSelect()函数

    8.5.2创建和管理事件对象

    8.5.3WSAWaitForMultipleEvents()函数

    8.5.4WSAEnumNetworkEvents()函数

    8.5.5基于WSAEventSelect模型的服务器编程

    8.6基于重叠I/O模型的Socket编程

    8.6.1WSASocket()函数

    8.6.2调用WSASend()函数发送数据

    8.6.3调用WSARecv()函数接收数据

    8.6.4GetOverlappedResult()函数

    8.6.5使用事件通知来管理重叠I/O操作

    8.6.6使用完成例程来管理重叠I/O操作

    8.7基于完成端口模型的Socket编程

    8.7.1完成端口模型的工作原理

    8.7.2创建完成端口对象

    8.7.3等待重叠I/O的操作结果

    8.7.4基于完成端口模型的服务器应用程序实例

    习题
    第9章基于WinPcap技术的网络数据包捕获、过滤和分析技术

    9.1WinPcap技术基础

    9.1.1WinPcap的体系结构

    9.1.2NIC驱动器和NDIS

    9.1.3网络组包过滤(NPF)模块

    9.1.4捕获数据包的原理和步骤

    9.2下载和安装WinPcap开发包

    9.2.1下载WinPcap

    9.2.2安装WinPcap

    9.2.3源代码的目录结构

    9.3在Visual C++中使用WinPcap技术

    9.3.1环境配置

    9.3.2获取与网络适配器绑定的设备列表

    9.3.3获取网络适配器的高级属性信息

    9.3.4打开网络适配器并实现抓包功能

    9.3.5不使用事件处理器进行抓包

    9.3.6过滤数据包

    9.3.7分析数据包

    习题
    第3篇实例应用
    第10章设计局域网探测器

    10.1局域网探测器的主要功能

    10.2基础模块设计

    10.2.1基础函数

    10.2.2本地主机类CLocalhost

    10.2.3设备类CDevice

    10.2.4子网类CSubnet

    10.3系统主界面设计

    10.3.1系统主界面中包含的控件

    10.3.2设计菜单项

    10.4加载和退出主界面

    10.4.1加载主界面的代码实现

    10.4.2在文本编辑框中输出描述信息

    10.4.3自动调整控件的大小

    10.4.4退出系统并保存自定义子网

    10.5管理子网

    10.5.1添加和编辑子网

    10.5.2删除子网

    10.6扫描指定的子网

    10.6.1设计执行扫描子网操作的对话框

    10.6.2启动子网扫描

    10.7检测子网的状态

    10.7.1设计检测子网状态的对话框

    10.7.2启动状态检测
    第11章设计基于P2P技术的BT下载工具

    11.1P2P技术的工作原理和应用

    11.1.1P2P技术的工作原理

    11.1.2P2P网络模型

    11.1.3BT下载

    11.1.4FTKernelAPI兼容BT协议网络内核库

    11.2系统主界面设计

    11.2.1系统主界面中包含的控件

    11.2.2设计菜单项

    11.2.3设计工具栏

    11.3加载主窗口

    11.3.1加载主窗口的代码实现

    11.3.2在StartContext()函数中初始化FTKernelAPI环境

    11.3.3在InitNatTunnel()函数中初始化穿透内网的操作

    11.4实现BT下载

    11.4.1打开种子文件

    11.4.2开始下载

    11.4.3停止下载

    11.4.4显示下载进度

    11.4.5删除文件

    11.4.6打开目录
查看详情