第1章 快速掌握VC++ 6.0开发环境 1
1.1 从第一个程序开始熟悉VC++ 6.0开发环境 2
1.1.1 摸索VC++ 6.0的集成开发环境 2
1.1.2 应用程序开发向导AppWizard 6
1.1.3 类向导ClassWizard 11
1.1.4 如何编译、调试与诊断 12
1.1.5 灵活应用MSDN进行自我辅导 13
1.2 初步了解VC++ 6.0应用程序类型 14
1.2.1 Win32项目 15
1.2.2 MFC项目 18
1.3 进一步了解VC++ 6.0 MFC编程 19
1.3.1 MFC的应用程序框架 20
1.3.2 MFC类库的概念和组成 22
1.3.3 MFC的局限性 23
1.4 拓展第一个程序:开始VC++ 6.0 MFC编程之旅 23
1.4.1 创建MFC应用程序框架 24
1.4.2 为程序编写源代码 30
1.4.3 编译Release版本 31
1.5 本章小结 33
第2章 快速领会C++开发的五堂课 35
2.1 C++语言基础 36
2.1.1 C++程序的基本结构 36
2.1.2 常量 37
2.1.3 变量 38
2.1.4 数据类型 39
2.1.5 表达式与运算符 44
2.2 C++程序控制语句 45
2.2.1 if语句 46
2.2.2 switch语句 48
2.2.3 while语句 50
2.2.4 do-while语句 52
2.2.5 for语句 53
2.2.6 continue语句 54
2.2.7 break语句 55
2.2.8 return语句 55
2.3 C++函数 56
2.3.1 函数的定义与声明 56
2.3.2 函数的调用与默认参数 58
2.3.3 函数中的变量 61
2.3.4 函数重载 62
2.4 C++类 64
2.4.1 定义C++类 65
2.4.2 派生C++类 66
2.4.3 使用C++模板 69
2.5 C++编程实战 71
2.6 本章小结 74
第3章 必须要掌握的Windows编程要点 75
3.1 匈牙利编程命名规则 76
3.2 Windows编程模型 77
3.2.1 最简单的Windows应用程序 78
3.2.2 真正的Windows应用程序——“Hello World” 80
3.2.3 Windows程序分析 82
3.3 高级Windows编程 88
3.3.1 使用位图资源 88
3.3.2 制作菜单 92
3.3.3 处理重要的事件 93
3.4 Windows GDI、控件 95
3.4.1 高级GDI编程 96
3.4.2 图形绘制 99
3.4.3 文本和字体 103
3.4.4 Windows控件的应用 104
3.5 编写第一个Windows程序——实时显示鼠标位置 108
3.6 本章小结 111
第4章 Windows的消息机制 113
4.1 怎样理解消息机制 114
4.1.1 什么是消息 114
4.1.2 如何得到应用程序自己的消息 115
4.1.3 消息的种类 116
4.2 MFC的消息映射 117
4.2.1 什么是消息映射 118
4.2.2 消息映射宏 120
4.2.3 能够处理消息的类 122
4.3 消息的处理 124
4.3.1 处理标准的窗口消息 124
4.3.2 处理命令消息 127
4.3.3 消息的投递与发送 128
4.3.4 使用处理自定义消息 130
4.4 模仿MFC建立自己的消息机制 131
4.5 本章小结 135
第5章 MFC应用程序设计 137
5.1 MFC概述 138
5.1.1 MFC的概念 138
5.1.2 MFC的命名规则 138
5.1.3 初识MFC 139
5.1.4 应用程序类CWinApp 141
5.2 对话框程序 143
5.2.1 对话框应用程序的建立 143
5.2.2 使用模式对话框 149
5.2.3 使用无模式对话框 155
5.2.4 使用通用对话框 158
5.3 文档/视图结构 160
5.3.1 应用程序的建立 161
5.3.2 文档对象 166
5.3.3 视图对象 169
5.3.4 框架窗口 171
5.3.5 打印操作 173
5.3.6 SDI与MDI的区别 175
5.4 用SDI实现鼠标画图 176
5.5 本章小结 182
第6章 动态链接库 183
6.1 动态链接库的基本知识 184
6.1.1 动态链接库与静态链接库 184
6.1.2 动态链接库的优点 184
6.1.3 动态链接库类型 185
6.2 创建动态链接库 186
6.2.1 创建Win32 DLL 186
6.2.2 在工程中使用DLL 188
6.2.3 动态链接库的构成 189
6.2.4 动态链接库的链接方式 193
6.3 MFC常规DLL 195
6.3.1 创建MFC常规DLL 195
6.3.2 模块定义文件——导出函数 198
6.3.3 显示链接MFC常规DLL 199
6.4 MFC扩展DLL 200
6.4.1 创建MFC扩展DLL 201
6.4.2 使用MFC扩展DLL的导出类 203
6.5 制作自己的数学库 204
6.6 本章小结 209
第7章 数据库访问和文件读写 211
7.1 数据库概述 212
7.1.1 基本概念 212
7.1.2 数据库的分类 213
7.1.3 结构化查询语言——SQL 215
7.1.4 Visual C++支持的数据访问 216
7.2 ODBC数据库应用开发 217
7.2.1 MFC ODBC类 217
7.2.2 生成应用程序框架 218
7.2.3 浏览数据库记录 223
7.2.4 添加、删除和修改记录 225
7.3 ADO数据库应用开发 226
7.3.1 ADO概述 226
7.3.2 ADO对象 226
7.3.3 使用ADO对象操作数据库 228
7.4 文件操作 237
7.4.1 Windows API中文件操作函数的介绍 237
7.4.2 MFC的CFile类 241
7.4.3 文件的写入 244
7.4.4 文件的读出 245
7.5 实例应用——电话管理与数据导出 246
7.6 本章小结 250
第8章 多线程编程基础 251
8.1 进程与线程 252
8.1.1 进程 252
8.1.2 线程 254
8.1.3 进程与线程的优先级 255
8.1.4 进程与线程的区别 256
8.2 产生新进程 257
8.2.1 创建进程的示例 257
8.2.2 CreateProcess函数 258
8.2.3 进程的终止 262
8.3 创建多线程 264
8.3.1 线程创建函数Create Thread 264
8.3.2 创建工作线程 266
8.3.3 创建用户界面线程 269
8.4 控制线程的运行 273
8.4.1 线程的挂起以及唤醒 273
8.4.2 线程休眠 274
8.4.3 线程的终止 275
8.5 制作线程控制器 276
8.6 本章小结 281
第9章 ActiveX控件 283
9.1 基本概念 284
9.1.1 什么是ActiveX控件 284
9.1.2 COM技术说明 285
9.1.3 属性、方法以及事件 286
9.2 使用ActiveX控件 288
9.2.1 ActiveX控件和Windows控件的比较 288
9.2.2 插入ActiveX控件 289
9.2.3 ActiveX控件属性、方法和事件的操作 291
9.3 编写ActiveX控件 295
9.3.1 创建框架 295
9.3.2 修改控件的显示 299
9.3.3 添加控制函数 303
9.3.4 导出控制函数 304
9.4 制作自己的FLASH播放器 307
9.5 本章小结 309
第10章 网络编程基础 311
10.1 网络编程基础 312
10.1.1 网络术语 312
10.1.2 开放系统互连参考模型说明 314
10.1.3 TCP/IP参考模型 315
10.2 Winsock基础 317
10.2.1 初始化Winsock 318
10.2.2 建立套接字 320
10.2.3 面向连接的协议 322
10.2.4 无连接协议 327
10.2.5 其他API 328
10.2.6 MFC的网络函数简介 331
10.3 制作自己的HTTP下载程序 335
10.4 本章小结 338
第11章 多媒体音视频系统开发实践 339
11.1 系统设计的原则和实现的目标 340
11.1.1 多媒体系统的设计原则 340
11.1.2 多媒体系统的实现目标 341
11.2 系统需求分析 342
11.2.1 总体结构 342
11.2.2 类图设计和功能划分 343
11.3 Microsoft Windows Media Player SDK 345
11.3.1 什么是Microsoft Windows Media Player SDK 345
11.3.2 如何获取Microsoft Windows Media Player SDK 346
11.3.3 Microsoft Windows Media Player SDK中常用的函数说明 346
11.4 模块设计和关键技术剖析 347
11.4.1 ActiveX控件的使用 347
11.4.2 界面部分 347
11.4.3 Microsoft Windows Media Player SDK的使用 349
11.4.4 列表保存部分 354
11.4.5 使用STL处理列表 358
11.5 系统测试与部署 360
11.6 多媒体音视频开发的难点、重点 361
11.7 本章小结 362
第12章 企业信息系统开发实践 363
12.1 系统概述 364
12.2 系统设计的原则和实现的目标 364
12.2.1 信息系统的设计原则 364
12.2.2 信息系统的实现目标 365
12.3 需求分析 366
12.3.1 信息系统的总体结构 366
12.3.2 信息系统的类图设计 367
12.4 数据库的建模分析 373
12.4.1 数据库的设计要求 373
12.4.2 数据库建模分析 375
12.4.3 表的建立 376
12.5 模块的设计与关键技术剖析 377
12.5.1 ODBC数据库连接的方法 377
12.5.2 数据的查询 381
12.5.3 数据的写入 386
12.5.4 数据的删除 388
12.5.5 算法实现 390
12.6 系统测试与部署 394
12.7 系统设计难点深入分析 394
12.8 本章小结 396
第13章 图形图像处理系统开发实践 397
13.1 系统概述 398
13.2 系统设计的原则和实现的目标 398
13.2.1 图形图像处理的设计原则 398
13.2.2 图形图像处理的实现目标 399
13.3 需求分析 400
13.3.1 图形图像处理系统的总体结构 400
13.3.2 图形图像处理系统的类图设计 401
13.4 图形图像的基础知识 404
13.4.1 GDI的使用说明 405
13.4.2 BMP图像的格式 405
13.4.3 位图与调色板的处理 409
13.4.4 BMP图像的基本操作 410
13.4.5 用MFC设计界面 411
13.5 模块的设计与关键技术剖析 412
13.5.1 BMP文件的读取 412
13.5.2 读取BMP图像的色彩 417
13.5.3 色彩变换 421
13.5.4 保存BMP图像 424
13.5.5 彩色位图转换成黑白位图 429
13.5.6 提取图像轮廓 433
13.5.7 在画布上显示 435
13.6 系统测试与部署 436
13.7 系统设计难点深入分析 437
13.8 本章小结 437
第14章 VC实现办公自动化 439
14.1 系统概述 440
14.2 系统设计的原则和实现的目标 440
14.2.1 办公自动化的设计原则 440
14.2.2 办公自动化的实现目标 441
14.3 需求分析 442
14.3.1 办公自动化的总体结构 442
14.3.2 办公自动化的类图设计 444
14.4 数据库建模分析 448
14.4.1 数据库的设计要求 448
14.4.2 数据库建模分析 449
14.4.3 表的建立 450
14.5 模块设计与关键技术剖析 450
14.5.1 用系统的ODBC程序连接数据库 451
14.5.2 数据的写入 453
14.5.3 数据的查询 455
14.5.4 数据的修改 457
14.5.5 界面设计 459
14.5.6 生成Word文档 460
14.5.7 生成Excel文档 469
14.6 系统测试与部署 475
14.7 系统设计难点深入分析 476
14.8 本章小结 478
附录A VC典型问答88例 479