图书介绍

Visual C++编程实战宝典PDF|Epub|txt|kindle电子书版本网盘下载

Visual C++编程实战宝典
  • 李琳娜编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302347934
  • 出版时间:2014
  • 标注页数:811页
  • 文件大小:158MB
  • 文件页数:844页
  • 主题词:C语言-程序设计

PDF下载


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

下载说明

Visual C++编程实战宝典PDF格式电子书版下载

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

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

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

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

图书目录

第1篇Visual C++开发基础2

第1章Visual Studio 2010集成开发环境2

1.1 Visual Studio 2010及其开发环境2

1.1.1 Visual Studio 2010的安装2

1.1.2 Visual Studio 2010开发环境3

1.1.3 Visual Studio 2010向导4

1.2工作区视图6

1.2.1解决方案视图6

1.2.2类视图6

1.2.3资源视图6

1.3资源与资源编辑器7

1.3.1资源的类型7

1.3.2资源编辑器8

1.4本章小结8

1.5习题8

第2章Visual Studio 2010基本应用程序的创建9

2.1使用AppWizard生成项目9

2.1.1解决方案与项目9

2.1.2使用App Wizard创建项目9

2.2 Win32控制台应用程序11

2.2.1使用向导生成Win32控制台项目11

2.2.2添加源文件11

2.2.3编译、链接程序12

2.2.4生成程序13

2.2.5运行程序13

2.3 MFC应用程序框架15

2.3.1创建MFC应用程序15

2.3.2认识文档/视图结构16

2.4本章小结17

2.5习题17

第3章C/C++语言基础18

3.1对标准C的扩展——C++18

3.2 C++语法元素19

3.2.1最小的元素——符号19

3.2.2注释规范20

3.2.3标识符命名规范21

3.2.4 C++预定义的关键字21

3.2.5标点符号22

3.2.6操作符22

3.2.7声明与定义24

3.3常量和变量25

3.3.1定义常量25

3.3.2常量成员函数28

3.3.3定义变量28

3.3.4代码的有效范围——作用域29

3.4数据类型31

3.4.1基本数据类型31

3.4.2数据类型的转换方式32

3.4.3数组33

3.4.4结构体34

3.4.5共用体34

3.4.6匿名共用体36

3.4.7枚举类型38

3.4.8用typedef定义类型39

3.4.9位域39

3.5运算符和表达式40

3.5.1算术运算符41

3.5.2赋值运算符41

3.5.3关系运算符43

3.5.4逻辑运算符44

3.5.5位运算符45

3.5.6三目运算符46

3.5.7增1和减1运算符47

3.5.8逗号运算符47

3.5.9 sizeof运算符48

3.5.10 new和delete49

3.5.11范围确定符50

3.5.12类成员访问符51

3.5.13成员指针操作符51

3.6控制语句52

3.6.1表达式语句、空语句和复合语句52

3.6.2选择语句53

3.6.3循环语句56

3.6.4跳转语句59

3.7函数61

3.7.1函数的定义和调用61

3.7.2带默认形参值的函数62

3.7.3函数的递归调用63

3.7.4内联函数64

3.7.5函数的重载65

3.8指针和引用65

3.8.1指针和指针变量65

3.8.2&和*运算符66

3.8.3指针和数组67

3.8.4指针和结构体67

3.8.5函数的指针传递68

3.8.6引用及函数的引用传递68

3.9预处理69

3.9.1宏定义69

3.9.2文件包含70

3.9.3条件编译71

3.10文件操作71

3.10.1打开文件71

3.10.2从文件读取数据72

3.10.3向文件写入数据72

3.10.4关闭文件73

3.10.5文件操作示例73

3.11本章小结74

3.12习题75

第4章C++面向对象程序设计76

4.1类和对象76

4.1.1从结构到类76

4.1.2定义类76

4.1.3定义对象78

4.1.4嵌套类79

4.2类成员及其特性79

4.2.1构造函数79

4.2.2析构函数81

4.2.3对象成员初始化82

4.2.4常类型(const)82

4.2.5使用this指针指向对象83

4.2.6类的作用域和对象的生存期84

4.2.7使用静态成员保存类的数据84

4.2.8友元函数和友元类85

4.3继承与派生88

4.3.1如何使用继承方法88

4.3.2派生类的构造函数和析构函数89

4.3.3实现多重继承91

4.3.4虚基类92

4.4多态和虚函数93

4.4.1使用虚函数实现派生类的通用功能93

4.4.2纯虚函数和抽象基类95

4.5重载运算符96

4.5.1运算符重载语法96

4.5.2可重载的运算符97

4.5.3重载赋值运算符98

4.6输入输出流库99

4.6.1 C++的输入输出99

4.6.2预定义输入/输出对象cout和cin100

4.6.3标准错误处理对象cerr100

4.6.4常用输入输出成员函数100

4.6.5常见文件流类101

4.6.6操作顺序文件102

4.6.7操作随机文件103

4.7 C++的模板机制105

4.7.1为什么需要模板105

4.7.2函数模板的使用106

4.7.3类模板的使用107

4.7.4模板与宏的对比108

4.7.5模板应用示例109

4.7.6 C++标准模板库STL简介110

4.8 C++实例——设计一个电子时钟111

4.9本章小结112

4.10习题112

第2篇 界面开发116

第5章Windows编程与MFC基础116

5.1 Windows编程116

5.1.1 Windows应用程序编程接口API116

5.1.2使用句柄标识窗口117

5.1.3输入事件产生的消息117

5.1.4 Windows句柄的数据类型118

5.2 Windows程序执行流程118

5.2.1入口函数WinMain()119

5.2.2注册窗体类119

5.2.3使用CreateWindow()创建窗口120

5.2.4使用消息循环响应用户输入120

5.2.5主窗体函数WinProc()121

5.2.6 Windows编程实例——设计一个电子时钟122

5.3 MFC基础124

5.3.1什么是微软基础类库MFC124

5.3.2 MFC类层次结构125

5.3.3 MFC全局函数126

5.4 MFC应用程序框架分析127

5.4.1 MFC的入口函数WinMain()127

5.4.2派生自CWinApp的应用程序对象128

5.4.3初始化应用程序的InitInstance()函数128

5.4.4框架程序的运行核心Run()函数130

5.5 MFC的消息映射130

5.5.1标准Windows消息130

5.5.2触发菜单/快捷键产生的命令消息131

5.5.3使用ON_MESSAGE宏自定义消息132

5.5.4注册系统消息132

5.6本章小结133

5.7习题133

第6章 菜单、工具栏和状态栏134

6.1菜单134

6.1.1菜单的种类及开发步骤134

6.1.2创建和编辑菜单134

6.1.3处理菜单命令消息135

6.1.4处理菜单更新消息136

6.1.5设置菜单项快捷键138

6.1.6创建与使用弹出式菜单138

6.1.7菜单类CMenu140

6.2工具栏141

6.2.1创建与编辑工具栏141

6.2.2设置工具栏停靠和浮动142

6.2.3设置工具提示143

6.2.4 CToolBar介绍144

6.3状态栏144

6.3.1创建状态栏144

6.3.2状态栏实例145

6.3.3 CStatusBar介绍147

6.4本章小结148

6.5习题148

第7章 使用Windows标准控件149

7.1 Windows标准控件149

7.1.1常用Windows控件149

7.1.2使用对话框编辑器创建控件150

7.1.3控件类的基类CWnd151

7.1.4控件的消息及其处理152

7.1.5创建控件对象153

7.2按钮154

7.2.1按钮简介154

7.2.2按钮类CButton155

7.2.3按钮的属性与消息155

7.2.4设定和获取按钮状态155

7.3静态控件与编辑控件155

7.3.1创建与使用静态控件156

7.3.2静态控件类CStatic156

7.3.3创建编辑控件157

7.3.4编辑控件类CEdit157

7.3.5编辑控件的消息158

7.3.6编辑控件的应用实例158

7.4单选按钮和复选框163

7.4.1单选按钮控件的创建164

7.4.2单选按钮控件的消息164

7.4.3复选框控件的创建165

7.4.4复选框控件的消息165

7.4.5单选按钮控件和复选框控件的实例165

7.5列表框和组合框166

7.5.1创建列表框167

7.5.2列表框类CListBox167

7.5.3列表框消息168

7.5.4列表框实例168

7.5.5创建组合框169

7.5.6组合框类CComboBox169

7.5.7组合框消息170

7.5.8组合框实例171

7.6微调控件、滑块控件和进度条控件171

7.6.1微调控件的创建和使用172

7.6.2创建和使用滑块控件172

7.6.3创建和使用进度条控件173

7.6.4编程实例173

7.7列表视图控件和树形视图控件174

7.7.1创建列表视图控件175

7.7.2列表视图控件类CListCtrl176

7.7.3列表视图控件的通知消息176

7.7.4创建树形视图控件176

7.7.5树形视图控件类CTreeCtrl176

7.7.6树形视图控件的消息177

7.7.7编程实例178

7.8 ActiveX控件178

7.8.1使用ActiveX控件178

7.8.2 ActiveX控件的结构178

7.8.3包装类179

7.8.4获取ActiveX控件的帮助信息179

7.8.5 Visual C++中的控件和组件库181

7.8.6 MFC程序中ActiveX控件的使用182

7.9本章小结183

7.10习题183

第8章MFC的一些常用类184

8.1字符串类(CString)184

8.1.1创建CString对象184

8.1.2 CString类的成员函数184

8.1.3 CString类的常用操作186

8.1.4 CString的格式化与类型转换188

8.1.5 CString使用实例190

8.2集合类191

8.2.1数组类191

8.2.2数组类的使用实例192

8.2.3链表类194

8.2.4链表类的使用实例195

8.3日期、时间类197

8.3.1 CTime类197

8.3.2格式化CTime对象198

8.3.3 CTimeSpan类199

8.3.4制作一个计时器199

8.4 MFC文件操作类——CFile200

8.4.1构造文件对象并打开文件200

8.4.2读写文件202

8.4.3定位文件202

8.4.4文件管理操作203

8.4.5文件操作实例204

8.5 MFC异常类205

8.5.1 MFC异常类简介205

8.5.2文件异常类CFileException206

8.5.3异常的捕获206

8.6本章小结208

8.7习题208

第9章 文档/视图结构应用程序209

9.1文档/视图结构分析209

9.1.1框架中的主要类209

9.1.2文档类、视图类核心函数211

9.1.3新建、保存和打开的实现214

9.1.4多文档应用程序框架214

9.2开发文档/视图结构应用程序215

9.2.1目标215

9.2.2创建基本程序框架216

9.2.3创建文档数据216

9.2.4绘图操作217

9.2.5文档序列化CArchive218

9.2.6让文档/视图结构支持滚动条219

9.3对话框分割与多视图应用222

9.3.1对话框分割基础知识222

9.3.2动态分割对话框的实现222

9.3.3多视图的实现223

9.4文档/视图应用程序实例224

9.5本章小结226

9.6习题226

第10章 对话框的应用228

10.1对话框概述228

10.1.1对话框工作方式228

10.1.2对话框的种类229

10.1.3创建与编辑对话框模板229

10.2对话框与程序连接230

10.2.1创建对话框类230

10.2.2为对话框类添加成员变量231

10.2.3 DDX和DDV机制233

10.2.4处理对话框控件通知消息236

10.3创建与显示对话框238

10.3.1创建模态对话框238

10.3.2创建非模态对话框239

10.3.3修改对话框背景颜色239

10.3.4关闭对话框240

10.4属性表对话框241

10.4.1属性表对话框的运行机制241

10.4.2属性表对话框的创建241

10.5消息对话框与公用对话框242

10.5.1消息对话框实例243

10.5.2颜色对话框实例244

10.5.3文件对话框实例245

10.5.4字体对话框实例246

10.5.5查找、替换对话框实例247

10.5.6打印对话框实例247

10.6本章小结248

10.7习题249

第3篇 数据库开发252

第11章 数据库开发概述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访问技术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访问技术293

13.1 ODBC API293

13.1.1 ODBC体系结构293

13.1.2 ODBC数据类型294

13.1.3 ODBC句柄与返回值295

13.1.4ODBC驱动和管理器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访问技术319

14.1 OLE DB简介319

14.1.1什么是OLE DB319

14.12 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访问技术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篇 网络编程342

第16章Windows套接字编程342

16.1常见概念342

16.1.1 Windows Sockets规范342

16.1.2套接字及其分类342

16.1.3客户端/服务器(C/S)模型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 MPC对WinSock API的封装356

16.4.1 CAsyncSocket类356

16.4.2使用CAsyncSocket类356

16.4.3 CSocket类357

16.4.4使用CSocket类357

16.5MFC Socket实例359

16.6本章小结363

16.7习题363

第17章 邮槽与管道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章 通信端口编程378

18.1串行端口通信编程378

18.1.1 Windows环境下的串口编程378

18.1.2设定串口参数379

18.1.3数据流控制参数381

18.1.4申请串口资源383

18.1.5同步I/O读写数据385

18.1.6使用事件驱动机制386

18.1.7异步I/O读写数据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编程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篇 系统编程422

第20章 系统相关功能开发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文件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章 动态链接库编程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章 多线程编程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篇 多媒体开发614

第24章 文本字体技术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.58图片剪切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章 声音与动画编程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图形开发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篇 项目开发实战742

第28章 网络音频播放系统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定位系统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.4NEMA0183协议的TEXT文本格式778

29.3串口接收GPS信息程序设计779

29.3.1实例背景780

29.3.2GPS模块与串口的通信协议780

29.3.3程序功能780

29.3.4界面设计780

29.3.5结构声明782

29.3.6初始化操作786

29.3.7GPS数据接收的实现方法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

热门推荐