新書推薦:
《
那本书是(吉竹伸介与又吉直树 天才联动!)
》
售價:HK$
99.7
《
传播的跃迁:人工智能如何革新人类的交流
》
售價:HK$
110.9
《
纯粹·古代中国的历史与制度
》
售價:HK$
62.7
《
生活来来往往 别等来日方长 新版(伍佰:“讲好了这一辈子,再度重相逢。”别等,别遗憾!珍惜当下才是最好的解药)
》
售價:HK$
58.2
《
一个英国军事顾问眼中的二战
》
售價:HK$
277.8
《
就业、利息和货币通论(徐毓枬译本)(经济学名著译丛)
》
售價:HK$
67.2
《
瘦肝
》
售價:HK$
99.7
《
股票大作手回忆录
》
售價:HK$
55.8
|
內容簡介: |
“开发宝典丛书”是由清华大学出版社为软件开发爱好者精心打造的一套软件开发百科全书。丛书强调“全面、新颖、详细、实用、深入、高效”等特色,涵盖常见的编程语言和技术。丛书中的每本书都是由从事软件开发多年、具备丰富的开发经验的老手精心编写,讲解细腻,内容实用,并精心录制了配套教学视频。可以说,这套丛书是编程爱好者系统学习软件开发技术的不二选择,一册在手,万事无忧!
《VisualC++编程实战宝典》以VisualStudio2010作为开发环境,由浅入深,全面、系统地介绍了VisualC++开发的各项技术。书中的各个技术点都提供了实例供读者实战演练,各章后还提供了实战练习题帮助读者巩固和提高。另外,本书配1张DVD光盘,内容为作者专门为本书录制的33。6小时配套教学视频,还收录了本书涉及的所有实例源文件,以帮助读者更加高效、直观地学习本书内容。
本书共分7篇。第1篇介绍VisualStudio2010开发环境及搭建、C++基本语法及面向对象思想;第2篇介绍Windows编程、MFC基础、菜单、工具栏、状态栏、Windows标准控件、MFC类、文档视图结构、对话框等技术;第3篇介绍数据库编程基础及SQLServer、ADO、ODBC、OLEDB、MySQL等数据库访问技术;第4篇介绍Windows套接字编程、邮槽和管道的使用、串行端口编程、Internet编程等;第5篇介绍磁盘操作、系统控制与调用、应用程序的操作、系统工具的操作、桌面的相关操作、系统信息操作、消息的使用、剪贴板的使用、鼠标键盘的操作、操作注册表、读写INI文件、读写XML文件、动态链接库编程、多线程编程等;第6篇介绍文本字体、图形与图像编程、声音与动画编程、DirectX图形开发等;第7篇详细介绍网络音频播放系统、GPS定位系统项目案例的开发,以提高读者的实战水平。
本书适合所有想全面学习VisualC++开发技术的人员阅读,也适合用VisualC++进行开发的工程技术人员和科研人员阅读。对于经常使用VisualC++做开发的人员,本书是一本不可多得的案头必备参考手册。
超值、大容量DVD光盘
本书各章涉及的实例源文件;
33.6小时本书配套教学视频;
3个VisualC++项目案例源程序及3小时教学视频;
324页《CC++程序员面试宝典》电子书。
一分钟了解本书内容
VisualStudio2010集成开发环境(26分钟视频)
VisualStudio2010基本应用程序的创建(29分钟视频)
CC++语言基础(162分钟视频)
C++面向对象程序设计(108分钟视频)
Windows编程与MFC基础(49分钟视频)
菜单、工具栏和状态栏(61分钟视频)
使用Windows标准控件(85分钟视频)
MFC的一些常用类(67分钟视频)
文档视图结构应用程序(70分钟视频)
对话框的应用(86分钟视频)
数据库开发概述(95分钟视频)
VisualC++中的SQLServer访问技术(54分钟视频)
VisualC++中的ODBC访问技术(62分钟视频)
VisualC++中的OLEDB访问技术(25分钟视频)
VisualC++中的MySQL访问技术(27分钟视频)
Windows套接字编程(81分钟视频)
邮槽与管道(57分钟视频)
通信端口编程(64分钟视频)
Internet编程(49分钟视频)
系统相关功能开发(191分钟视频)
注册表、INI和XML文件(92分钟视频)
动态链接库编程(71分钟视频)
多线程编程(62分钟视频)
文本字体技术(34分钟视频)
图形与图像编程(109分钟视频)
声音与动画编程(34分钟视频)
DirectX图形开发(97分钟视频)
网络音频播放系统(24分钟视频)
GPS定位系统(46分钟视频)
|
關於作者: |
李琳娜,高级程序员、系统设计师、系统分析员。擅长CC++语言,精通Visual C++开发技术。有超过15年的Visual C++开发经验,有超过6年的项目总监和项目经理的职业生涯。长期从事电信行业软件开发,主持开发过的软件项目有射频卡管理系统、物流管理系统、SIP、语音卡、银信通、电话银行、仪表控制系统、GPS定位系统、人力资源系统等。
|
目錄:
|
第1篇 Visual C++开发基础
第1章 Visual Studio 2010集成开发环境( 教学视频:26分钟)
1.1 Visual Studio 2010及其开发环境
1.1.1 Visual Studio 2010的安装
1.1.2 Visual Studio 2010开发环境
1.1.3 Visual Studio 2010向导
1.2 工作区视图
1.2.1 解决方案视图
1.2.2 类视图
1.2.3 资源视图
1.3 资源与资源编辑器
1.3.1 资源的类型
1.3.2 资源编辑器
1.4 本章小结
1.5 习题
第2章 Visual Studio 2010基本应用程序的创建( 教学视频:29分钟)
2.1 使用AppWizard生成项目
2.1.1 解决方案与项目
2.1.2 使用AppWizard创建项目
2.2 Win32控制台应用程序
2.2.1 使用向导生成Win32控制台项目
2.2.2 添加源文件
2.2.3 编译、链接程序
2.2.4 生成程序
2.2.5 运行程序
2.3 MFC应用程序框架
2.3.1 创建MFC应用程序
2.3.2 认识文档视图结构
2.4 本章小结
2.5 习题
第3章 CC++语言基础( 教学视频:162分钟)
3.1 对标准C的扩展--C++
3.2 C++语法元素
3.2.1 最小的元素--符号
3.2.2 注释规范
3.2.3 标识符命名规范
3.2.4 C++预定义的关键字
3.2.5 标点符号
3.2.6 操作符
3.2.7 声明与定义
3.3 常量和变量
3.3.1 定义常量
3.3.2 常量成员函数
3.3.3 定义变量
3.3.4 代码的有效范围--作用域
3.4 数据类型
3.4.1 基本数据类型
3.4.2 数据类型的转换方式
3.4.3 数组
3.4.4 结构体
3.4.5 共用体
3.4.6 匿名共用体
3.4.7 枚举类型
3.4.8 用typedef定义类型
3.4.9 位域
3.5 运算符和表达式
3.5.1 算术运算符
3.5.2 赋值运算符
3.5.3 关系运算符
3.5.4 逻辑运算符
3.5.5 位运算符
3.5.6 三目运算符
3.5.7 增1和减1运算符
3.5.8 逗号运算符
3.5.9 sizeof运算符
3.5.10 new和delete
3.5.11 范围确定符
3.5.12 类成员访问符
3.5.13 成员指针操作符
3.6 控制语句
3.6.1 表达式语句、空语句和复合语句
3.6.2 选择语句
3.6.3 循环语句
3.6.4 跳转语句
3.7 函数
3.7.1 函数的定义和调用
3.7.2 带默认形参值的函数
3.7.3 函数的递归调用
3.7.4 内联函数
3.7.5 函数的重载
3.8 指针和引用
3.8.1 指针和指针变量
3.8.2 和*运算符
3.8.3 指针和数组
3.8.4 指针和结构体
3.8.5 函数的指针传递
3.8.6 引用及函数的引用传递
3.9 预处理
3.9.1 宏定义
3.9.2 文件包含
3.9.3 条件编译
3.10 文件操作
3.10.1 打开文件
3.10.2 从文件读取数据
3.10.3 向文件写入数据
3.10.4 关闭文件
3.10.5 文件操作示例
3.11 本章小结
3.12 习题
第4章 C++面向对象程序设计( 教学视频:108分钟)
4.1 类和对象
4.1.1 从结构到类
4.1.2 定义类
4.1.3 定义对象
4.1.4 嵌套类
4.2 类成员及其特性
4.2.1 构造函数
4.2.2 析构函数
4.2.3 对象成员初始化
4.2.4 常类型(const)
4.2.5 使用this指针指向对象
4.2.6 类的作用域和对象的生存期
4.2.7 使用静态成员保存类的数据
4.2.8 友元函数和友元类
4.3 继承与派生
4.3.1 如何使用继承方法
4.3.2 派生类的构造函数和析构函数
4.3.3 实现多重继承
4.3.4 虚基类
4.4 多态和虚函数
4.4.1 使用虚函数实现派生类的通用功能
4.4.2 纯虚函数和抽象基类
4.5 重载运算符
4.5.1 运算符重载语法
4.5.2 可重载的运算符
4.5.3 重载赋值运算符
4.6 输入输出流库
4.6.1 C++的输入输出
4.6.2 预定义输入输出对象cout和cin
4.6.3 标准错误处理对象cerr
4.6.4 常用输入输出成员函数
4.6.5 常见文件流类
4.6.6 操作顺序文件
4.6.7 操作随机文件
4.7 C++的模板机制
4.7.1 为什么需要模板
4.7.2 函数模板的使用
4.7.3 类模板的使用
4.7.4 模板与宏的对比
4.7.5 模板应用示例
4.7.6 C++标准模板库STL简介
4.8 C++实例——设计一个电子时钟
4.9 本章小结
4.10 习题
第2篇 界 面 开 发
第5章 Windows编程与MFC基础( 教学视频:49分钟)
5.1 Windows编程
5.1.1 Windows应用程序编程接口API
5.1.2 使用句柄标识窗口
5.1.3 输入事件产生的消息
5.1.4 Windows句柄的数据类型
5.2 Windows程序执行流程
5.2.1 入口函数WinMain
5.2.2 注册窗体类
5.2.3 使用CreateWindow创建窗口
5.2.4 使用消息循环响应用户输入
5.2.5 主窗体函数WinProc
5.2.6 Windows编程实例——设计一个电子时钟
5.3 MFC基础
5.3.1 什么是微软基础类库MFC
5.3.2 MFC类层次结构
5.3.3 MFC全局函数
5.4 MFC应用程序框架分析
5.4.1 MFC的入口函数WinMain
5.4.2 派生自CWinApp的应用程序对象
5.4.3 初始化应用程序的InitInstance函数
5.4.4 框架程序的运行核心Run函数
5.5 MFC的消息映射
5.5.1 标准Windows消息
5.5.2 触发菜单快捷键产生的命令消息
5.5.3 使用ON_MESSAGE宏自定义消息
5.5.4 注册系统消息
5.6 本章小结
5.7 习题
第6章 菜单、工具栏和状态栏( 教学视频:61分钟)
6.1 菜单
6.1.1 菜单的种类及开发步骤
6.1.2 创建和编辑菜单
6.1.3 处理菜单命令消息
6.1.4 处理菜单更新消息
6.1.5 设置菜单项快捷键
6.1.6 创建与使用弹出式菜单
6.1.7 菜单类CMenu
6.2 工具栏
6.2.1 创建与编辑工具栏
6.2.2 设置工具栏停靠和浮动
6.2.3 设置工具提示
6.2.4 CToolBar介绍
6.3 状态栏
6.3.1 创建状态栏
6.3.2 状态栏实例
6.3.3 CStatusBar介绍
6.4 本章小结
6.5 习题
第7章 使用Windows标准控件( 教学视频:85分钟)
7.1 Windows标准控件
7.1.1 常用Windows控件
7.1.2 使用对话框编辑器创建控件
7.1.3 控件类的基类CWnd
7.1.4 控件的消息及其处理
7.1.5 创建控件对象
7.2 按钮
7.2.1 按钮简介
7.2.2 按钮类CButton
7.2.3 按钮的属性与消息
7.2.4 设定和获取按钮状态
7.3 静态控件与编辑控件
7.3.1 创建与使用静态控件
7.3.2 静态控件类CStatic
7.3.3 创建编辑控件
7.3.4 编辑控件类CEdit
7.3.5 编辑控件的消息
7.3.6 编辑控件的应用实例
7.4 单选按钮和复选框
7.4.1 单选按钮控件的创建
7.4.2 单选按钮控件的消息
7.4.3 复选框控件的创建
7.4.4 复选框控件的消息
7.4.5 单选按钮控件和复选框控件的实例
7.5 列表框和组合框
7.5.1 创建列表框
7.5.2 列表框类CListBox
7.5.3 列表框消息
7.5.4 列表框实例
7.5.5 创建组合框
7.5.6 组合框类CComboBox
7.5.7 组合框消息
7.5.8 组合框实例
7.6 微调控件、滑块控件和进度条控件
7.6.1 微调控件的创建和使用
7.6.2 创建和使用滑块控件
7.6.3 创建和使用进度条控件
7.6.4 编程实例
7.7 列表视图控件和树形视图控件
7.7.1 创建列表视图控件
7.7.2 列表视图控件类CListCtrl
7.7.3 列表视图控件的通知消息
7.7.4 创建树形视图控件
7.7.5 树形视图控件类CTreeCtrl
7.7.6 树形视图控件的消息
7.7.7 编程实例
7.8 ActiveX控件
7.8.1 使用ActiveX控件
7.8.2 ActiveX控件的结构
7.8.3 包装类
7.8.4 获取ActiveX控件的帮助信息
7.8.5 Visual C++中的控件和组件库
7.8.6 MFC程序中ActiveX控件的使用
7.9 本章小结
7.10 习题
第8章 MFC的一些常用类( 教学视频:67分钟)
8.1 字符串类(CString)
8.1.1 创建CString对象
8.1.2 CString类的成员函数
8.1.3 CString类的常用操作
8.1.4 CString的格式化与类型转换
8.1.5 CString使用实例
8.2 集合类1
8.2.1 数组类
8.2.2 数组类的使用实例
8.2.3 链表类
8.2.4 链表类的使用实例
8.3 日期、时间类
8.3.1 CTime类
8.3.2 格式化CTime对象
8.3.3 CTimeSpan类
8.3.4 制作一个计时器
8.4 MFC文件操作类——CFile
8.4.1 构造文件对象并打开文件
8.4.2 读写文件
8.4.3 定位文件
8.4.4 文件管理操作
8.4.5 文件操作实例
8.5 MFC异常类
8.5.1 MFC异常类简介
8.5.2 文件异常类CFileException
8.5.3 异常的捕获
8.6 本章小结
8.7 习题
第9章 文档视图结构应用程序( 教学视频:70分钟)
9.1 文档视图结构分析
9.1.1 框架中的主要类
9.1.2 文档类、视图类核心函数
9.1.3 新建、保存和打开的实现
9.1.4 多文档应用程序框架
9.2 开发文档视图结构应用程序
9.2.1 目标
9.2.2 创建基本程序框架
9.2.3 创建文档数据
9.2.4 绘图操作
9.2.5 文档序列化CArchive
9.2.6 让文档视图结构支持滚动条
9.3 对话框分割与多视图应用
9.3.1 对话框分割基础知识
9.3.2 动态分割对话框的实现
9.3.3 多视图的实现
9.4 文档视图应用程序实例
9.5 本章小结
9.6 习题
第10章 对话框的应用( 教学视频:86分钟)
10.1 对话框概述
10.1.1 对话框工作方式
10.1.2 对话框的种类
10.1.3 创建与编辑对话框模板
10.2 对话框与程序连接
10.2.1 创建对话框类
10.2.2 为对话框类添加成员变量
10.2.3 DDX和DDV机制
10.2.4 处理对话框控件通知消息
10.3 创建与显示对话框
10.3.1 创建模态对话框
10.3.2 创建非模态对话框
10.3.3 修改对话框背景颜色
10.3.4 关闭对话框
10.4 属性表对话框
10.4.1 属性表对话框的运行机制
10.4.2 属性表对话框的创建
10.5 消息对话框与公用对话框
10.5.1 消息对话框实例
10.5.2 颜色对话框实例
10.5.3 文件对话框实例
10.5.4 字体对话框实例
10.5.5 查找、替换对话框实例
10.5.6 打印对话框实例
10.6 本章小结
10.7 习题
第3篇 数据库开发
第11章 数据库开发概述( 教学视频:95分钟)252
11.1 数据库简介252
11.1.1 数据库发展史概述252
11.1.2 数据库常见概念253
11.1.3 数据库的作用253
11.1.4 数据库管理系统(DBMS)254
11.1.5 数据库常见4种数据模型254
11.1.6 数据库的体系结构256
11.1.7 关系数据库256
11.1.8 数据库的开发过程257
11.2 规范化理论258
11.2.1 为什么需要规范化258
11.2.2 数据依赖258
11.2.3 范式介绍260
11.3 E-R模型262
11.3.1 E-R模型元素263
11.3.2 E-R设计264
11.4 结构化查询语言SQL265
11.4.1 SQL语言概述265
11.4.2 SQL数据定义语句DDL266
11.4.3 SQL数据操纵语句DML268
11.4.4 SQL数据控制语句DCL269
11.4.5 操作视图270
11.5 Visual C++数据库接口271
11.5.1 面向对象技术271
11.5.2 Windows平台下的数据访问接口271
11.5.3 Visual C++数据访问接口273
11.5.4 用Visual C++访问数据库的优点274
11.6 本章小结274
11.7 习题275
第12章 Visual C++中SQL Server 访问技术( 教学视频:54分钟)276
12.1 SQL Server 2008简介276
12.1.1 SQL Server 2008介绍276
12.1.2 SQL Server 2008的工具277
12.1.3 SQL Server 2008配置管理器277
12.1.4 SQL Server Management Studio278
12.2 创建SQL Server 2008对象279
12.2.1 创建用户数据库280
12.2.2 创建和管理表281
12.2.3 创建和管理视图282
12.2.4 创建和管理存储过程283
12.3 ADO访问技术284
12.3.1 ADO模型284
12.3.2 ADO数据库访问步骤分析286
12.4 使用ADO访问数据库实例286
12.4.1 ADO连接SQL Server数据库287
12.4.2 ADO读取数据库表记录288
12.4.3 ADO写入数据库表记录290
12.4.4 ADO删除数据库表记录291
12.5 本章小结292
12.6 习题292
第13章 Visual C++中ODBC访问技术( 教学视频:62分钟)293
13.1 ODBC API293
13.1.1 ODBC体系结构293
13.1.2 ODBC数据类型294
13.1.3 ODBC句柄与返回值295
13.1.4 ODBC驱动和管理器296
13.1.5 配置ODBC数据源297
13.2 用ODBC API操作数据库实例299
13.2.1 操作数据库的一般步骤299
13.2.2 连接数据库300
13.2.3 读取数据库表记录301
13.2.4 添加、删除记录302
13.2.5 断开数据库连接302
13.2.6 ODBC API封装类实例303
13.3 用MFC ODBC类操作数据库309
13.3.1 连接数据库——CDatabase类309
13.3.2 选择和操作记录——CRecordset类310
13.3.3 在窗体中显示和操作数据——CRecordView类312
13.3.4 异常处理——CDBException类312
13.3.5 断开数据源连接312
13.3.6 MFC ODBC操作数据库实例313
13.4 自动注册DSN317
13.5 本章小结318
13.6 习题318
第14章 Visual C++中OLE DB访问技术( 教学视频:25分钟)319
14.1 OLE DB简介319
14.1.1 什么是OLE DB319
14.1.2 OLE DB和ODBC之间的关系320
14.2 Visual C++中的OLE DB类320
14.2.1 数据库连接类CDataSource320
14.2.2 数据库访问会话类Csession321
14.2.3 记录集类CrowSet321
14.2.4 数据表CTable322
14.3 Visual C++的OLE DB应用实例323
14.3.1 创建应用程序323
14.3.2 显示数据库表324
14.3.3 显示表定义326
14.4 本章小结329
14.5 习题330
第15章 Visual C++中MySQL访问技术( 教学视频:27分钟)331
15.1 MySQL C API331
15.1.1 MySQL C API的数据类型331
15.1.2 MySQL C API函数333
15.1.3 应用程序实例335
15.1.4 CDatabase类的实现337
15.1.5 应用CDatabase类339
15.2 本章小结340
15.3 习题340
第4篇 网 络 编 程
第16章 Windows套接字编程( 教学视频:81分钟)342
16.1 常见概念342
16.1.1 Windows Sockets规范342
16.1.2 套接字及其分类342
16.1.3 客户端服务器(CS)模型343
16.1.4 网络字节顺序344
16.2 套接字库函数346
16.2.1 套接字函数346
16.2.2 数据库函数347
16.2.3 Windows扩展函数349
16.3 使用WinSock API350
16.3.1 基本Socket系统调用350
16.3.2 Windows Sockets编程机理352
16.3.3 面向连接的套接字编程353
16.3.4 无连接套接字编程354
16.3.5 原始套接字编程355
16.4 MFC对WinSock API的封装356
16.4.1 CAsyncSocket类356
16.4.2 使用CAsyncSocket类356
16.4.3 CSocket类357
16.4.4 使用CSocket类357
16.5 MFC Socket实例359
16.6 本章小结363
16.7 习题363
第17章 邮槽与管道( 教学视频:57分钟)364
17.1 邮槽364
17.1.1 实施细节364
17.1.2 邮槽服务器365
17.1.3 邮槽客户端366
17.1.4 其他功能函数366
17.1.5 邮槽应用示例366
17.2 匿名管道368
17.2.1 匿名管道的实施细节368
17.2.2 匿名管道应用示例369
17.3 命名管道370
17.3.1 命名管道技术概述371
17.3.2 命名规范及通信模式371
17.3.3 使用命名管道372
17.3.4 其他功能函数373
17.3.5 命名管道实例374
17.4 本章小结377
17.5 习题377
第18章 通信端口编程( 教学视频:64分钟)378
18.1 串行端口通信编程378
18.1.1 Windows环境下的串口编程378
18.1.2 设定串口参数379
18.1.3 数据流控制参数381
18.1.4 申请串口资源383
18.1.5 同步IO读写数据385
18.1.6 使用事件驱动机制386
18.1.7 异步IO读写数据387
18.1.8 MS Comm串行通信控件388
18.2 通信端口编程实例391
18.2.1 串口线程初始化391
18.2.2 串口接收线程392
18.2.3 打开和关闭串口393
18.2.4 向串口发送数据395
18.2.5 界面处理395
18.3 本章小结398
18.4 习题398
第19章 Internet编程( 教学视频:49分钟)399
19.1 WinInet编程399
19.1.1 WinInet API概述399
19.1.2 WinInet常用类概览400
19.1.3 超文本传输协议HTTP编程403
19.1.4 文件传输协议FTP编程405
19.1.5 网际Gopher协议编程407
19.2 ISAPI编程408
19.2.1 ISAPI概述408
19.2.2 ISAPI服务器扩展程序409
19.2.3 使用应用向导开发ISAPI服务器扩展程序411
19.2.4 调试ISA412
19.2.5 ISAPI过滤程序413
19.3 MAPI编程415
19.3.1 MAPI体系结构概述415
19.3.2 MAPI应用程序接口416
19.3.3 使用MAPI编写支持电子邮件的程序417
19.4 本章小结419
19.5 习题419
第5篇 系 统 编 程
第20章 系统相关功能开发( 教学视频:191分钟)422
20.1 获取磁盘信息422
20.1.1 获取驱动器卷标422
20.1.2 获取磁盘序列号423
20.1.3 检测软驱是否有软盘424
20.1.4 判断是否插入存储器425
20.1.5 判断光驱是否有光盘427
20.1.6 判断驱动器类型428
20.1.7 获取磁盘空间信息429
20.2 操作磁盘430
20.2.1 格式化磁盘431
20.2.2 关闭磁盘共享432
20.2.3 设置磁盘卷标434
20.2.4 磁盘碎片整理434
20.2.5 从FAT32转换为NTFS435
20.2.6 隐藏磁盘分区436
20.2.7 显示被隐藏的磁盘分区437
20.2.8 如何更改分区号438
20.2.9 如何监视硬盘439
20.3 系统控制与调用440
20.3.1 调用外部程序441
20.3.2 调用创建快捷方式向导442
20.3.3 访问启动控制面板中的各项442
20.3.4 控制光驱的弹开与关闭444
20.3.5 关闭、重启、注销和锁定计算机445
20.3.6 关闭和打开显示器446
20.3.7 打开和关闭屏幕保护447
20.3.8 关闭当前输入法447
20.3.9 让程序发出提示音447
20.3.10 列举系统中的可执行文件448
20.4 应用程序操作450
20.4.1 禁止程序重复运行450
20.4.2 如何确定应用程序没有响应451
20.4.3 检索任务管理器中的任务列表452
20.4.4 判断某个程序是否运行453
20.4.5 怎样在程序中执行DOS命令454
20.4.6 修改其他进程中对话框的标题455
20.4.7 如何设计换肤程序455
20.4.8 PE档案格式分析457
20.4.9 修改应用程序图标458
20.4.10 列举应用程序使用的dll文件459
20.4.11 调用具有命令行参数的应用程序460
20.4.12 在程序中调用一个子进程直到结束461
20.5 系统工具462
20.5.1 为程序添加快捷方式462
20.5.2 显示系统正在运行的程序463
20.5.3 如何获得毫秒级时间465
20.5.4 注册和卸载组件465
20.5.5 清空回收站467
20.5.6 如何在程序中显示文件属性对话框468
20.6 桌面相关469
20.6.1 获取桌面对话框469
20.6.2 获取任务栏对话框句柄470
20.6.3 获取桌面列表视图句柄471
20.6.4 获取任务栏属性471
20.6.5 隐藏和显示桌面图标472
20.6.6 隐藏和显示Windows任务栏473
20.6.7 隐藏和显示“开始”按钮474
20.6.8 隐藏和显示任务栏时钟475
20.6.9 判断屏幕保护程序是否在运行476
20.6.10 判断系统是否使用大字体477
20.6.11 改变桌面背景颜色478
20.7 系统信息479
20.7.1 获取CPU ID值479
20.7.2 获取CPU时钟频率480
20.7.3 获得Windows和System的路径481
20.7.4 获取特殊文件夹路径482
20.7.5 检测系统启动模式484
20.7.6 判断操作系统类型485
20.7.7 获取当前系统的运行时间486
20.7.8 如何获取Windows 7系统启动时间487
20.7.9 获取处理器信息487
20.7.10 检测是否安装声卡489
20.7.11 获取当前用户名490
20.7.12 获取系统环境变量490
20.7.13 修改计算机名称491
20.7.14 获取当前屏幕颜色质量492
20.7.15 获得当前屏幕的分辨率492
20.8 消息493
20.8.1 如何自定义消息493
20.8.2 如何向Windows注册消息494
20.8.3 PostMessage函数和SendMessage函数的区别496
20.8.4 利用WM_COPYDATA消息实现进程间数据传递496
20.9 剪贴板498
20.9.1 列举剪贴板中数据类型498
20.9.2 监视剪贴板复制过的内容499
20.9.3 通过剪贴板传递全局数据501
20.10 鼠标键盘502
20.10.1 交换鼠标左右键502
20.10.2 设置鼠标双击的时间间隔503
20.10.3 获得鼠标键数504
20.10.4 获取鼠标下窗体句柄505
20.10.5 模拟鼠标单击按钮505
20.10.6 在程序中添加快捷键507
20.10.7 在对话框中使用加速键507
20.10.8 处理鼠标滚轮消息509
20.10.9 获取键盘按键510
20.10.10 获取键盘类型及功能号511
20.10.11 控制键盘指示灯512
20.11 本章小结514
20.12 习题514
第21章 注册表、INI和XML文件( 教学视频:92分钟)515
21.1 读写注册表的API函数515
21.1.1 注册表的概念515
21.1.2 创建带安全属性的注册表项516
21.1.3 创建注册表项517
21.1.4 打开注册表项518
21.1.5 判断注册表项是否存在519
21.1.6 删除注册表项519
21.1.7 打开注册表根项520
21.1.8 指定注册表项的默认值521
21.1.9 设置注册表键值522
21.1.10 快速设置注册表键值字符串523
21.2 注册表应用524
21.2.1 保存注册表项524
21.2.2 开机自动运行526
21.2.3 隐藏和显示我的电脑526
21.2.4 隐藏和显示回收站527
21.2.5 隐藏显示所有驱动器528
21.2.6 禁止“查找”菜单529
21.2.7 禁止“文档”菜单529
21.2.8 在退出Windows时清除“文档”中的记录530
21.2.9 禁用注册表编辑器531
21.2.10 禁止使用inf文件532
21.2.11 禁止使用reg文件532
21.2.12 显示隐藏文件或文件夹533
21.3 读写注册表的ATL类534
21.3.1 使用CRegKey 类写入默认键值534
21.3.2 使用CRegKey 类写入新键值535
21.3.3 使用CRegKey 类查询键值536
21.4 注册表的查询与枚举537
21.4.1 查询注册表键值537
21.4.2 快速查询注册表键值538
21.4.3 枚举注册表键值539
21.4.4 列举开机启动程序539
21.4.5 枚举注册表项540
21.4.6 枚举安装程序541
21.5 INI文件的读写函数542
21.5.1 向指定键写入字符串542
21.5.2 获取指定键下的整型数据544
21.5.3 获取指定键下的字符串数据544
21.5.4 向INI文件写入结构数据545
21.5.5 获取INI文件结构数据546
21.5.6 向指定节写入数据547
21.5.7 获取所有节名548
21.5.8 获取指定节的键名及数据549
21.6 XML文件操作551
21.6.1 XML文件简介551
21.6.2 XML文件的优势551
21.6.3 读取XML文件内容552
21.6.4 向XML文件中写入内容553
21.7 本章小结554
21.8 习题554
第22章 动态链接库编程( 教学视频:71分钟)556
22.1 基本概念556
22.1.1 动态链接库的概念556
22.1.2 动态链接库的优点557
22.1.3 DLL的种类558
22.1.4 DLL文件的组成559
22.2 DLL的创建与使用实例559
22.2.1 创建Win32 DLL560
22.2.2 DLL的导出561
22.2.3 应用程序链接DLL562
22.2.4 动态链接库函数563
22.2.5 从动态库中获取位图资源565
22.2.6 枚举模块中的所有图标567
22.2.7 使用模块对话框资源569
22.2.8 替换应用程序的对话框资源569
22.2.9 屏蔽键盘Power键571
22.2.10 屏蔽键盘Win键573
22.2.11 禁止使用Alt+F4组合键关闭窗体573
22.3 MFC常规DLL的创建与使用实例573
22.3.1 基本概念574
22.3.2 创建MFC常规DLL574
22.3.3 MFC常规DLL的创建实例575
22.3.4 调用MFC常规DLL576
22.4 MFC扩展DLL的创建与使用实例577
22.4.1 创建MFC扩展DLL577
22.4.2 MFC扩展DLL的创建实例578
22.4.3 调用MFC扩展DLL578
22.5 DLL的查看与调试579
22.5.1 使用Depends工具查看DLL接口579
22.5.2 调试DLL580
22.6 本章小结580
22.7 习题580
第23章 多线程编程( 教学视频:62分钟)582
23.1 引入多线程582
23.1.1 单线程的不足582
23.1.2 解决的问题583
23.2 进程和线程583
23.2.1 Spy++583
23.2.2 多线程Win32 API585
23.2.3 MFC对多线程编程的支持586
23.3 开发多线程程序586
23.3.1 使用Win32 API函数开发586
23.3.2 MFC用户界面线程的开发587
23.3.3 MFC工作者线程的开发588
23.3.4 挂起线程590
23.3.5 终止线程591
23.3.6 使线程睡眠592
23.3.7 启动和关闭记事本593
23.3.8 调用记事本程序并挂起595
23.3.9 监测记事本程序关闭595
23.4 线程间的通信596
23.4.1 使用全局变量596
23.4.2 使用自定义的消息597
23.5 线程的同步598
23.5.1 等待函数599
23.5.2 利用事件对象600
23.5.3 使用事件对象实例601
23.5.4 利用临界区602
23.5.5 利用临界区实例603
23.5.6 利用信号量604
23.5.7 利用信号量实例605
23.5.8 利用互斥对象607
23.5.9 利用互斥对象实例607
23.6 多线程程序实例609
23.7 本章小结611
23.8 习题611
第6篇 多媒体开发
第24章 文本字体技术( 教学视频:34分钟)614
24.1 字体对象614
24.1.1 字体要素614
24.1.2 创建字体对象615
24.1.3 获取字体信息616
24.1.4 字体对象使用实例617
24.2 字体效果617
24.2.1 如何设计空心字617
24.2.2 渐变颜色的字体618
24.2.3 获取路径信息点619
24.2.4 文字跟随鼠标620
24.2.5 如何实现旋转字体620
24.2.6 文字水平滚动621
24.2.7 字体垂直滚动622
24.2.8 设计3D立体文字623
24.3 本章小结624
24.4 习题624
第25章 图形与图像编程( 教学视频:109分钟)625
25.1 位图和区域对象625
25.1.1 设备相关位图(DDB)625
25.1.2 CBitmap应用实例626
25.1.3 设备无关位图(DIB)627
25.1.4 区域对象(CRgn)627
25.1.5 CRgn应用实例628
25.2 画笔和画刷629
25.2.1 使用画笔对象629
25.2.2 使用画笔绘图实例630
25.2.3 使用画刷对象631
25.2.4 使用画刷绘图实例631
25.3 图像基础技术632
25.3.1 如何使用GDI+632
25.3.2 如何创建含有位图的画刷633
25.3.3 保存屏幕抓图文件634
25.3.4 利用内存画布防止绘图时出现屏幕闪烁635
25.3.5 创建几何画笔636
25.3.6 绘制网格637
25.3.7 创建不同的画刷638
25.3.8 填充矩形区域639
25.3.9 模拟时钟640
25.3.10 颜色渐变算法642
25.3.11 如何绘制渐变颜色643
25.3.12 图元文件的保存与打开644
25.3.13 图像居中显示645
25.3.14 图片融合效果646
25.3.15 保存设备上下文647
25.4 特殊曲线648
25.4.1 绘制蜗牛线648
25.4.2 绘制贝塞尔曲线649
25.4.3 绘制正弦曲线650
25.5 图像特效651
25.5.1 图像锐化处理652
25.5.2 图像柔化处理653
25.5.3 图像反色处理654
25.5.4 图像灰度处理655
25.5.5 图像浮雕效果657
25.5.6 图像翻转658
25.5.7 图像缩放659
25.5.8 图片剪切659
25.5.9 图片马赛克效果660
25.5.10 垂直百叶窗显示图片662
25.5.11 水平百叶窗显示图片663
25.6 图像控制664
25.6.1 在图片上绘制线条664
25.6.2 在图片上绘制网格665
25.6.3 打开高颜色质量图像665
25.6.4 创建最顶层窗体666
25.6.5 在视图中拖动图片667
25.6.6 屏幕截图669
25.6.7 保存屏幕图像到剪贴板670
25.6.8 获取图像RGB值670
25.6.9 渐隐渐显的图像671
25.6.10 保留椭圆中图片内容673
25.6.11 去除椭圆下的图片内容674
25.7 本章小结676
25.8 习题676
第26章 声音与动画编程( 教学视频:34分钟)677
26.1 多媒体声音控制677
26.1.1 录制与播放声音677
26.1.2 可以选择曲目的CD播放器680
26.1.3 控制音量681
26.1.4 利用PC喇叭播放声音682
26.1.5 定时播放WAV文件682
26.1.6 播放MIDI文件683
26.1.7 开发具有记忆功能的MP3播放器683
26.2 多媒体应用684
26.2.1 滚动字体作屏保684
26.2.2 相册作屏保686
26.2.3 设计画图程序687
26.3 动画效果688
26.3.1 标题栏动画图标689
26.3.2 实现图标动画689
26.3.3 系统托盘动态图标690
26.4 多媒体文件的播放691
26.4.1 播放GIF动画692
26.4.2 播放Flash动画693
26.4.3 播放VCD693
26.4.4 显示JPEG图像694
26.5 本章小结696
26.6 习题696
第27章 DirectX图形开发( 教学视频:97分钟)697
27.1 DirectX SDK697
27.1.1 DirectX SDK的安装697
27.1.2 Visual Studio 2010中的相应设置698
27.2 DirectX 9.0介绍701
27.2.1 DirectX 组件介绍701
27.2.2 使用 COM701
27.3 DirectX 图形开发基本概念702
27.3.1 世界坐标系702
27.3.2 摄影坐标系702
27.3.3 剪裁和透视投影703
27.3.4 视口变换和像素的光栅显示703
27.3.5 显示卡的3D渲染管道线704
27.4 基本三角形面的绘制705
27.4.1 DirectX Graphics基本应用架构705
27.4.2 创建IDirect3D9接口对象706
27.4.3 创建Direct3D设备706
27.4.4 创建顶点缓冲区707
27.4.5 启动管道流水线进行渲染708
27.4.6 实例——绘制一个基本的三角形面709
27.5 基本立体面的绘制712
27.5.1 3D原始类型712
27.5.2 背面剔除和顶点顺序715
27.5.3 顶点索引缓冲区716
27.5.4 在世界坐标系中放置物体716
27.5.5 架设摄影机进行取景和投影717
27.5.6 屏幕视口的设置717
27.5.7 实例——绘制一个基本的立体面717
27.6 材质和光照处理721
27.6.1 颜色与光照721
27.6.2 光源设置723
27.6.3 点光源723
27.6.4 聚焦光源724
27.6.5 方向光源724
27.6.6 材质设置724
27.6.7 顶点的法向量725
27.7 纹理贴图726
27.7.1 顶点的纹理坐标726
27.7.2 创建纹理对象727
27.7.3 纹理过滤技术729
27.7.4 纹理地址模式729
27.8 Alpha颜色混合730
27.8.1 颜色混合原理730
27.8.2 Alpha颜色混合例子731
27.8.3 利用ID3DXSprite实现颜色透明732
27.8.4 利用Alpha测试实现颜色透明733
27.9 XFile网格的应用734
27.9.1 .x文件的基本格式734
27.9.2 .x文件的数据装入737
27.9.3 Mesh数据的处理738
27.9.4 Mesh数据的优化738
27.10 本章小结739
27.11 习题739
第7篇 项目开发实战
第28章 网络音频播放系统( 教学视频:24分钟)742
28.1 系统分析与设计742
28.1.1 功能描述742
28.1.2 功能模块设计742
28.2 界面实现743
28.2.1 界面设计743
28.2.2 界面初始化744
28.2.3 界面代码745
28.3 核心实现751
28.3.1 线程同步类751
28.3.2 音频驱动函数752
28.3.3 CAudioPlay类的声明755
28.3.4 音频播放器初始化757
28.3.5 音频采样处理758
28.3.6 音频输出实现762
28.3.7 打开音频文件763
28.3.8 停止音频播放766
28.3.9 暂停音频和继续音频767
28.3.10 获取音频属性767
28.4 程序运行效果770
28.5 本章小结770
第29章 GPS定位系统( 教学视频:46分钟)771
29.1 GPS监控系统概况771
29.1.1 GPS监控系统概述771
29.1.2 GPS监控系统的系统架构771
29.2 GPS数据通信协议NEMA0183协议774
29.2.1 配置参数及协议格式774
29.2.2 NEMA0183标准语句774
29.2.3 GARMIN定义的语句777
29.2.4 NEMA0183协议的TEXT文本格式778
29.3 串口接收GPS信息程序设计779
29.3.1 实例背景780
29.3.2 GPS模块与串口的通信协议780
29.3.3 程序功能780
29.3.4 界面设计780
29.3.5 结构声明782
29.3.6 初始化操作786
29.3.7 GPS数据接收的实现方法788
29.3.8 GPS数据解析的实现方法791
29.3.9 多线程串口工作方式799
29.3.10 发送命令806
29.3.11 结束清理808
29.3.12 地图支持808
29.3.13 程序测试截图810
29.4 本章小结811
|
|