图书介绍

WINDOWS程序设计 第2版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

WINDOWS程序设计 第2版
  • 王艳平,张铮编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115172327
  • 出版时间:2008
  • 标注页数:472页
  • 文件大小:208MB
  • 文件页数:487页
  • 主题词:窗口软件,Windows-程序设计

PDF下载


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

下载说明

WINDOWS程序设计 第2版PDF格式电子书版下载

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

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

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

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

图书目录

第1章 Windows程序设计基础1

1.1 必须了解的内容1

1.1.1 Windows产品概述1

1.1.2 开发工具Visual C++1

1.1.3 Windows资料来源——MSDN2

1.1.4 Win32 API简介2

1.2 VC++的基本使用2

1.2.1 应用程序的类型3

1.2.2 第一个控制台应用程序3

1.2.3 API函数的调用方法4

1.3 本书推荐的编程环境5

1.4 代码的风格6

1.4.1 变量的命名6

1.4.2 代码的对齐方式7

1.4.3 代码的注释8

第2章 Win32程序运行原理9

2.1 CPU的保护模式和Windows系统9

2.1.1 Windows的多任务实现9

2.1.2 虚拟内存9

2.1.3 内核模式和用户模式10

2.2 内核对象11

2.2.1 内核对象的引出11

2.2.2 对象句柄12

2.2.3 使用计数12

2.3 进程的创建12

2.3.1 进程(Process)和线程(Thread)12

2.3.2 应用程序的启动过程13

2.3.3 CreateProcess函数14

2.3.4 创建进程的例子17

2.4 进程控制18

2.4.1 获取系统进程18

2.4.2 终止当前进程20

2.4.3 终止其他进程21

2.4.4 保护进程22

2.5 【实例】游戏内存修改器23

2.5.1 实现原理23

2.5.2 编写测试程序25

2.5.3 搜索内存25

2.5.4 写进程空间28

2.5.5 提炼接口28

第3章 Win32程序的执行单元30

3.1 多线程30

3.1.1 线程的创建30

3.1.2 线程内核对象33

3.1.3 线程的终止36

3.1.4 线程的优先级37

3.1.5 C/C++运行期库40

3.2 线程同步41

3.2.1 临界区对象41

3.2.2 互锁函数44

3.2.3 事件内核对象45

3.2.4 信号量内核对象47

3.2.5 互斥内核对象50

3.2.6 线程局部存储52

3.3 设计自己的线程局部存储55

3.3.1 CSimpleList类56

3.3.2 CNoTrackObject类61

3.3.3 CThreadSlotData类63

3.3.4 CThreadLocal类模板72

3.4 设计线程类——CWinThread76

3.5 【实例】多线程文件搜索器85

3.5.1 搜索文件的基本知识85

3.5.2 编程思路87

第4章 Windows图形界面94

4.1 了解窗口94

4.2 第一个窗口程序95

4.2.1 创建Win32工程和MessageBox函数95

4.2.2 Windows的消息驱动97

4.2.3 创建窗口98

4.2.4 分析主程序代码100

4.2.5 处理消息的代码104

4.3 一个“简陋”的打字程序106

4.3.1 使用资源106

4.3.2 菜单和图标108

4.3.3 接收键盘输入109

4.3.4 接收鼠标输入112

4.3.5 设置文本颜色和背景色113

4.4 GDI基本图形113

4.4.1 设备环境113

4.4.2 Windows的颜色和像素点116

4.4.3 绘制线条117

4.4.4 绘制区域121

4.4.5 坐标系统122

4.5 Windows内存DC126

4.6 【实例】小时钟127

4.6.1 基础知识——定时器和系统时间127

4.6.2 时钟程序130

4.6.3 移动窗口134

4.6.4 使用快捷菜单135

第5章 框架管理基础139

5.1 运行时类信息(CRuntimeClass类)139

5.1.1 动态类型识别和动态创建139

5.1.2 DECLARE_DYNAMIC等宏的定义144

5.2 调试支持146

5.2.1 基本调试方法146

5.2.2 调试输出147

5.2.3 跟踪和断言148

5.3 框架程序中的映射149

5.3.1 映射的概念149

5.3.2 内存分配方式150

5.3.3 设计管理方式153

5.3.4 句柄映射的实现160

5.4 框架程序的状态信息161

5.4.1 模块的概念161

5.4.2 模块、线程的状态162

5.5 框架程序的执行顺序164

5.5.1 线程的生命周期164

5.5.2 程序的初始化过程167

5.5.3 框架程序应用举例170

第6章 框架中的窗口171

6.1 CWnd类的引出171

6.2 窗口句柄映射172

6.2.1 向CWnd对象分发消息172

6.2.2 消息的传递方式175

6.3 创建窗口177

6.3.1 窗口函数177

6.3.2 注册窗口类178

6.3.3 消息钩子180

6.3.4 最终实现185

6.3.5 创建窗口的例子187

6.4 消息映射189

6.4.1 消息映射表189

6.4.2 DECLARE_MESSAGE_MAP等宏的定义192

6.5 消息处理194

6.5.1 使用消息映射宏194

6.5.2 消息的分发机制197

6.5.3 消息映射应用举例200

6.6 使用Microsoft基础类库204

6.7 【实例】窗口查看器206

6.7.1 窗口界面206

6.7.2 获取目标窗口的信息211

6.7.3 自制按钮215

第7章 用户界面设计219

7.1 对话框与子窗口控件基础219

7.1.1 子窗口控件运行原理219

7.1.2 对话框工作原理222

7.2 使用对话框和控件与用户交互224

7.2.1 以对话框为主界面的应用程序224

7.2.2 常用子窗口控件228

7.2.3 对话框与控件的颜色229

7.3 通用控件230

7.3.1 通用控件简介230

7.3.2 使用通用控件231

7.3.3 使用状态栏235

7.3.4 使用列表视图238

7.3.5 使用进度条239

7.4 通用对话框241

7.4.1 “打开”文件和“保存”文件对话框241

7.4.2 浏览目录对话框243

7.5 使用框架程序简化界面开发245

7.5.1 在框架程序中使用对话框245

7.5.2 CDialog类248

7.5.3 框架程序中的控件250

7.5.4 使用向导250

7.6 【实例】目录监视器252

7.6.1 目录监视的基础知识253

7.6.2 实例程序253

7.6.3 使用SkinMagic美化界面259

7.7 窗口进程监视器261

第8章 Windows文件操作和内存映射文件264

8.1 文件操作264

8.1.1 创建和读写文件264

8.1.2 获取文件信息268

8.1.3 常用文件操作270

8.1.4 检查PE文件有效性的例子272

8.1.5 MFC的支持(CFile类)274

8.2 驱动器和目录276

8.2.1 驱动器操作276

8.2.2 目录操作279

8.3 使用注册表279

8.3.1 注册表的结构279

8.3.2 管理注册表280

8.3.3 注册表API应用举例(设置开机自动启动)282

8.3.4 ATL库的支持(CRegKey类)283

8.4 内存映射文件284

8.4.1 内存映射文件相关函数284

8.4.2 使用内存映射文件读BMP文件的例子286

8.4.3 进程间共享内存292

8.4.4 封装共享内存类CShareMemory294

8.5 一个文件切割系统的实现295

8.5.1 通信机制295

8.5.2 分割合并机制296

8.5.3 接口函数300

8.5.4 最终实现301

8.6 【实例】文件切割器开发实例306

第9章 动态链接库和钩子314

9.1 动态链接库314

9.1.1 动态链接库的概念314

9.1.2 创建动态链接库工程314

9.1.3 动态链接库中的函数316

9.1.4 使用导出函数317

9.2 Windows钩子320

9.2.1 钩子的概念320

9.2.2 钩子的安装与卸载320

9.2.3 键盘钩子实例322

9.3 挂钩API技术(HOOK API)327

9.3.1 实现原理327

9.3.2 使用钩子注入DLL327

9.3.3 HOOK过程328

9.3.4 封装CAPIHook类333

9.3.5 HOOK实例——进程保护器340

9.4 其他常用的侦测方法344

9.4.1 使用注册表注入DLL344

9.4.2 使用远程线程注入DLL345

9.4.3 通过覆盖代码挂钩API351

9.5 【实例】用户模式下侦测Win32 API的例子354

第10章 TCP/IP和网络通信359

10.1 网络基础知识359

10.1.1 TCP/IP参考模型359

10.1.2 以太网361

10.1.3 以太网接口堆栈363

10.1.4 服务器/客户机模型363

10.2 Winsock接口364

10.2.1 套节字的概念和类型364

10.2.2 Winsock的寻址方式和字节顺序364

10.2.3 Winsock编程流程366

10.2.4 典型过程图371

10.2.5 服务器和客户方程序举例371

10.2.6 UDP协议编程374

10.3 网络程序实际应用374

10.3.1 设置I/O模式375

10.3.2 TCP服务器实例376

10.3.3 TCP客户端实例384

10.4 截拦网络数据388

10.4.1 DLL工程框架388

10.4.2 数据交换机制389

10.4.3 数据的过滤391

10.5 【实例】IP封包截获工具IPPack源代码分析392

10.5.1 主窗口界面392

10.5.2 注入DLL395

10.5.3 处理封包399

第11章 内核模式程序设计与Windows防火墙开发403

11.1 Windows操作系统的体系结构403

11.1.1 Windows 2000/XP组件结构图403

11.1.2 环境子系统和子系统DLL404

11.1.3 系统核心405

11.1.4 设备驱动程序408

11.2 服务408

11.2.1 服务控制管理器(Service Control Manager)408

11.2.2 服务控制程序409

11.2.3 封装CDriver类412

11.3 开发内核驱动的准备工作417

11.3.1 驱动程序开发工具箱417

11.3.2 编译和连接内核模式驱动的方法417

11.3.3 创建第一个驱动程序418

11.4 内核模式程序设计基础知识418

11.4.1 UNICODE字符串418

11.4.2 设备对象419

11.4.3 驱动程序的基本组成420

11.4.4 I/O请求包和I/O堆栈420

11.4.5 完整驱动程序423

11.5 内核模式与用户模式交互426

11.5.1 扩展派遣接口426

11.5.2 IOCTL应用举例427

11.6 IP过滤钩子驱动431

11.6.1 创建过滤钩子(Filter-hook)驱动431

11.6.2 IP过滤钩子驱动工程框架434

11.6.3 过滤列表437

11.6.4 编写过滤函数438

11.6.5 注册钩子回调函数440

11.6.6 处理IOCTL设备控制代码442

11.7 【实例】防火墙开发实例443

11.7.1 文档视图443

11.7.2 文档对象446

11.7.3 视图对象448

11.7.4 主窗口对象450

第12章 Windows数字图像处理454

12.1 编程基础454

12.2 CVector2D类455

12.3 CGray类的设计458

12.3.1 图像的加载和保存460

12.3.2 创建新位图464

12.3.3 设置和获取位图像素值466

12.3.4 绘制矩形和直线470

热门推荐