图书介绍

Windows编程循序渐进2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Windows编程循序渐进
  • 张静盛编著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111238621
  • 出版时间:2008
  • 标注页数:384页
  • 文件大小:114MB
  • 文件页数:395页
  • 主题词:窗口软件,Windows-程序设计

PDF下载


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

下载说明

Windows编程循序渐进PDF格式电子书版下载

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

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

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

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

图书目录

第一篇 软件设计基础篇第1章 软件开发起步2

1.1 建立MFC应用程序2

1.2 分析框架结构4

1.2.1 框架代码文件的结构4

1.2.2 应用程序类5

1.2.3 对话框类6

1.2.4 添力消息响应7

第2章 对话框应用程序9

2.1 模态对话框9

2.1.1 实例:使用MFC实现模态对话框9

2.1.2 实例:使用win32 API实现模态对话框10

2.2 非模态对话框12

2.2.1 实例:使用MFC实现非模态对话框12

2.2.2 实例:使用Win32 API实现非模态对话框13

2.3 属性对话框14

2.3.1 实例:多页面切换程序14

2.3.2 实例:向导对话框16

2.4 对话框设计技巧17

2.4.1 控件对齐与排列17

2.4.2 设置控件逻辑顺序18

2.5 通用对话框19

2.5.1 实例:通用“打开”和“另存为”对话框19

2.5.2 实例:通用“字体”对话框22

2.5.3 实例:通用“颜色”对话框23

第3章 基本控件26

3.1 按钮控件26

3.1.1 按钮CButton类26

3.1.2 实例:按钮控件的使用方法28

3.2 编辑框30

3.2.1 编辑框CEdit类30

3.2.2 实例:编辑框的使用方法32

3.3 列表框33

3.3.1 列表框CListBox类33

3.3.2 实例:列表框的使用方法35

3.4 组合框36

3.4.1 组合框CComboxBox类37

3.4.2 实例:组合框的使用方法39

3.5 进度条41

3.5.1 进度条CProgressCtrl类41

3.5.2 实例:进度条的使用方法42

3.6 列表控件44

3.6.1 列表控件CListCtrl类44

3.6.2 实例:列表控件的使用方法45

第4章 文档与视图47

4.1 文档—视图结构47

4.1.1 单文档与多文档47

4.1.2 文档与视图体系48

4.2 实例:单文档应用程序与文档串行化52

第5章 GDI绘图技术57

5.1 图形设备接口GDI57

5.1.1 设备上下文57

5.1.2 GDI对象58

5.1.3 GDI绘图58

5.2 画笔58

5.2.1 画笔CPen类58

5.2.2 实例:使用GDI对象CPen绘图示例59

5.3 画刷60

5.3.1 画刷CBrush类60

5.3.2 实例:使用GDI对象CBrush绘图示例61

5.4 位图63

5.4.1 位图CBitmap63

5.4.2 实例:使用GDI对象CBitmap示例64

第6章 键盘与鼠标消息67

6.1 键盘消息67

6.1.1 键盘消息的类型67

6.1.2 实例:响应键盘消息示例68

6.1.3 模拟键盘消息70

6.1.4 实例:模拟键盘消息示例71

6.2 鼠标消息72

6.2.1 鼠标消息的类型72

6.2.2 实例:处理鼠标消息73

6.2.3 实例:模拟鼠标消息74

第二篇 软件设计综合应用篇第7章 网络通信基础80

7.1 网络模型80

7.1.1 OSI参考模型80

7.1.2 TCP/IP参考模型81

7.2 基础协议82

7.2.1 IP协议82

7.2.2 TCP协议83

7.2.3 UDP协议84

7.2.4 ICMP协议85

7.3 套接字编程85

7.3.1 函数介绍85

7.3.2 实例:Ping程序88

7.3.3 实例:网络嗅探器92

7.4 服务器与客户端模型96

7.4.1 实例:TCP服务端和客户端程序96

7.4.2 实例:UDP服务器和客户端程序100

7.5 实例:使用分层服务提供者LSP截取网络数据包103

7.5.1 服务提供者接口(SPI)103

7.5.2 设计实例103

7.5.3 枚举协议目录106

7.5.4 LSP的安装与卸载108

7.5.5 分层服务提供者(LSP)113

第8章 密码学算法118

8.1 数据加密标准(DES)118

8.1.1 算法描述118

8.1.2 初始置换与逆初始置换119

8.1.3 生成子密钥120

8.1.4 f函数的执行流程121

8.1.5 解密过程122

8.1.6 实例:DES算法加密解密演示123

8.2 国际数据加密算法(IDEA)131

8.2.1 算法描述131

8.2.2 生成子密钥133

8.2.3 实例:IDEA算法加密解密演示134

8.3 Blowfish算法139

8.3.1 算法描述139

8.3.2 生成子密钥和S盒141

8.3.3 实例:Blowfish算法加密解密演示141

8.4 公钥加密算法(RSA)146

8.4.1 算法描述146

8.4.2 实例:RSA加密解密演示软件147

第9章 多媒体技术151

9.1 多媒体控件151

9.1.1 实例:使用Animation控件播放AVI文件151

9.1.2 实例:使用Windows Media Player控件播放多媒体文件152

9.1.3 实例:使用Real Player控件播放多媒体文件153

9.2 屏幕截图154

9.2.1 位图154

9.2.2 实例:屏幕截图155

9.3 屏幕录像157

9.3.1 实现原理157

9.3.2 实例:屏幕录像158

第10章 数据库技术161

10.1 设置ODBC数据源161

10.1.1 ODBC数据源161

10.1.2 使用ODBC管理器设置Access数据源162

10.2 MFC ODBC数据库编程163

10.2.1 MFC ODBC概述163

10.2.2 实例:使用MFC ODBC访问数据库164

10.3 MFC DAO数据库编程169

10.3.1 MFC DAO概述169

10.3.2 实例:使用MFC DAO访问数据库169

第11章 综合实例开发174

11.1 实例:Huffman编码软件174

11.1.1 Huffman算法原理174

11.1.2 具体实现175

11.2 实例:八数码游戏178

11.2.1 八数码游戏算法介绍178

11.2.2 具体实现179

11.3 实例:游戏寻路算法A*183

11.3.1 A*算法原理183

11.3.2 二叉堆在A*中的应用184

11.3.3 具体实现186

11.4 实例:“连连看”游戏辅助工具190

11.4.1 “连连看”算法原理190

11.4.2 具体实现191

11.5 实例:“对对碰”游戏辅助工具196

11.5.1 “对对碰”算法原理196

11.5.2 具体实现197

11.6 实例:拼音输入法199

11.6.1 设计实例200

11.6.2 拼音字典存储结构——Trie树200

11.6.3 单字联想205

11.7 实例:Windows二级文件系统209

11.7.1 设计实例209

11.7.2 具体实现211

11.8 实例:手柄测试器214

11.8.1 DirectInput手柄输入214

11.8.2 设计实例216

第三篇 Windows系统程序设计篇第12章 进程与线程222

12.1 进程222

12.1.1 原理介绍223

12.1.2 创建进程223

12.1.3 实例:创建进程226

12.2 线程227

12.2.1 原理介绍227

12.2.2 创建线程229

12.2.3 实例:创建线程229

12.3 枚举进程/线程信息231

12.3.1 实例:使用PSAPI示例231

12.3.2 实例:使用ToolHelpAPI示例233

12.3.3 实例:使用Native API示例235

第13章 内存管理239

13.1 虚拟内存239

13.1.1 进程虚拟地址空间239

13.1.2 实例:查看虚拟内存状态240

13.1.3 实例:演示虚拟内存的“保留—提交”特性243

13.1.4 实例:游戏内存修改器245

13.2 内存映射文件249

13.2.1 内存映射文件的原理249

13.2.2 实例:文件分割器250

第14章 进程间通信254

14.1 消息传递机制254

14.1.1 消息传递254

14.1.2 实例:使用WM_COPYDATA消息传递数据254

14.2 共享内存256

14.2.1 共享内存的原理256

14.2.2 实例:使用共享内存示例257

14.3 管道和邮槽259

14.3.1 管道和邮槽通信原理259

14.3.2 实例:使用匿名管道重定向程序输出261

14.3.3 实例:命名管道示例263

14.3.4 实例:邮槽通信示例266

14.4 剪贴板267

14.4.1 剪贴板通信机制267

14.4.2 实例:使用剪贴板实现进程间通信示例269

第15章 线程同步275

15.1 原子访问275

15.1.1 多线程访问共享数据问题275

15.1.2 互锁系列函数276

15.2 关键代码段277

15.2.1 基本原理277

15.2.2 实例:多线程环境下的数据共享278

15.3 内核对象与等待函数280

15.3.1 内核对象280

15.3.2 等待函数281

15.4 事件内核对象283

15.4.1 基本原理283

15.4.2 实例:使用事件内核对象示例284

15.5 等待定时器内核对象285

15.5.1 基本原理285

15.5.2 实例:使用等待定时器的APC机制287

15.6 信标内核对象288

15.6.1 基本原理288

15.6.2 实例:使用信标内核对象示例289

15.7 互斥内核对象291

15.7.1 基本原理292

15.7.2 实例:使用互斥内核对象示例292

第16章 动态链接库295

16.1 DLL基础295

16.1.1 DLL的隐式链接295

16.1.2 DLL的显示加载296

16.2 编写动态链接库297

16.2.1 入口函数DllMain297

16.2.2 实例:编写DLL实现导出变量、函数、类298

16.3 线程本地存储器(TLS)301

16.3.1 静态TLS和动态TLS301

16.3.2 实例:使用静态TLS示例303

16.3.3 实例:使用动态TLS示例304

第17章 结构化异常处理306

17.1 SEH的概念、特性306

17.2 SEH的基本使用方法307

17.2.1 结束异常程序307

17.2.2 异常处理程序310

17.2.3 顶层异常处理313

17.3 VC++编译器级SEH的具体实现313

17.3.1 SEH相关数据结构的介绍314

17.3.2 异常处理链结构图315

17.3.3 实例:单嵌套异常块演示程序316

17.3.4 实例:多嵌套异常块演示程序318

17.3.5 VC++编译器级异常帧结构320

17.3.6 VC中的顶层异常处理320

17.3.7 VC搜索异常处理程序流程322

第18章 可执行文件格式324

18.1 PE文件格式324

18.1.1 PE文件头324

18.1.2 可选文件头325

18.1.3 区块表327

18.1.4 输入表328

18.1.5 输出表329

18.1.6 资源表330

18.1.7 重定位表332

18.1.8 绑定输入表332

18.2 综合应用333

18.2.1 实例:PE文件资源查看器333

18.2.2 实例:为应用程序添加Nag窗口337

第19章 模块注入与函数挂接技术341

19.1 模块注入341

19.1.1 添加导入表项342

19.1.2 远程线程技术344

19.1.3 实例:使用远程线程实现模块注入345

19.1.4 异步过程调用(APC)346

19.1.5 实例:使用APC实现模块注入347

19.2 挂接API349

19.2.1 重定向API350

19.2.2 实例:重定向API MessageBoxA示例350

19.2.3 古老的API HOOK353

19.2.4 实例:HOOK API示例354

19.2.5 Detours Hook356

19.2.6 实例:使用detour库实现挂接API示例357

19.3 钩子359

19.3.1 钩子的基本原理359

19.3.2 钩子类型360

19.3.3 实例:全局鼠标钩子示例366

19.3.4 实例:全局键盘钩子示例369

19.3.5 实例:使用局部CBT钩子示例370

19.3.6 实例:使用低级键盘钩子示例371

19.4 反注入技术372

19.4.1 实例:使用调试钩子屏蔽全局钩子372

19.4.2 实例:检测注入模块374

19.4.3 实例:使用DLL_THREAD_ATTACH阻止远程线程377

19.4.4 实例:使用挂钩LoadLibraryExW屏蔽全局钩子379

附录 光盘源码实例381

热门推荐