零基础学Visual c++ 李翠霞中文pdf影印版
大小:99MB 时间:2024-12-07
想学习visual c++吗?相信本书是你的最佳选择之一。本书作者具有近10年的visual c++工程开发和图书写作经验,结合自身学习visual c++的经历以及工程开发中所走过的弯路和获取的经验编写了这本visual c++基础书籍。.
本书力求从visual c++初学者的角度开发,使初学者能够最快地掌握visual c++程序设计的精髓而少走弯路。本书对visual c++的每个知识点的讲解均采用最基本、最常用的方案实现,并辅以简单易懂而贴近工程应用的实例来阐明。对使用的mfc类,只详细介绍工程项目中常用的成员函数的使用,其他成员函数则忽略。虽然是基础书,但对于visual c++程序框架的建立及总体的运行机制还是作了详细的介绍,因为只有掌握了这些,才便于以后的进阶提高。..
全书分为四篇,共15章,内容涵盖c++及visual c++程序框架,visual c++的基本开发要素,如键盘、鼠标、工具栏、状态栏、通用控件、设备描述表以及mfc通用类,对话框、文件/视图结构程序以及dll的开发,多线程程序设计,网络编程以及数据库开发等。
本书作为visual c++ 6.0的基础教程,适合于visual c++的初学者,特别是大中专院校刚学习完c++语言的低年级学生。另外,本书还适合已经稍有基础的visual c++开发者,进一步巩固和熟悉visual c++开发的框架体系,同时也适合作为项目开发参考的工具书。
目录:
出版说明.
前言
第一篇 visual c++与c++基础
第1章 visual c++ 6.0开发环境和应用程序框架 1
1.1 安装并测试visual c++ 6.0 1
1.1.1 visual c++ 6.0的安装 1
1.1.2 visual c++ 6.0开发环境 4
1.1.3 visual c++ 6.0应用程序向导和项目创建 5
1.2 visual c++ 6.0简介 7
1.2.1 c/c++编译器 7
1.2.2 编辑器 7
1.2.3 资源编辑器和资源符号 8
1.2.4 连接器和调试器 8
1.2.5 visual c++ 6.0的主要菜单项功能 9
1.2.6 项目和解决方案 14
1.2.7 本机帮助和联机帮助 14
1.3 win32基本应用程序的创建 15
1.3.1 使用appwizard应用程序向导 15
1.3.2 win32应用程序的生成 16
1.3.3 visual c++ 6.0的调试:变量跟踪和函数调用栈 19
.1.4 microsoft应用程序框架 21
1.4.1 全局对象 21
1.4.2 mfc的消息映射和消息分类 21
1.5 实例:编写第一个c++程序—hello, c++! 21
1.6 实例:创建第一个mfc程序—hello, mfc! 24
1.7 小结 24
1.8 本章练习 24
第2章 c++语法基础 25
2.1 c++简介 25
2.2 数据类型定义和使用 26
2.2.1 简单变量 26
2.2.2 算术运算符 29
2.2.3 枚举、指针和数组 31
2.2.4 string类和c风格字符串 33
2.2.5 结构体类型 35
2.2.6 类类型 36
2.2.7 实例:成绩管理系统(1.0版) 39
2.3 运算符、表达式和语句 43
2.3.1 几种常用的运算符 43
2.3.2 循环语句:for语句、while语句和do...while语句 45
2.3.3 判断语句:if语句和switch语句 46
2.3.4 实例:成绩管理系统(2.0版) 49
2.4 函数定义和调用 53
2.4.1 定义函数和函数原型 53
2.4.2 函数通过指针来调用数组 54
2.4.3 函数指针 54
2.4.4 具有引用参数的函数 55
2.4.5 函数重载 58
2.4.6 函数模板的定义和使用 59
2.4.7 实例:成绩管理系统(3.0版) 60
2.5 类的定义和对象构造 62
2.5.1 自然界中的类型和c++的类定义 63
2.5.2 实现类成员函数 64
2.5.3 实例化类对象并使用 66
2.5.4 类的构造函数和析构函数 67
2.5.5 运算符重载与this指针的使用 69
2.5.6 友元函数和友元类 70
2.5.7 实例:成绩管理系统(4.0版) 73
2.6 类继承 77
2.6.1 is-a关系 77
2.6.2 多态公有继承 79
2.6.3 protected访问控制 81
2.6.4 抽象基类 82
2.6.5 私有继承和保护继承 83
2.6.6 多继承 83
2.6.7 类模板 84
2.7 c++异常机制 85
2.7.1 异常处理类型 85
2.7.2 exception类 87
2.8 标准模板库(stl) 87
2.8.1 auto_ptr类的使用 87
2.8.2 vector模板类的定义和使用 88
2.8.3 通用算法 89
2.8.4 实例:使用stl和通用算法开发成绩管理系统(5.0版) 91
2.9 i/o流和文件 95
2.9.1 c++的输入和输出 96
2.9.2 文件输入和输出 96
2.9.3 实例:在visual c++ 6.0创建c++源文件,使用磁盘文件读写 97
2.10 小结 98
2.11 本章练习 98
第3章 windows编程与mfc基础 99
3.1 windows编程基础 99
3.1.1 windows api函数 99
3.1.2 窗口与句柄 99
3.1.3 事件与消息 100
3.1.4 常用的windows数据类型 100
3.2 windows应用程序分析 101
3.2.1 winmain函数 102
3.2.2 创建窗口 102
3.2.3 消息循环 103
3.2.4 winproc窗口函数 104
3.2.5 windows编程实例 105
3.3 mfc基础 107
3.3.1 mfc概述 107
3.3.2 mfc基础类及其层次结构 107
3.3.3 mfc中的全局函数 109
3.4 mfc应用程序框架分析 109
3.4.1 入口函数 109
3.4.2 应用程序对象 110
3.4.3 initinstance函数 111
3.4.4 run函数 112
3.4.5 mfc的消息映射 114
3.4.6 mfc消息分类 114
3.5 小结 116
3.6 本章练习 116
第二篇 visual c++常用类、控件和资源
第4章 基本输入—键盘和鼠标消息 117
4.1 键盘消息及其处理 117
4.1.1 键盘消息 117
4.1.2 键盘消息处理 118
4.1.3 按键消息的处理 118
4.1.4 按键消息处理函数 120
4.1.5 字符消息的处理 122
4.1.6 创建键盘插入符 125
4.2 鼠标消息及其处理 128
4.2.1 鼠标消息 128
4.2.2 鼠标消息处理函数 128
4.2.3 鼠标消息处理实例 129
4.2.4 鼠标光标的创建与使用 132
4.2.5 捕捉鼠标 133
4.2.6 锁定鼠标的作用区域 134
4.3 小结 135
4.4 本章练习 135
第5章 菜单、工具栏和状态栏编程 136
5.1 菜单及其相关资源的使用 136
5.1.1 菜单的种类及开发步骤 136
5.1.2 菜单的创建与编辑 137
5.1.3 菜单消息 139
5.1.4 菜单命令消息的处理 139
5.1.5 菜单更新消息的处理 141
5.1.6 为菜单项设置快捷键 143
5.1.7 弹出菜单的创建与使用 145
5.2 工具栏的使用 148
5.2.1 工具栏的创建 148
5.2.2 编辑工具栏 150
5.2.3 工具栏命令处理 151
5.2.4 工具栏类ctoolbar的简单介绍 151
5.3 状态栏的使用 152
5.3.1 状态栏的创建 152
5.3.2 状态栏编程 153
5.3.3 状态栏类cstatusbar的简单介绍 156
5.4 小结 157
5.5 本章练习 157
第6章 使用windows标准控件 158
6.1 windows标准控件 158
6.1.1 windows控件简介 159
6.1.2 使用对话框编辑器创建控件 159
6.1.3 控件类的基类cwnd 162
6.1.4 控件的消息及其处理 163
6.2 按钮控件 163
6.2.1 按钮控件简介 163
6.2.2 按钮控件类cbutton 164
6.2.3 按钮控件的属性与消息 165
6.2.4 按钮状态的确定 166
6.2.5 按钮控件使用实例 167
6.3 静态控件与编辑控件 171
6.3.1 静态控件的创建与使用 171
6.3.2 静态控件类cstatic 172
6.3.3 编辑控件的创建 173
6.3.4 编辑控件类cedit 174
6.3.5 编辑控件的消息 175
6.3.6 编辑控件的应用实例 176
6.4 列表框控件和组合框控件 178
6.4.1 列表框控件的创建 178
6.4.2 列表框控件类clistbox 179
6.4.3 列表框控件的消息 180
6.4.4 列表框控件实例 180
6.4.5 组合框控件的创建 183
6.4.6 组合框控件类ccombobox 184
6.4.7 组合框控件的消息 185
6.5 微调控件、滑块控件和进度条 185
6.5.1 微调控件的创建 186
6.5.2 微调控件的使用 186
6.5.3 滑块控件的创建 188
6.5.4 滑块控件的使用 188
6.5.5 进度条控件的创建及使用 190
6.5.6 微调控件、滑块控件和进度条编程实例 191
6.6 列表视图控件和树形视图控件 192
6.6.1 列表视图控件的创建 193
6.6.2 列表视图控件类clistctrl 194
6.6.3 列表视图控件的通知消息 196
6.6.4 树形视图控件的创建 196
6.6.5 树形视图控件类ctreectrl 197
6.6.6 树形视图控件的消息 199
6.6.7 列表视图和树形视图编程实例 199
6.7 activex控件的使用 203
6.7.1 activex控件的结构 203
6.7.2 visual c++中的组件和控件库 204
6.7.3 mfc程序中activex控件的使用 205
6.7.4 activex控件使用实例 206
6.8 小结 210
6.9 本章练习 210
第7章 mfc常用的通用类 211
7.1 字符串类(cstring) 211
7.1.1 cstring对象的创建 211
7.1.2 cstring类的成员函数 211
7.1.3 cstring类的常用操作 212
7.1.4 cstring的格式化与类型转换 215
7.2 mfc的集合类 216
7.2.1 数组类 216
7.2.2 数组类的使用实例 217
7.2.3 链表类 219
7.2.4 链表类的使用实例 221
7.3 日期、时间类 223
7.3.1 ctime类 223
7.3.2 ctime对象的格式化 224
7.3.3 ctimespan类 225
7.3.4 计时器的使用 226
7.4 mfc文件操作类(cfile) 227
7.4.1 构造文件对象并打开文件 227
7.4.2 文件的读写操作 228
7.4.3 文件的定位操作 229
7.4.4 文件的管理操作 230
7.4.5 使用cfile类进行文件操作实例 231
7.5 mfc异常类 233
7.5.1 mfc异常类简介 233
7.5.2 文件异常类cfileexception 234
7.5.3 异常的捕获 235
7.6 小结 237
7.7 本章练习 237
第8章 文本、图形输出 238
8.1 基础知识 238
8.1.1 gdi绘图的实现 238
8.1.2 mfc图形对象类 239
8.1.3 库存gdi对象 240
8.1.4 与图形绘制有关的简单数据类型 240
8.1.5 mfc应用程序框架中的图形绘制与刷新 242
8.2 mfc设备描述表(cdc类) 243
8.2.1 cdc及其派生类 243
8.2.2 文本输出 245
8.2.3 cdc的常用绘图函数 247
8.3 使用画笔和画刷进行绘图 249
8.3.1 画笔对象及其使用 249
8.3.2 使用画笔绘图实例 250
8.3.3 画刷对象及其使用 251
8.3.4 使用画刷绘图实例 252
8.4 字体对象 254
8.4.1 字体对象的创建 255
8.4.2 获取字体信息 257
8.4.3 字体对象使用实例 257
8.5 位图和区域对象 258
8.5.1 设备相关位图(ddb) 258
8.5.2 cbitmap应用实例 260
8.5.3 设备无关位图(dib) 261
8.5.4 区域对象(crgn) 262
8.5.5 crgn应用实例 263
8.6 坐标系统与映射模式 265
8.6.1 坐标系统 265
8.6.2 映射模式 265
8.6.3 自定义映射模式 266
8.6.4 坐标映射使用实例 267
8.7 小结 268
8.8 本章练习 269
第三篇 visual c++基本应用程序开发
第9章 文档/视图结构的应用程序开发 271
9.1 文档/视图结构 271
9.1.1 文档/视图结构概述 271
9.1.2 文档/视图结构的分类 272
9.2 文档/视图结构应用程序框架分析 273
9.2.1 利用appwizard创建单文档程序框架 273
9.2.2 程序框架中的主要类及相互关系 276
9.2.3 文档类、视图类核心函数及作用 278
9.2.4 新建、保存和打开的实现 279
9.2.5 多文档应用程序框架 280
9.3 文档/视图结构应用程序的开发 282
9.3.1 实现目标 282
9.3.2 创建基本的程序框架 282
9.3.3 创建文档数据 284
9.3.4 在视图类中实现绘图操作 284
9.3.5 文档的序列化 287
9.3.6 对例程数据进行序列化 291
9.3.7 让文档程序支持滚动条 294
9.4 窗口分割与多视图 296
9.4.1 窗口分割基础知识 296
9.4.2 动态分割窗口的实现 298
9.4.3 静态分割窗口与多视图的实现 300
9.5 小结 303
9.6 本章练习 303
第10章 对话框的应用 304
10.1 对话框的工作方式、种类和创建方法 304
10.1.1 对话框在应用程序中的工作方式.. 304
10.1.2 对话框的种类 304
10.1.3 对话框模板的创建与编辑 305
10.2 对话框与程序连接 308
10.2.1 创建对话框类 308
10.2.2 为对话框类添加成员变量 309
10.2.3 对话框数据交换与验证 310
10.2.4 对话框控件通知消息的处理 312
10.3 对话框的创建与显示 314
10.3.1 创建模态对话框 314
10.3.2 创建非模态对话框 315
10.3.3 非模态对话框创建实例 316
10.3.4 基于对话框的应用程序 321
10.4 属性表对话框 323
10.4.1 属性表对话框的创建 324
10.4.2 属性表对话框的运行机制 327
10.5 消息对话框与公用对话框 328
10.5.1 消息对话框 329
10.5.2 颜色对话框 331
10.5.3 文件对话框 332
10.5.4 字体对话框 333
10.5.5 查找、替换对话框 335
10.5.6 打印对话框 337
10.5.7 公用对话框使用实例 339
10.6 小结 344
10.7 本章练习 344
第11章 动态链接库编程 345
11.1 基本概念 345
11.1.1 动态链接库的概念 345
11.1.2 动态链接库的优点 346
11.1.3 visual c++ 6.0可开发的dll 347
11.1.4 dll文件的组成 347
11.2 dll的创建与调用 348
11.2.1 win32 dll的创建 348
11.2.2 dll的导出 349
11.2.3 应用程序链接dll 350
11.3 mfc常规dll的创建与使用 354
11.3.1 基本概念 354
11.3.2 mfc常规dll的创建 355
11.3.3 mfc常规dll创建实例 355
11.3.4 mfc常规dll的调用 357
11.4 mfc扩展dll的创建与使用 359
11.4.1 mfc扩展dll的创建 359
11.4.2 mfc扩展dll的创建实例 360
11.4.3 mfc扩展dll的调用 363
11.5 dll的查看与调试 364
11.5.1 使用depends工具查看dll接口 364
11.5.2 dll的调试 365
11.6 小结 366
11.7 本章练习 366
第四篇 visual c++应用程序开发进阶
第12章 多线程程序开发 367
12.1 多线程的引入 367
12.1.1 单线程程序的不足 367
12.1.2 问题的解决 368
12.2 多线程编程的基础知识 368
12.2.1 进程和线程 368
12.2.2 spy++工具 369
12.2.3 win32 api对多线程编程的支持 369
12.2.4 mfc对多线程编程的支持 373
12.3 多线程程序开发 376
12.3.1 使用win32 api函数开多线程程序 376
12.3.2 mfc用户界面线程的开发 379
12.3.3 mfc工作者线程的开发 383
12.4 线程间的通信 383
12.4.1 使用全局变量实现线程间的通信 383
12.4.2 使用自定义的消息实现线程间的通信 386
12.5 线程的同步 389
12.5.1 等待函数 389
12.5.2 cevent类实现线程同步 390
12.5.3 使用cevent类实现线程同步实例 391
12.5.4 ccriticalsection类实现线程同步 394
12.5.5 ccriticalsection类实现线程同步实例 395
12.5.6 csemaphore类实现线程同步 398
12.5.7 csemaphore类实现线程同步实例 398
12.6 小结 400
12.7 本章练习 400
第13章 visual c++网络编程 401
13.1 网络通信及开发基础 401
13.1.1 tcp/ip协议 401
13.1.2 tcp/ip协议 403
13.1.3 windows sockets基础 403
13.1.4 客户端/服务器模式 404
13.2 基本网络通信开发 404
13.2.1 casyncsocket类及常用成员函数的使用 404
13.2.2 使用winsock进行无连接的通信 408
13.2.3 无连接通信实例 409
13.2.4 使用winsock进行有连接的通信 413
13.2.5 有连接通信实例 413
13.3 网络程序设计与开发 417
13.3.1 网络程序的一些概念 418
13.3.2 socket事件 418
13.3.3 socket事件的激发控制 418
13.3.4 socket信息的获取与处理 419
13.3.5 网络程序开发实例 421
13.4 wininet开发internet客户端程序 429
13.4.1 mfc wininet开发包 429
13.4.2 wininet开发客户端程序的流程 430
13.4.3 wininet开发http客户端程序实例 431
13.5 简单的web浏览器开发 433
13.5.1 chtmlview视图类简介 433
13.5.2 浏览器开发实例 434
13.6 小结 439
13.7 本章练习 439
第14章 visual c++数据库编程 440
14.1 数据库基础 440
14.1.1 数据库的基本概念 440
14.1.2 数据库管理系统(dbms) 441
14.1.3 结构化查询语言(sql) 441
14.2 数据库开发技术简介 444
14.2.1 odbc api/mfc odbc技术 444
14.2.2 dao技术 445
14.2.3 ado技术 445
14.3 在visual c++中使用ado开发数据库应用程序 447
14.3.1 visual c++对ado的支持 447
14.3.2 创建数据库与实例工程 448
14.3.3 引入ado对象 451
14.3.4 连接数据源 451
14.3.5 开发技术—连接对象(connection) 452
14.3.6 创建表并添加数据 454
14.3.7 开发技术—ado对象命令的执行 455
14.3.8 开发技术—recordset对象 457
14.3.9 遍历、删除、编辑记录的实现 462
14.4 使用odbc数据源连接数据库 467
14.4.1 手动实现设置odbc数据源 467
14.4.2 ado连接odbc数据源 468
14.4.3 visual c++程序实现设置odbc数据源 469
14.4.4 使用visual c++程序设置odbc数据源实例 470
14.5 小结 471
14.6 本章练习 471
第15章 使用visual c++ 6.0开发家庭财务管理系统 472
15.1 提出问题:设计一个家庭财务管理系统 472
15.1.1 功能概述 472
15.1.2 界面需求 472
15.2 数据库设计 473
15.2.1 数据关系分析 473
15.2.2 e-r图设计 474
15.2.3 数据库表的生成 475
15.3 算法设计 476
15.3.1 连接数据库 476
15.3.2 添加数据 477
15.3.3 修改数据库内容 477
15.3.4 统计数据库信息 478
15.4 软件项目开发过程 478
15.4.1 开发家庭财务管理系统项目的流程 478
15.4.2 根据e-r图创建数据库表 478
15.4.3 功能研发的准备工作 480
15.4.4 实现算法设计 483
15.4.5 测试 486
15.5 小结 487
编程实践:visual c++进阶100例
电子书目录
前言
第1章 认识visual c++ 6.0 1
1.1 第一个控制台应用程序实例 1
1.2 第一个windows应用程序实例 3
1.3 基于对话框的mfc应用程序实例 5
1.4 单文档mfc应用程序实例 7
1.5 多文档mfc应用程序实例 10
1.6 宏的使用实例 12
第2章 使用常用win32控件 15
2.1 静态文本、文本框和按钮使用实例 15
2.2 复选框和单选按钮使用实例 17
2.3 组合框(combo box)和列表框(list box)使用实例 20
2.4 滚动条(scroll bar)使用实例 22
2.5 数值调节按钮(spin)使用实例 24
2.6 进度条(progress)使用实例 26
2.7 滑块控件(slider)使用实例 27
2.8 热键控件(hot key)使用实例 29
2.9 列表控件(list control)使用实例 30
2.10 树形控件(tree control)使用实例 33
2.11 格式文本框(rich edit)使用实例 36
2.12 属性页(tab control)使用实例 40
2.13 动画控件(animate)使用实例 42
2.14 日期时间选择控件(date time picker)使用实例 44
2.15 日历控件(month calendar)使用实例 46
2.16 ip输入框(ip address)使用实例 47
第3章 使用高级win32控件丰富界面 50
3.1 窗体菜单使用实例 50
3.2 弹出式菜单使用实例 52
3.3 工具栏使用实例 55
3.4 256色工具栏使用实例 57
3.5 状态栏输出信息实例 58
3.6 状态栏彩色渐变进度条实例 60
3.7 tooltip显示即时提示实例 64
第4章 窗体 67
4.1 创建和显示窗体实例 67
4.2 让窗体保持在最顶层实例 77
4.3 创建半透明窗体实例 78
4.4 创建椭圆窗体实例 82
4.5 创建文字窗体实例 83
4.6 利用图片生成异形窗体实例 88
4.7 以动画方式显示和隐藏窗体实例 92
4.8 控件自动适应窗体大小实例 95
4.9 多个控件改变大小时防止闪烁实例 100
4.10 限制窗体的最大和最小尺寸实例 102
4.11 让窗体具有停靠效果实例 103
4.12 枚举系统中的窗口实例 106
第5章 对话框 116
5.1 显示模式对话框实例 116
5.2 显示非模式对话框实例 118
5.3 打开文件对话框使用实例 120
5.4 保存文件对话框使用实例 123
5.5 字体对话框使用实例 124
5.6 颜色对话框使用实例 125
5.7 为打开文件对话框增加预览功能实例 127
5.8 从内存创建对话框实例 130
第6章 深入了解windows消息 137
6.1 传递并响应windows消息实例 137
6.2 发送windows消息实例 141
6.3 在mfc中映射消息实例 143
6.4 自定义消息使用实例 146
6.5 拦截并处理win32控件的消息实例 148
第7章 系统和外壳编程 153
7.1 定时器使用实例 153
7.2 访问系统注册表实例 156
7.3 用随机数生成强力密码实例 158
7.4 打开和程序相关联的文档实例 160
7.5 访问windows剪切板实例 162
7.6 监视剪切板内容变化实例 165
7.7 使用系统托盘图标实例 169
第8章 基本输入设备 175
8.1 鼠标输入处理实例 175
8.2 键盘输入处理实例 177
8.3 利用客户区鼠标消息拖动无边框窗体实例 180
8.4 利用非客户区控制无边框窗体实例 182
8.5 限制鼠标移动区域实例 184
8.6 模拟键盘鼠标消息实例 185
8.7 使用系统热键使后台程序得到通知实例 189
第9章 进程 194
9.1 创建和结束进程实例 194
9.2 用匿名管道获取控制台程序的输出实例 198
9.3 拦截并处理外部进程错误实例 200
9.4 防止应用程序运行多次实例 205
9.5 用消息在进程间通信实例 208
9.6 用内存映射文件在进程间通信实例 210
9.7 枚举并得到系统中所有进程信息实例 214
第10章 线程 225
10.1 主线程阻塞实例 225
10.2 创建和结束线程实例 227
10.3 用临界区对象同步线程实例 230
10.4 用事件对象同步线程实例 235
10.5 用信号量对象同步线程实例 242
10.6 调整线程优先级实例 244
第11章 图形图像开发 247
11.1 用dc对象缩放位图实例 247
11.2 用画笔对象画线实例 251
11.3 用画刷对象填充区域实例 254
11.4 输出文本实例 256
11.5 使用gdi+读取不同格式的图片实例 259
11.6 使用gdi+保存不同格式的图片实例 264
11.7 制作屏幕截图程序实例 267
11.8 给图片增加版权信息实例 269
第12章 文件io开发 284
12.1 用基本api读写文件实例 284
12.2 用mfc类读写文件实例 291
12.3 监控硬盘上文件的变化实例 296
12.4 获取本机所有磁盘及其空间使用情况实例 301
12.5 unicode编码处理实例 305
12.6 读写xml文件实例 308
12.7 读写串口数据实例 313
第13章 数据库开发 319
13.1 创建odbc数据源实例 319
13.2 使用odbc访问数据库实例 321
13.3 使用ado访问数据库实例 323
13.4 调用sql server的存储过程实例 329
13.5 事务处理sql server命令实例 333
13.6 存取数据库中的图片实例 336
13.7 在程序中动态生成access数据库实例 344
第14章 网络开发 347
14.1 建立udp连接客户端实例 347
14.2 建立udp连接服务器端实例 350
14.3 建立tcp连接客户端实例 352
14.4 建立tcp连接服务器端实例 357
14.5 mfc的socket类使用实例 362
14.6 注册自己的浏览器地址栏协议实例 367
14.7 抓取网页内容实例 371
14.8 基于icmp的网络速度监控实例 373
第15章 windows高级编程 387
15.1 鼠标hook制作实例 387
15.2 用鼠标hook读取密码框中的内容实例 390
15.3 键盘hook制作实例 394
15.4 用键盘hook屏蔽系统按键实例 396
15.5 用hook技术给对话框换肤实例 400
15.6 分析dll文件获取其导出函数列表实例... 404
本书力求从visual c++初学者的角度开发,使初学者能够最快地掌握visual c++程序设计的精髓而少走弯路。本书对visual c++的每个知识点的讲解均采用最基本、最常用的方案实现,并辅以简单易懂而贴近工程应用的实例来阐明。对使用的mfc类,只详细介绍工程项目中常用的成员函数的使用,其他成员函数则忽略。虽然是基础书,但对于visual c++程序框架的建立及总体的运行机制还是作了详细的介绍,因为只有掌握了这些,才便于以后的进阶提高。..
全书分为四篇,共15章,内容涵盖c++及visual c++程序框架,visual c++的基本开发要素,如键盘、鼠标、工具栏、状态栏、通用控件、设备描述表以及mfc通用类,对话框、文件/视图结构程序以及dll的开发,多线程程序设计,网络编程以及数据库开发等。
本书作为visual c++ 6.0的基础教程,适合于visual c++的初学者,特别是大中专院校刚学习完c++语言的低年级学生。另外,本书还适合已经稍有基础的visual c++开发者,进一步巩固和熟悉visual c++开发的框架体系,同时也适合作为项目开发参考的工具书。
目录:
出版说明.
前言
第一篇 visual c++与c++基础
第1章 visual c++ 6.0开发环境和应用程序框架 1
1.1 安装并测试visual c++ 6.0 1
1.1.1 visual c++ 6.0的安装 1
1.1.2 visual c++ 6.0开发环境 4
1.1.3 visual c++ 6.0应用程序向导和项目创建 5
1.2 visual c++ 6.0简介 7
1.2.1 c/c++编译器 7
1.2.2 编辑器 7
1.2.3 资源编辑器和资源符号 8
1.2.4 连接器和调试器 8
1.2.5 visual c++ 6.0的主要菜单项功能 9
1.2.6 项目和解决方案 14
1.2.7 本机帮助和联机帮助 14
1.3 win32基本应用程序的创建 15
1.3.1 使用appwizard应用程序向导 15
1.3.2 win32应用程序的生成 16
1.3.3 visual c++ 6.0的调试:变量跟踪和函数调用栈 19
.1.4 microsoft应用程序框架 21
1.4.1 全局对象 21
1.4.2 mfc的消息映射和消息分类 21
1.5 实例:编写第一个c++程序—hello, c++! 21
1.6 实例:创建第一个mfc程序—hello, mfc! 24
1.7 小结 24
1.8 本章练习 24
第2章 c++语法基础 25
2.1 c++简介 25
2.2 数据类型定义和使用 26
2.2.1 简单变量 26
2.2.2 算术运算符 29
2.2.3 枚举、指针和数组 31
2.2.4 string类和c风格字符串 33
2.2.5 结构体类型 35
2.2.6 类类型 36
2.2.7 实例:成绩管理系统(1.0版) 39
2.3 运算符、表达式和语句 43
2.3.1 几种常用的运算符 43
2.3.2 循环语句:for语句、while语句和do...while语句 45
2.3.3 判断语句:if语句和switch语句 46
2.3.4 实例:成绩管理系统(2.0版) 49
2.4 函数定义和调用 53
2.4.1 定义函数和函数原型 53
2.4.2 函数通过指针来调用数组 54
2.4.3 函数指针 54
2.4.4 具有引用参数的函数 55
2.4.5 函数重载 58
2.4.6 函数模板的定义和使用 59
2.4.7 实例:成绩管理系统(3.0版) 60
2.5 类的定义和对象构造 62
2.5.1 自然界中的类型和c++的类定义 63
2.5.2 实现类成员函数 64
2.5.3 实例化类对象并使用 66
2.5.4 类的构造函数和析构函数 67
2.5.5 运算符重载与this指针的使用 69
2.5.6 友元函数和友元类 70
2.5.7 实例:成绩管理系统(4.0版) 73
2.6 类继承 77
2.6.1 is-a关系 77
2.6.2 多态公有继承 79
2.6.3 protected访问控制 81
2.6.4 抽象基类 82
2.6.5 私有继承和保护继承 83
2.6.6 多继承 83
2.6.7 类模板 84
2.7 c++异常机制 85
2.7.1 异常处理类型 85
2.7.2 exception类 87
2.8 标准模板库(stl) 87
2.8.1 auto_ptr类的使用 87
2.8.2 vector模板类的定义和使用 88
2.8.3 通用算法 89
2.8.4 实例:使用stl和通用算法开发成绩管理系统(5.0版) 91
2.9 i/o流和文件 95
2.9.1 c++的输入和输出 96
2.9.2 文件输入和输出 96
2.9.3 实例:在visual c++ 6.0创建c++源文件,使用磁盘文件读写 97
2.10 小结 98
2.11 本章练习 98
第3章 windows编程与mfc基础 99
3.1 windows编程基础 99
3.1.1 windows api函数 99
3.1.2 窗口与句柄 99
3.1.3 事件与消息 100
3.1.4 常用的windows数据类型 100
3.2 windows应用程序分析 101
3.2.1 winmain函数 102
3.2.2 创建窗口 102
3.2.3 消息循环 103
3.2.4 winproc窗口函数 104
3.2.5 windows编程实例 105
3.3 mfc基础 107
3.3.1 mfc概述 107
3.3.2 mfc基础类及其层次结构 107
3.3.3 mfc中的全局函数 109
3.4 mfc应用程序框架分析 109
3.4.1 入口函数 109
3.4.2 应用程序对象 110
3.4.3 initinstance函数 111
3.4.4 run函数 112
3.4.5 mfc的消息映射 114
3.4.6 mfc消息分类 114
3.5 小结 116
3.6 本章练习 116
第二篇 visual c++常用类、控件和资源
第4章 基本输入—键盘和鼠标消息 117
4.1 键盘消息及其处理 117
4.1.1 键盘消息 117
4.1.2 键盘消息处理 118
4.1.3 按键消息的处理 118
4.1.4 按键消息处理函数 120
4.1.5 字符消息的处理 122
4.1.6 创建键盘插入符 125
4.2 鼠标消息及其处理 128
4.2.1 鼠标消息 128
4.2.2 鼠标消息处理函数 128
4.2.3 鼠标消息处理实例 129
4.2.4 鼠标光标的创建与使用 132
4.2.5 捕捉鼠标 133
4.2.6 锁定鼠标的作用区域 134
4.3 小结 135
4.4 本章练习 135
第5章 菜单、工具栏和状态栏编程 136
5.1 菜单及其相关资源的使用 136
5.1.1 菜单的种类及开发步骤 136
5.1.2 菜单的创建与编辑 137
5.1.3 菜单消息 139
5.1.4 菜单命令消息的处理 139
5.1.5 菜单更新消息的处理 141
5.1.6 为菜单项设置快捷键 143
5.1.7 弹出菜单的创建与使用 145
5.2 工具栏的使用 148
5.2.1 工具栏的创建 148
5.2.2 编辑工具栏 150
5.2.3 工具栏命令处理 151
5.2.4 工具栏类ctoolbar的简单介绍 151
5.3 状态栏的使用 152
5.3.1 状态栏的创建 152
5.3.2 状态栏编程 153
5.3.3 状态栏类cstatusbar的简单介绍 156
5.4 小结 157
5.5 本章练习 157
第6章 使用windows标准控件 158
6.1 windows标准控件 158
6.1.1 windows控件简介 159
6.1.2 使用对话框编辑器创建控件 159
6.1.3 控件类的基类cwnd 162
6.1.4 控件的消息及其处理 163
6.2 按钮控件 163
6.2.1 按钮控件简介 163
6.2.2 按钮控件类cbutton 164
6.2.3 按钮控件的属性与消息 165
6.2.4 按钮状态的确定 166
6.2.5 按钮控件使用实例 167
6.3 静态控件与编辑控件 171
6.3.1 静态控件的创建与使用 171
6.3.2 静态控件类cstatic 172
6.3.3 编辑控件的创建 173
6.3.4 编辑控件类cedit 174
6.3.5 编辑控件的消息 175
6.3.6 编辑控件的应用实例 176
6.4 列表框控件和组合框控件 178
6.4.1 列表框控件的创建 178
6.4.2 列表框控件类clistbox 179
6.4.3 列表框控件的消息 180
6.4.4 列表框控件实例 180
6.4.5 组合框控件的创建 183
6.4.6 组合框控件类ccombobox 184
6.4.7 组合框控件的消息 185
6.5 微调控件、滑块控件和进度条 185
6.5.1 微调控件的创建 186
6.5.2 微调控件的使用 186
6.5.3 滑块控件的创建 188
6.5.4 滑块控件的使用 188
6.5.5 进度条控件的创建及使用 190
6.5.6 微调控件、滑块控件和进度条编程实例 191
6.6 列表视图控件和树形视图控件 192
6.6.1 列表视图控件的创建 193
6.6.2 列表视图控件类clistctrl 194
6.6.3 列表视图控件的通知消息 196
6.6.4 树形视图控件的创建 196
6.6.5 树形视图控件类ctreectrl 197
6.6.6 树形视图控件的消息 199
6.6.7 列表视图和树形视图编程实例 199
6.7 activex控件的使用 203
6.7.1 activex控件的结构 203
6.7.2 visual c++中的组件和控件库 204
6.7.3 mfc程序中activex控件的使用 205
6.7.4 activex控件使用实例 206
6.8 小结 210
6.9 本章练习 210
第7章 mfc常用的通用类 211
7.1 字符串类(cstring) 211
7.1.1 cstring对象的创建 211
7.1.2 cstring类的成员函数 211
7.1.3 cstring类的常用操作 212
7.1.4 cstring的格式化与类型转换 215
7.2 mfc的集合类 216
7.2.1 数组类 216
7.2.2 数组类的使用实例 217
7.2.3 链表类 219
7.2.4 链表类的使用实例 221
7.3 日期、时间类 223
7.3.1 ctime类 223
7.3.2 ctime对象的格式化 224
7.3.3 ctimespan类 225
7.3.4 计时器的使用 226
7.4 mfc文件操作类(cfile) 227
7.4.1 构造文件对象并打开文件 227
7.4.2 文件的读写操作 228
7.4.3 文件的定位操作 229
7.4.4 文件的管理操作 230
7.4.5 使用cfile类进行文件操作实例 231
7.5 mfc异常类 233
7.5.1 mfc异常类简介 233
7.5.2 文件异常类cfileexception 234
7.5.3 异常的捕获 235
7.6 小结 237
7.7 本章练习 237
第8章 文本、图形输出 238
8.1 基础知识 238
8.1.1 gdi绘图的实现 238
8.1.2 mfc图形对象类 239
8.1.3 库存gdi对象 240
8.1.4 与图形绘制有关的简单数据类型 240
8.1.5 mfc应用程序框架中的图形绘制与刷新 242
8.2 mfc设备描述表(cdc类) 243
8.2.1 cdc及其派生类 243
8.2.2 文本输出 245
8.2.3 cdc的常用绘图函数 247
8.3 使用画笔和画刷进行绘图 249
8.3.1 画笔对象及其使用 249
8.3.2 使用画笔绘图实例 250
8.3.3 画刷对象及其使用 251
8.3.4 使用画刷绘图实例 252
8.4 字体对象 254
8.4.1 字体对象的创建 255
8.4.2 获取字体信息 257
8.4.3 字体对象使用实例 257
8.5 位图和区域对象 258
8.5.1 设备相关位图(ddb) 258
8.5.2 cbitmap应用实例 260
8.5.3 设备无关位图(dib) 261
8.5.4 区域对象(crgn) 262
8.5.5 crgn应用实例 263
8.6 坐标系统与映射模式 265
8.6.1 坐标系统 265
8.6.2 映射模式 265
8.6.3 自定义映射模式 266
8.6.4 坐标映射使用实例 267
8.7 小结 268
8.8 本章练习 269
第三篇 visual c++基本应用程序开发
第9章 文档/视图结构的应用程序开发 271
9.1 文档/视图结构 271
9.1.1 文档/视图结构概述 271
9.1.2 文档/视图结构的分类 272
9.2 文档/视图结构应用程序框架分析 273
9.2.1 利用appwizard创建单文档程序框架 273
9.2.2 程序框架中的主要类及相互关系 276
9.2.3 文档类、视图类核心函数及作用 278
9.2.4 新建、保存和打开的实现 279
9.2.5 多文档应用程序框架 280
9.3 文档/视图结构应用程序的开发 282
9.3.1 实现目标 282
9.3.2 创建基本的程序框架 282
9.3.3 创建文档数据 284
9.3.4 在视图类中实现绘图操作 284
9.3.5 文档的序列化 287
9.3.6 对例程数据进行序列化 291
9.3.7 让文档程序支持滚动条 294
9.4 窗口分割与多视图 296
9.4.1 窗口分割基础知识 296
9.4.2 动态分割窗口的实现 298
9.4.3 静态分割窗口与多视图的实现 300
9.5 小结 303
9.6 本章练习 303
第10章 对话框的应用 304
10.1 对话框的工作方式、种类和创建方法 304
10.1.1 对话框在应用程序中的工作方式.. 304
10.1.2 对话框的种类 304
10.1.3 对话框模板的创建与编辑 305
10.2 对话框与程序连接 308
10.2.1 创建对话框类 308
10.2.2 为对话框类添加成员变量 309
10.2.3 对话框数据交换与验证 310
10.2.4 对话框控件通知消息的处理 312
10.3 对话框的创建与显示 314
10.3.1 创建模态对话框 314
10.3.2 创建非模态对话框 315
10.3.3 非模态对话框创建实例 316
10.3.4 基于对话框的应用程序 321
10.4 属性表对话框 323
10.4.1 属性表对话框的创建 324
10.4.2 属性表对话框的运行机制 327
10.5 消息对话框与公用对话框 328
10.5.1 消息对话框 329
10.5.2 颜色对话框 331
10.5.3 文件对话框 332
10.5.4 字体对话框 333
10.5.5 查找、替换对话框 335
10.5.6 打印对话框 337
10.5.7 公用对话框使用实例 339
10.6 小结 344
10.7 本章练习 344
第11章 动态链接库编程 345
11.1 基本概念 345
11.1.1 动态链接库的概念 345
11.1.2 动态链接库的优点 346
11.1.3 visual c++ 6.0可开发的dll 347
11.1.4 dll文件的组成 347
11.2 dll的创建与调用 348
11.2.1 win32 dll的创建 348
11.2.2 dll的导出 349
11.2.3 应用程序链接dll 350
11.3 mfc常规dll的创建与使用 354
11.3.1 基本概念 354
11.3.2 mfc常规dll的创建 355
11.3.3 mfc常规dll创建实例 355
11.3.4 mfc常规dll的调用 357
11.4 mfc扩展dll的创建与使用 359
11.4.1 mfc扩展dll的创建 359
11.4.2 mfc扩展dll的创建实例 360
11.4.3 mfc扩展dll的调用 363
11.5 dll的查看与调试 364
11.5.1 使用depends工具查看dll接口 364
11.5.2 dll的调试 365
11.6 小结 366
11.7 本章练习 366
第四篇 visual c++应用程序开发进阶
第12章 多线程程序开发 367
12.1 多线程的引入 367
12.1.1 单线程程序的不足 367
12.1.2 问题的解决 368
12.2 多线程编程的基础知识 368
12.2.1 进程和线程 368
12.2.2 spy++工具 369
12.2.3 win32 api对多线程编程的支持 369
12.2.4 mfc对多线程编程的支持 373
12.3 多线程程序开发 376
12.3.1 使用win32 api函数开多线程程序 376
12.3.2 mfc用户界面线程的开发 379
12.3.3 mfc工作者线程的开发 383
12.4 线程间的通信 383
12.4.1 使用全局变量实现线程间的通信 383
12.4.2 使用自定义的消息实现线程间的通信 386
12.5 线程的同步 389
12.5.1 等待函数 389
12.5.2 cevent类实现线程同步 390
12.5.3 使用cevent类实现线程同步实例 391
12.5.4 ccriticalsection类实现线程同步 394
12.5.5 ccriticalsection类实现线程同步实例 395
12.5.6 csemaphore类实现线程同步 398
12.5.7 csemaphore类实现线程同步实例 398
12.6 小结 400
12.7 本章练习 400
第13章 visual c++网络编程 401
13.1 网络通信及开发基础 401
13.1.1 tcp/ip协议 401
13.1.2 tcp/ip协议 403
13.1.3 windows sockets基础 403
13.1.4 客户端/服务器模式 404
13.2 基本网络通信开发 404
13.2.1 casyncsocket类及常用成员函数的使用 404
13.2.2 使用winsock进行无连接的通信 408
13.2.3 无连接通信实例 409
13.2.4 使用winsock进行有连接的通信 413
13.2.5 有连接通信实例 413
13.3 网络程序设计与开发 417
13.3.1 网络程序的一些概念 418
13.3.2 socket事件 418
13.3.3 socket事件的激发控制 418
13.3.4 socket信息的获取与处理 419
13.3.5 网络程序开发实例 421
13.4 wininet开发internet客户端程序 429
13.4.1 mfc wininet开发包 429
13.4.2 wininet开发客户端程序的流程 430
13.4.3 wininet开发http客户端程序实例 431
13.5 简单的web浏览器开发 433
13.5.1 chtmlview视图类简介 433
13.5.2 浏览器开发实例 434
13.6 小结 439
13.7 本章练习 439
第14章 visual c++数据库编程 440
14.1 数据库基础 440
14.1.1 数据库的基本概念 440
14.1.2 数据库管理系统(dbms) 441
14.1.3 结构化查询语言(sql) 441
14.2 数据库开发技术简介 444
14.2.1 odbc api/mfc odbc技术 444
14.2.2 dao技术 445
14.2.3 ado技术 445
14.3 在visual c++中使用ado开发数据库应用程序 447
14.3.1 visual c++对ado的支持 447
14.3.2 创建数据库与实例工程 448
14.3.3 引入ado对象 451
14.3.4 连接数据源 451
14.3.5 开发技术—连接对象(connection) 452
14.3.6 创建表并添加数据 454
14.3.7 开发技术—ado对象命令的执行 455
14.3.8 开发技术—recordset对象 457
14.3.9 遍历、删除、编辑记录的实现 462
14.4 使用odbc数据源连接数据库 467
14.4.1 手动实现设置odbc数据源 467
14.4.2 ado连接odbc数据源 468
14.4.3 visual c++程序实现设置odbc数据源 469
14.4.4 使用visual c++程序设置odbc数据源实例 470
14.5 小结 471
14.6 本章练习 471
第15章 使用visual c++ 6.0开发家庭财务管理系统 472
15.1 提出问题:设计一个家庭财务管理系统 472
15.1.1 功能概述 472
15.1.2 界面需求 472
15.2 数据库设计 473
15.2.1 数据关系分析 473
15.2.2 e-r图设计 474
15.2.3 数据库表的生成 475
15.3 算法设计 476
15.3.1 连接数据库 476
15.3.2 添加数据 477
15.3.3 修改数据库内容 477
15.3.4 统计数据库信息 478
15.4 软件项目开发过程 478
15.4.1 开发家庭财务管理系统项目的流程 478
15.4.2 根据e-r图创建数据库表 478
15.4.3 功能研发的准备工作 480
15.4.4 实现算法设计 483
15.4.5 测试 486
15.5 小结 487
编程实践:visual c++进阶100例
电子书目录
前言
第1章 认识visual c++ 6.0 1
1.1 第一个控制台应用程序实例 1
1.2 第一个windows应用程序实例 3
1.3 基于对话框的mfc应用程序实例 5
1.4 单文档mfc应用程序实例 7
1.5 多文档mfc应用程序实例 10
1.6 宏的使用实例 12
第2章 使用常用win32控件 15
2.1 静态文本、文本框和按钮使用实例 15
2.2 复选框和单选按钮使用实例 17
2.3 组合框(combo box)和列表框(list box)使用实例 20
2.4 滚动条(scroll bar)使用实例 22
2.5 数值调节按钮(spin)使用实例 24
2.6 进度条(progress)使用实例 26
2.7 滑块控件(slider)使用实例 27
2.8 热键控件(hot key)使用实例 29
2.9 列表控件(list control)使用实例 30
2.10 树形控件(tree control)使用实例 33
2.11 格式文本框(rich edit)使用实例 36
2.12 属性页(tab control)使用实例 40
2.13 动画控件(animate)使用实例 42
2.14 日期时间选择控件(date time picker)使用实例 44
2.15 日历控件(month calendar)使用实例 46
2.16 ip输入框(ip address)使用实例 47
第3章 使用高级win32控件丰富界面 50
3.1 窗体菜单使用实例 50
3.2 弹出式菜单使用实例 52
3.3 工具栏使用实例 55
3.4 256色工具栏使用实例 57
3.5 状态栏输出信息实例 58
3.6 状态栏彩色渐变进度条实例 60
3.7 tooltip显示即时提示实例 64
第4章 窗体 67
4.1 创建和显示窗体实例 67
4.2 让窗体保持在最顶层实例 77
4.3 创建半透明窗体实例 78
4.4 创建椭圆窗体实例 82
4.5 创建文字窗体实例 83
4.6 利用图片生成异形窗体实例 88
4.7 以动画方式显示和隐藏窗体实例 92
4.8 控件自动适应窗体大小实例 95
4.9 多个控件改变大小时防止闪烁实例 100
4.10 限制窗体的最大和最小尺寸实例 102
4.11 让窗体具有停靠效果实例 103
4.12 枚举系统中的窗口实例 106
第5章 对话框 116
5.1 显示模式对话框实例 116
5.2 显示非模式对话框实例 118
5.3 打开文件对话框使用实例 120
5.4 保存文件对话框使用实例 123
5.5 字体对话框使用实例 124
5.6 颜色对话框使用实例 125
5.7 为打开文件对话框增加预览功能实例 127
5.8 从内存创建对话框实例 130
第6章 深入了解windows消息 137
6.1 传递并响应windows消息实例 137
6.2 发送windows消息实例 141
6.3 在mfc中映射消息实例 143
6.4 自定义消息使用实例 146
6.5 拦截并处理win32控件的消息实例 148
第7章 系统和外壳编程 153
7.1 定时器使用实例 153
7.2 访问系统注册表实例 156
7.3 用随机数生成强力密码实例 158
7.4 打开和程序相关联的文档实例 160
7.5 访问windows剪切板实例 162
7.6 监视剪切板内容变化实例 165
7.7 使用系统托盘图标实例 169
第8章 基本输入设备 175
8.1 鼠标输入处理实例 175
8.2 键盘输入处理实例 177
8.3 利用客户区鼠标消息拖动无边框窗体实例 180
8.4 利用非客户区控制无边框窗体实例 182
8.5 限制鼠标移动区域实例 184
8.6 模拟键盘鼠标消息实例 185
8.7 使用系统热键使后台程序得到通知实例 189
第9章 进程 194
9.1 创建和结束进程实例 194
9.2 用匿名管道获取控制台程序的输出实例 198
9.3 拦截并处理外部进程错误实例 200
9.4 防止应用程序运行多次实例 205
9.5 用消息在进程间通信实例 208
9.6 用内存映射文件在进程间通信实例 210
9.7 枚举并得到系统中所有进程信息实例 214
第10章 线程 225
10.1 主线程阻塞实例 225
10.2 创建和结束线程实例 227
10.3 用临界区对象同步线程实例 230
10.4 用事件对象同步线程实例 235
10.5 用信号量对象同步线程实例 242
10.6 调整线程优先级实例 244
第11章 图形图像开发 247
11.1 用dc对象缩放位图实例 247
11.2 用画笔对象画线实例 251
11.3 用画刷对象填充区域实例 254
11.4 输出文本实例 256
11.5 使用gdi+读取不同格式的图片实例 259
11.6 使用gdi+保存不同格式的图片实例 264
11.7 制作屏幕截图程序实例 267
11.8 给图片增加版权信息实例 269
第12章 文件io开发 284
12.1 用基本api读写文件实例 284
12.2 用mfc类读写文件实例 291
12.3 监控硬盘上文件的变化实例 296
12.4 获取本机所有磁盘及其空间使用情况实例 301
12.5 unicode编码处理实例 305
12.6 读写xml文件实例 308
12.7 读写串口数据实例 313
第13章 数据库开发 319
13.1 创建odbc数据源实例 319
13.2 使用odbc访问数据库实例 321
13.3 使用ado访问数据库实例 323
13.4 调用sql server的存储过程实例 329
13.5 事务处理sql server命令实例 333
13.6 存取数据库中的图片实例 336
13.7 在程序中动态生成access数据库实例 344
第14章 网络开发 347
14.1 建立udp连接客户端实例 347
14.2 建立udp连接服务器端实例 350
14.3 建立tcp连接客户端实例 352
14.4 建立tcp连接服务器端实例 357
14.5 mfc的socket类使用实例 362
14.6 注册自己的浏览器地址栏协议实例 367
14.7 抓取网页内容实例 371
14.8 基于icmp的网络速度监控实例 373
第15章 windows高级编程 387
15.1 鼠标hook制作实例 387
15.2 用鼠标hook读取密码框中的内容实例 390
15.3 键盘hook制作实例 394
15.4 用键盘hook屏蔽系统按键实例 396
15.5 用hook技术给对话框换肤实例 400
15.6 分析dll文件获取其导出函数列表实例... 404