标题：Visual Basic开发实战1200例（第Ⅱ卷）
图书信息
Visual Basic开发实战1200例（第Ⅱ卷)  明日科技 孙秀梅 巩建华编著 
ISBN 9787302253952　　
2011年6月出版 
定价：99.00元含（含光盘1张） 　
16开
内容简介
本书以开发人员在项目开发中经常遇到的问题和必须掌握的技术为核心，介绍了应用Visual Basic进行程序开发的多方面的知识和技巧，主要包括Visual Basic的多媒体开发、数据库应用、网络技术与Web开发、安全防护与入侵破解、打印技术与报表图表、程序控制与磁盘管理和系统与硬件设备等内容。全书分为7篇16章内容，总计600个实例，并附带600个技巧。每个实例都是作者精心筛选的，具有很强的实用性，其中一些实例是开发人员难以找到的解决方案。
本书附带有配套DVD光盘，其中包括书中全部实例的源代码，这些源代码都是经过作者精心调试并通过的，保证能够在Windows XP、Windows 2003及Windows 7操作系统下编译和运行。
本书非常适合Visual Basic项目开发人员、Visual Basic初学者及编程爱好者使用，同时也可以作为培训机构、大中专院校老师和学生的实践参考用书。
前言
前  言
特别说明：
《Visual Basic开发实战1200例》包括第I卷、第II卷共计1200个例子左右，本书是第II卷，包含约600个例子。
程序开发是一项艰辛的工作，它不仅考验开发人员的智力，更考验开发人员的体力。纵观国内的软件企业，内部开发团队挑灯夜战、加班加点是常有的事情。笔者参加过不少项目的开发工作，对编程有深刻的体会。编程是一项复杂的创造性工作，它不仅需要开发人员掌握各方面的知识，还需要开发人员积累丰富的开发经验。项目开发中的一个问题可能会占用团队的几天甚至十几天的时间，但是如果开发人员曾经遇到过类似的问题，也许几分钟就可以解决。这就是编程经验的重要性，也是许多软件企业用人时选择有项目开发经验人员的主要原因。
本书作者精选了项目开发中的600个实例，涵盖了Visual Basic的多媒体开发、数据库应用、网络技术与Web开发、安全防护与入侵破解、打印技术与报表图表、程序控制与磁盘管理和系统与硬件设备等方面的内容。每一个知识点都提供了丰富的、具有很强实用性的实例，以帮助开发人员快速解决疑难问题。
本书内容
本书分为7篇16章，总计600个实例和600个经验技巧。书中所选实例均来源于一线开发人员的实际项目开发，囊括了开发中经常使用和需要解决的热点、难点问题。学习本书，读者可以快速解决开发中的难题，提高编程效率。本书亮点内容导航如下图所示。
为了方便读者学习和使用本书，书中在讲解实例时采用统一的编排样式，每个实例均由“实例说明”、“关键技术”、“设计过程”和“秘笈心法”4部分构成，如下图所示。
其中，“实例说明”部分采用图文结合的方式介绍实例的功能和运行效果；“关键技术”部分介绍实例使用的重点、难点技术；“设计过程”部分讲解实例的详细开发过程；“秘笈心法”部分给出与实例相关的技巧和经验总结。
本书特色
* 实例丰富，经验超值
本书精选了600个实例和600个经验技巧，涵盖了编程多个方面的各种应用。用户开发中所需的技术、技巧、解决方案几乎都可在本书中找到。
* 易查、易学、易用
主目录从应用和技术角度对实例进行分类，方便用户查找所需编程技术。
* 特点突出，功能完善，实用性强
书中所选实例均是项目开发中经常需要使用或实现的技术，有许多实例是开发人员梦寐以求的。
* 赠送所有实例源码
书中所有实例均提供有源代码，用户在开发中可以快速借鉴或应用。
* 段落工整、简洁，图文结合，更容易学习
* 编码规范，注释详尽
为了提高用户的实际开发能力，书中代码都是经过严格审查的，可以与商业源码媲美，并且为了方便用户阅读代码，几乎所有代码都提供有详细注释。
超值DVD光盘
为了帮助读者学习和使用书中的实例，本书附赠DVD光盘，其中包含书中所有实例项目的源代码、素材。光盘目录如下图所示。
本书约定
* 实例使用方法
用户在学习本书过程中，可以从光盘中复制实例，去掉实例的只读属性。有些实例需要使用相应的数据库或第三方资源，这些实例在使用前需要进行相应配置，详细使用方法请参考本书光盘使用说明书。此外，如果用户直接将本书实例用于商业用途，由此产生的不良后果由用户自己承担。
* 实例位置
书中实例在光盘中的存储格式为“MR\章号\实例序号”。例如，MR\03\090表示实例090。
* 部分实例只给出关键代码
由于篇幅限制，书中部分实例只给出了关键代码，完整代码请参考光盘实例程序。
读者人群
本书非常适合以下人员阅读：
* 从事Visual Basic编程行业的开发人员
* 有一定计算机语言基础，想进一步提高技能的人员
* 大中专院校的老师和学生
* 即将走向工作岗位的大学毕业生
* 相关培训机构的老师和学员
* Visual Basic编程爱好者
本书作者
本书由明日科技组织编写，参加编写的程序员有安剑、巩建华、刘彬彬、孙秀梅、王小科、王军、赵会东、董大永、尹强、李继业、张磊、赛奎春、高春艳、宋坤、刘锐宁、梁水、李伟明、房大伟、吕双、刘云峰、王国辉、李钟尉、张振坤、白伟明、陈丹丹、卢翰、潘凯华、刘欣、李慧、梁晓岚、杨丽、顾丽丽、刘龄龄、王乐乐、陈英、李贺、朱晓、杨明、肖鑫、李鑫等。
由于水平有限，书中疏漏和不足之处在所难免，恳请广大读者朋友批评指正。
特别提醒：
亲爱的读者朋友，由于近期纸张价格和印制成本大幅上涨，为不增加读者朋友的负担，又不减少书的内容，本书的最后几章内容不得不放在配书光盘中（参见目录），由此给您带来了不便，在此深表歉意。
编  者
图书目录
目  录
第1篇  多媒体开发
第1章  音频开发技术 2
1.1  TTS开发 3
实例001  语音识别程序 3
实例002  语音朗读程序 5
实例003  WAV音频流识别程序 7
实例004  提供朗读方式的朗读程序 9
实例005  带口型演示的英文朗读程序 12
实例006  TTS语音录音 16
1.2  音频播放及录制 19
实例007  播放MP3文件 19
实例008  实现队列播放MP3 20
实例009  读取和写入M3U文件 21
实例010  迷你歌词秀 26
实例011  歌词编辑器 31
实例012  自制录音机 34
实例013  实时在线广播 38
实例014  播放MIDI和WAV文件 40
实例015  利用sndPlaySound()函数播放音频文件 41
实例016  利用mciExecute()函数播放WAV文件 42
实例017  播放资源文件中的声音 43
实例018  取得WAV文件信息 45
实例019  利用DirectSound编程实现实时混音 46
实例020  利用API播放CD 48
实例021  播放MIDI声音文件 50
1.3  音频设备控制 51
实例022  利用PC喇叭播放声音 51
实例023  检查是否安装声卡 52
实例024  控制系统音量 53
实例025  检测系统是否支持声音 55
第2章  视频开发技术 56
2.1  常见视频格式播放 57
实例026  播放FLV视频 57
实例027  播放MPG视频 60
实例028  播放VCD视频 62
实例029  利用MMControl控件播放AVI动画 64
实例030  满屏播放AVI文件 65
实例031  视频画中画 66
实例032  宣传视频 66
2.2  资源提取与画面捕捉 68
实例033  提取FLV文件中视频资源 68
实例034  USB摄像头视频捕捉 70
实例035  在线视频转播 72
实例036  屏幕录像 73
第2篇  数据库应用
第3章  SQL查询与对象的应用 80
3.1  SELECT子句的使用 81
实例037  查询特定列数据 81
实例038  在查询时使用列别名 83
实例039  对列进行计算 85
实例040  使用函数设置条件 87
3.2  查询常量 88
实例041  数值型常量查询 88
实例042  字符型常量查询 90
实例043  日期型常量查询 92
实例044  逻辑型常量查询 93
实例045  查询空数据 95
3.3  查询控件 96
实例046  查询控件中的字符型数据 96
实例047  查询控件中的数值型数据 99
实例048  查询控件中的日期型数据 101
实例049  将控件作为字段、操作符和内容进行
查询 102
3.4  查询变量 105
实例050  利用变量查询字符串数据 105
实例051  利用变量查询数值型数据 107
实例052  利用变量查询日期型数据 108
3.5  模式查询 110
实例053  在Jet SQL语法中使用通配符 110
实例054  SQL Server中用通配符“%”进行
查询 112
实例055  SQL Server中用通配符“[]”进行
查询 113
实例056  SQL Server中用通配符“_”进行
查询 114
实例057  SQL Server中用通配符“[^]”进行
查询 116
3.6  限制结果查询 117
实例058  查询前10名数据 117
实例059  查询后10名数据 119
实例060  取出数据统计结果前10名数据 120
实例061  查询前40%的数据 122
3.7  周期、日期查询 123
实例062  查询指定日期的数据 123
实例063  查询指定时间段的数据 124
实例064  按月查询数据 127
实例065  只输出日期时间型数据的日期部分 129
实例066  在不同数据环境中进行日期查询 129
3.8  大小比较、逻辑查询 131
实例067  查询数据大于指定条件的数据 131
实例068  NOT与谓词进行组合条件的查询 133
实例069  查询时不显示重复记录 135
实例070  列出数据中的重复记录和记录条数 136
3.9  排序、分组统计 138
实例071  对数据进行降序查询 138
实例072  对数据进行多条件排序 139
实例073  对统计结果进行排序 141
实例074  数据分组统计（单列） 142
实例075  按仓库分组统计图书库存（多列） 144
实例076  多表分组统计 145
实例077  使用COMPUTE和COMPUTE BY
子句 147
实例078  GROUP BY子句进行分组查询的注意
事项 149
实例079  GROUP BY与HAVING一起使用 149
实例080  将查询结果进行分组小计 150
实例081  利用HAVING语句过滤分组数据 151
实例082  HAVING语句应用在多表查询中 152
3.10  聚集函数 154
实例083  利用聚集函数SUM()对销售额进行
汇总 154
实例084  利用聚集函数AVG()求某班学生的
平均年龄 156
实例085  利用聚集函数MIN()求销售额、利润
最少的商品 158
实例086  利用聚集函数MAX()求月销售额完成
最多的员工 159
实例087  利用聚集函数COUNT()求日销售额
大于某值的商品数 161
实例088  利用聚集函数First()或Last()求数据表
中第一条或最后一条记录 163
3.11  多表查询（连接查询） 164
实例089  利用FROM子句进行多表查询 164
实例090  使用表的别名 166
3.12  嵌套查询 168
实例091  简单嵌套查询 168
实例092  复杂嵌套查询 169
实例093  嵌套查询在查询统计中的应用 171
3.13  子查询 173
实例094  把子查询用作派生的表 173
实例095  把子查询用作表达式 175
实例096  在Update语句中应用子查询 176
3.14  联合语句UNION 178
实例097  使用联合查询 178
实例098  多表联合查询 179
实例099  对联合查询后的结果进行排序 181
3.15  内连接查询 182
实例100  简单内连接查询 182
实例101  复杂内连接查询 184
实例102  使用内连接选择一个表与另一个表中
行相关的所有行 185
3.16  外连接查询 187
实例103  Left Outer Join查询 187
实例104  Right Outer Join查询 188
实例105  使用外连接进行多表联合查询 190
3.17  利用IN进行查询 192
实例106  使用IN引入子查询限定查询范围 192
实例107  用IN查询表中的记录信息 193
3.18  交叉表查询 195
实例108  用CASE实现交叉表查询 195
实例109  利用TRANSFORM分析数据 196
实例110  利用TRANSFORM动态分析数据 198
实例111  静态交叉表（SQL Server 2000） 200
实例112  动态交叉表（SQL Server 2000） 202
实例113  利用Pivot实现交叉表查询
（SQL Server 2005） 204
实例114  用Unpivot实现交叉表查询
（SQL Server 2005） 205
3.19  透视图表查询 207
实例115  动态透视表 207
实例116  透视图 211
3.20  函数查询 214
实例117  在查询语句中使用格式化函数 214
实例118  在查询语句中使用字符串函数 215
实例119  在查询中使用日期函数 217
3.21  添加数据 218
实例120  为指定的列插入值 218
实例121  为所有列插入值 219
实例122  批量添加数据 220
实例123  INSERT语句和完整性约束 222
实例124  利用多个表中的字段创建新记录集 223
3.22  修改数据 224
实例125  修改个别行中的个别列 224
实例126  修改单个行的多个列 226
实例127  修改所有行中的某一列 227
实例128  修改数据时使用子查询 228
实例129  修改数据时使用内连接 230
实例130  在修改数据时使用函数 231
3.23  删除数据 232
实例131  用DELETE子句删除部分数据 232
实例132  删除表中所有数据 234
实例133  带有子查询的DELETE语句 235
实例134  删除表中多余的重复行数据 235
实例135  对数据库数据进行局部删除 236
3.24  视图 237
实例136  动态创建视图 237
实例137  通过视图更改数据 238
实例138  删除视图 240
3.25  触发器 241
实例139  创建触发器 241
实例140  在程序中使用触发器 243
实例141  触发器的嵌套使用 244
3.26  存储过程 246
实例142  创建存储过程 246
实例143  删除存储过程 247
实例144  在程序中使用存储过程 248
实例145  加密存储过程 250
3.27  其他应用 251
实例146  在VB中执行事务 251
实例147  在查询中使用游标 253
实例148  列出网络中所有的SQL Server服务器 255
实例149  利用Execute执行SQL语句 256
实例150  解决查询过程中字段类型不同的问题 257
实例151  把查询结果生成表 258
实例152  追加查询结果到已存在的表中 259
实例153  用VB实现SQL Server 2000存储过程
调用 260
实例154  动态创建Access数据库及数据表 263
实例155  拼音简码查询 267
实例156  在程序中应用视图 269
第4章  数据库访问与显示 271
4.1  连接Access数据库 272
实例157  使用ADO连接Access 2003数据库 272
实例158  使用ADO连接Access 2007数据库 275
实例159  使用ADO连接加密的Access 2000
数据库 276
实例160  自动识别Access 2000数据库路径 277
实例161  连接网络上共享的Access 2000
数据库 279
4.2  连接SQL Server数据库 281
实例162  使用ODBC DSN连接SQL Server
数据库 281
实例163  使用ODBC非DSN连接SQL Server
数据库 283
实例164  使用OLE DB连接SQL Server
数据库 285
4.3  连接其他数据库 286
实例165  连接Excel 286
实例166  连接Excel 2007 287
实例167  连接Oracle数据库 288
实例168  数据库通用模块 290
4.4  数据库结构的读取与修改 294
实例169  读取Access数据库结构 294
实例170  读取SQL Server数据库结构 296
4.5  数据添加 301
实例171  利用数据绑定控件增加新记录 301
实例172  利用数据对象增加新记录 304
实例173  利用SQL语句增加新记录 307
实例174  利用表格批量增加记录 310
4.6  图片存取技术 316
实例175  使用存取文件名的方法存取图片 316
实例176  使用Stream对象向数据库存入图片 320
4.7  数据修改 323
实例177  利用数据绑定控件修改数据 323
实例178  利用数据对象修改数据 325
实例179  利用SQL语句修改数据 327
实例180  删除添加法修改数据 330
4.8  数据保存前判断 332
实例181  判断输入数据是否符合要求 332
实例182  批量数据保存前的判断 335
实例183  防止数据保存时出现运行时错误 338
4.9  数据删除 340
实例184  删除表格中指定的记录 340
实例185  利用SQL语句删除数据 341
4.10  数据记录 343
实例186  判断数据记录总数 343
实例187  判断数据记录位置 344
实例188  移动记录 345
4.11  数据控件相关应用 347
实例189  动态设置ADO控件的属性 347
实例190  使用DataCombo和DataList控件显示
关系表中的数据 348
实例191  动态设置DataGrid控件的数据源 350
实例192  用代码设置DataGrid控件的列标头 350
实例193  快速将DataGrid控件中的数据显示在
文本框中 351
实例194  在DataGrid控件中实现下拉列表 353
实例195  使用代码格式化DataGrid控件中的
数据 354
实例196  根据数据字段类型自动格式化DataGrid
表格中的数据 355
实例197  使DataGrid控件刷新前后记录的位置
保持不变 356
实例198  隐藏MSHFlexGrid控件的行和列 357
实例199  动态调整MSHFlexGrid表格中字段的
顺序 358
实例200  提高数据输入速度 359
实例201  设置奇、偶行颜色不同的表格 361
实例202  在MSHFlexGrid控件中显示图片 362
实例203  利用MSHFlexGrid控件的排序功能对
数据排序 363
实例204  合并MSHFlexGrid控件中的数据 364
实例205  利用MSHFlexGrid控件的合并功能制作
特色报表 366
实例206  动态增加行 367
4.12  二进制数据处理技术 369
实例207  使用存取文件路径的方法存取图片 369
实例208  使用AppendChunk方法将二进制文件
存入数据库 370
实例209  使用Stream对象将二进制文件存入
数据库 372
实例210  使用GetChunk方法导出数据库中的
二进制文件 374
实例211  用Stream对象将数据库中的二进制
数据导出 376
实例212  向SQL Server数据库存入图片 377
实例213  读取并打开数据库中存储的文本文件 379
实例214  读取并打开数据库中存储的图片 380
实例215  读取并打开数据库中存储的多媒体
文件 382
实例216  将SQL Server数据库中的image数据
类型的图形文件导出为.bmp文件 383
4.13  数据库和其他文件的转换 384
实例217  将硬盘文件目录转为数据库数据 384
实例218  将数据库文件转换为文本文件 386
实例219  将数据库数据传给Excel 388
实例220  将Excel数据传给Access数据库 389
实例221  将数据库数据传给Word 391
实例222  将SQL Server数据库中的表插入到
Access数据库 392
实例223  SQL Server导入Access时，如何处理
decimal类型字段引起的错误 393
实例224  将Access数据库转换为SQL Server 2005
数据库 394
实例225  多种数据库与Excel的转换 395
4.14  数据库结构的创建与读取技巧 399
实例226  使用DAO创建Access数据库 399
实例227  使用ADOX动态创建Access数据库
和表 400
实例228  获得Access数据库中的所有表 402
实例229  使用代码创建SQL Server数据库、表
和字段 403
实例230  获取SQL Server服务器 404
实例231  获取SQL Server数据库 405
实例232  获取SQL Server数据表 406
实例233  获取字段并将其添加到下拉列表框中 407
实例234  判断一个表是否存在 408
4.15  数据库安全 410
实例235  加密密码字符串 410
实例236  使用DAO方法创建加密数据库 411
实例237  锁定数据库中的表 412
实例238  为数据库上锁 413
实例239  改变Access 2000数据库头文件加密
数据库 415
实例240  改变扩展名保护Access数据库 416
实例241  防止SQL注入式攻击 417
4.16  数据维护 418
实例242  备份Access数据库 418
实例243  SQL Server数据库的备份与恢复 421
实例244  定时备份数据 423
实例245  修复Access数据库 425
实例246  压缩数据库文件 426
实例247  在VB中附加SQL Server数据库 428
实例248  在VB中批量附加SQL Server数据库 429
实例249  在VB中分离SQL Server数据库 430
实例250  动态创建Access数据库及数据表 432
实例251  SQL Server对象导出器 436
实例252  通过触发器对数据进行增删改 442
实例253  通过存储过程对商品信息进行管理 446
实例254  动态创建SQL Server数据库及数据表 451
4.17  连接Paradox、FoxPro、Sybase
数据库 454
实例255  使用ADO控件访问Paradox数据库 454
实例256  使用ADO控件访问DBase/FoxPro
数据库 456
实例257  使用ADO控件访问Sybase数据库 457
4.18  管理系统开发相关 459
实例258  带图像列表的系统登录程序 459
实例259  权限设置程序 462
实例260  系统初始化 464
4.19  数据显示技术 466
实例261  分页显示数据 466
实例262  动态查询模块 469
实例263  利用二进制数据检索用户头像 475
实例264  利用MSHFlexGrid控件实现主从显示 478
实例265  利用透视表分析图书销售情况 479
第3篇  网络技术与Web开发
第5章  网络技术与应用 482
5.1  网络信息的获取与设置 483
实例266  获得计算机名称和工作组 483
实例267  获取本机所有IP地址 485
实例268  获取本机IP地址以及计算机名称 486
实例269  获得局域网中的计算机名称和IP地址 488
实例270  利用Winsock控件获得本机名称 490
实例271  利用Winsock控件获得本机的IP
地址 491
实例272  从注册表中获取IP地址 492
实例273  获得和设置计算机IP信息 493
实例274  获取网卡的物理地址 495
5.2  资源共享 497
实例275  映射网络驱动器 497
实例276  获得网上共享资源 498
实例277  点对点文件传输 500
实例278  局域网复制文件 503
实例279  采用TCP协议传输文件 504
实例280  确定与服务器相连的打印机 506
实例281  定时网络共享控制 508
实例282  保证联网计算机时间同步 510
5.3  邮件发送 511
实例283  邮件接收程序 511
实例284  邮件群发程序 513
实例285  发送电子邮件附件 515
实例286  邮件数据管理程序 516
实例287  利用JMail收发邮件 518
实例288  获取已安装的邮件发送程序名称 522
5.4  文件上传与下载 523
实例289  用Internet Transfer编写FTP程序 523
实例290  利用VB实现软件下载 525
实例291  使用API函数下载网络文件 526
实例292  VB中利用XMLHTTP下载远程
文件 528
实例293  程序在局域网上自动更新 529
实例294  自我升级程序 531
5.5  网络其他相关 533
实例295  远程控制局域网计算机 533
实例296  网络状态监视 535
实例297  网速监控 538
实例298  获得拨号网络的列表 540
实例299  局域网信使服务 542
实例300  聊天程序 543
实例301  提高XP下ADSL网速 544
实例302  网上调查 545
实例303  判断输入的IP地址是否符合要求 548
第6章  网络Web开发 550
6.1  网页信息的获取 551
实例304  QQ通信窗口的调用 551
实例305  获取WebBrowser控件句柄 552
实例306  获取网页中JavaScript全局变量值 553
实例307  获取HTTP头部信息 555
实例308  获得网页中的所有超链接 556
实例309  提取网页源码 558
实例310  使用记事本查看网页源文件 559
6.2  网页收藏与管理 560
实例311  加入收藏夹 560
实例312  设置IE的主页 561
实例313  网站网址导航程序 562
实例314  清除上网历史记录 563
实例315  创建网页快捷方式 564
实例316  将指定网址加入收藏夹 565
实例317  修改Internet Explorer标题栏 566
实例318  网站违禁数据检索程序 567
实例319  批量获取网页内容到数据库 568
6.3  Internet Explorer控制 569
实例320  网页另存为 569
实例321  网页内容全选 571
实例322  Internet Explorer页面设置 572
实例323  运行Internet Explorer并获取事件 573
实例324  判断一个文件是否在IE的缓存中 574
第4篇  安全防护与入侵破解
第7章  加密、安全与软件注册 578
7.1  常用加密算法 579
实例325  使用MD5算法对密码进行加密 579
实例326  RC4加密 582
实例327  RSA加密 583
实例328  生成DES加密dll 585
实例329  SHA1加密 589
实例330  恺撒加密 593
7.2  软件注册与安全防护 595
实例331  SQL密码扫描 595
实例332  利用VB实现杀毒软件功能 597
实例333  计算机锁定程序 601
实例334  明码序列号保护 604
实例335  非明码序列号保护 605
实例336  监控计算机TCP/IP端口 607
实例337  关闭445端口 609
实例338  防止SYN洪水攻击 610
实例339  SQL注入攻击 611
实例340  限定计算机使用时间 612
实例341  限定用户使用计算机 613
实例342  加密文件夹 614
实例343  利用磁盘的序列号进行软件加密 615
实例344  利用网卡MAC地址进行软件加密 617
实例345  限定输入错误密码次数 619
实例346  制作软件光盘版 620
实例347  对Access数据库加密/解密 621
第8章  黑客入侵与破解 623
8.1  端口入侵 624
实例348  扫描远程计算机开放服务 624
实例349  3389端口入侵 626
实例350  IPC$密码暴力破解 627
实例351  FTP弱口令扫描 629
实例352  SQL Server 弱口令扫描 631
实例353  IP扫描器 632
实例354  代理协议的穿透 635
8.2  网页探秘 637
实例355  自动提交网页表单 637
实例356  网页弱密码的测试 638
实例357  网页中验证码的识别 640
实例358  获取FLV真实播放地址 641
实例359  躲避Session验证 642
实例360  采用Cookie欺骗躲避验证 643
8.3  病毒与外挂 645
实例361  程序跟随系统启动 645
实例362  更改IE首页 646
实例363  线程注入 646
实例364  VBS病毒的制作 650
实例365  破解补丁的制作 651
实例366  开启磁盘分区共享 651
实例367  提升用户权限 652
实例368  AUTORUN病毒原理 653
实例369  外挂与钩子 654
第5篇  打印技术与报表图表
第9章  打印技术的应用 658
9.1  打印各种文字 659
实例370  打印简单的字符串 659
实例371  设置打印字体、字号等 659
实例372  打印彩色文字 661
实例373  文字竖排打印效果 661
实例374  使打印的超长文本自动换行 662
实例375  根据纸张大小和字高计算每页打印
行数 664
9.2  打印窗体、控件和图形 665
实例376  打印窗体 665
实例377  打印窗体文本 666
实例378  打印ListView控件中的内容 669
实例379  打印RichTextBox控件中的内容 670
实例380  打印浏览器内容 672
实例381  打印图片 673
实例382  打印简历 675
实例383  打印图表 677
实例384  可批量打印文件夹照片的程序 678
9.3  连续、分页和分栏打印 680
实例385  换页打印 680
实例386  动态分页打印 681
实例387  分栏打印 688
实例388  连续打印 691
实例389  可调整列宽的打印 695
9.4  证书、单据特色打印 696
实例390  打印汇款单 696
实例391  打印信封标签 698
实例392  批量打印工作证 700
实例393  批量打印证书 702
实例394  库存盘点单打印 703
实例395  连续纸销售单打印 707
实例396  批量打印Access数据库中的数据 710
实例397  打印SQL Server 2000数据库中的数据 711
实例398  打印连续号码的标签 713
实例399  证书套打 714
实例400  设计条形码打印程序 716
实例401  批量打印条形码 717
实例402  批量打印Word文档 720
实例403  批量打印Excel表格 721
实例404  编写银行取款排号小票打印程序 722
实例405  打印订单汇总 724
第10章  报表的创建 727
10.1  数据环境与报表设计器 728
实例406  简单报表 728
实例407  设置DataReport的报表宽度和纸宽 733
实例408  预览DataReport报表 734
实例409  创建图书数据报表 735
实例410  向报表中添加日期、时间和页码 738
实例411  创建客房信息纵栏式报表 739
实例412  分组统计报表 741
实例413  主明细报表 744
实例414  导出报表为HTML文件 749
实例415  利用Command执行动作查询语句 751
实例416  在DataReport中使用带参数的SQL
语句选择数据 752
10.2  水晶报表的创建 753
实例417  安装水晶报表Crystal Reports 753
实例418  使用Crystal Reports创建一个报表 754
实例419  设置横向页面 757
实例420  使用VB程序打印水晶报表 757
实例421  动态设置报表路径 758
实例422  使用Crystal Reports设计商用报表 759
第11章  图表的创建 762
11.1  简单图表 763
实例423  设置MSChart控件的Data属性创建
图表 763
实例424  设置MSChart控件的DataSource属性
创建图表 764
实例425  设置MSChart控件的ChartData属性
创建图表 765
实例426  获取数据时缺少字段的问题 766
实例427  对图表数据进行打印 767
实例428  使表格数据图表动态调整 768
实例429  利用Transform制作“透视表” 770
11.2  图表样式与外观 771
实例430  向图表中添加或修改标签 771
实例431  修改图表的字体和颜色 773
实例432  动态设置图表区字体 774
实例433  动态填充图表元素的颜色 775
实例434  动态改变图表的比例 777
实例435  设置和改变图表的注脚 778
实例436  动态修改图表的图例样式 778
11.3  图表的综合应用 779
实例437  将数组中的数据利用图表分析 779
实例438  在多个关系表中分析数据 780
实例439  对某一行数据进行分析 781
实例440  对分组统计数据进行分析 783
实例441  利用三维图表分析数据 784
实例442  利用饼型图分析产品市场占有率 785
实例443  利用饼型图分析公司男女比率 786
实例444  利用图表分析企业进货、销售和库存 787
实例445  利用折线图分析商品的价格走势 788
实例446  网站人气指数曲线分析 789
实例447  利用柱型图分析房产销售情况 790
实例448  利用区域图对比分析员工业绩 791
实例449  利用组合图分析高级轿车的销售情况 793
实例450  数据与图表互动 794
实例451  利用MSChart控件对生产指标进行
统计分析 796
第6篇  程序控制与磁盘管理
第12章  程序应用控制 804
12.1  调用系统工具 805
实例452  调用画图程序 805
实例453  调用记事本 806
实例454  调用Windows计算器程序 807
实例455  设置输入法顺序 808
12.2  调用Office 810
实例456  调用OutLook管理邮件 810
实例457  调用Word统计字数 811
实例458  批量打开Word文档 813
实例459  调用PowerPoint电子文档 814
实例460  显示Office助手 815
12.3  时钟控制 817
实例461  倒计时程序 817
实例462  设计一个定时闹钟程序 819
12.4  其他应用 820
实例463  在VB中调用帮助文件 820
实例464  调用文件时具有wait功能 822
实例465  禁止用户复制文字 823
实例466  调用Word实现实时公告 824
实例467  VB菜单提取器 826
特别提醒：
亲爱的读者朋友，由于近期纸张价格和印制成本大幅上涨，为不增加读者朋友的负担，又不减少书的内容，本书以下章节内容不得不放在配书光盘中，由此给您带来了不便，在此深表歉意。
第13章  磁盘管理技术 832
（本章内容在配书光盘中）
13.1  获取磁盘信息 833
实例468  获取磁盘的剩余空间 833
实例469  获取逻辑分区信息 834
实例470  获取物理硬盘个数和逻辑分区个数 835
实例471  获取物理硬盘信息 836
实例472  获取磁盘信息 838
实例473  获取磁盘的总空间 840
13.2  获取卷标信息 841
实例474  利用FSO获取计算机中所有驱动器的
卷标 841
实例475  使用API获取计算机中所有的驱动器
名称 842
实例476  获得网络驱动器名称 844
实例477  获取分区卷标的简单方法 846
实例478  利用FSO获取驱动器的卷标 847
13.3  磁盘操作 848
实例479  设置磁盘卷标 848
实例480  格式化磁盘 850
实例481  整理磁盘碎片 851
实例482  从FAT32转换为NTFS 852
实例483  隐藏磁盘分区 853
实例484  显示被隐藏的磁盘分区 855
实例485  更改磁盘分区号 856
13.4  磁盘监控与分析 857
实例486  使用FSO判断驱动器的类型 857
实例487  使用API函数判断驱动器的类型 858
实例488  监视硬盘 860
实例489  判断光驱是否有光盘 862
实例490  判断是否插入存储器 863
实例491  检测软驱是否有软盘 864
第7篇  系统与硬件设备
第14章  注册表 868
（本章内容在配书光盘中）
14.1  IE优化与个性化 869
实例492  禁止更改“Internet选项”中的“历史
记录”项 869
实例493  禁止更改“Internet临时文件”项 870
实例494  禁止更改“辅助功能”选项 872
实例495  禁止更改“语言”项 874
实例496  禁止更改“主页”项 876
实例497  禁止更改“字体”项 878
实例498  隐藏“安全”选项卡 880
实例499  隐藏“常规”选项卡 881
实例500  隐藏“程序”选项卡 883
实例501  隐藏“高级”选项卡 885
实例502  隐藏“连接”选项卡 886
实例503  隐藏“内容”选项卡 888
14.2  桌面“开始”菜单优化与个性化 890
实例504  更改桌面图标之间的垂直间距 890
实例505  去除快捷方式图标中的小箭头 891
实例506  删除提示信息 892
实例507  隐藏“任务栏和[开始]菜单”选项 894
实例508  隐藏“我的文档”选项 895
实例509  隐藏“帮助和支持”选项 897
实例510  隐藏“关闭系统”选项 899
实例511  隐藏“搜索”选项 900
实例512  隐藏“文档”选项 902
实例513  隐藏“运行”选项 903
实例514  隐藏“控制面板”、“网络连接”和
“打印机和传真”3个选项 905
实例515  隐藏“网上邻居”图标 907
实例516  隐藏“我的文档”图标 908
实例517  隐藏桌面图标 910
实例518  在“开始”菜单中加入“注销”
选项 912
14.3  系统优化与设置 913
实例519  隐藏任务栏中的时钟 913
实例520  禁止任务栏的右键菜单 915
实例521  禁止改变任务栏的停靠位置 916
实例522  隐藏“显示属性”对话框的“外观”
选项卡 917
实例523  隐藏“显示属性”对话框的“屏幕保护”
选项卡 918
实例524  隐藏“显示属性”对话框的“桌面”
选项卡 919
实例525  隐藏“显示属性”对话框的“设置”
选项卡 920
实例526  隐藏控制面板的“声音与音频设备”
选项 921
第15章  系统信息与WMI查询 923
（本章内容在配书光盘中）
15.1  获取CPU信息 924
实例527  获取计算机CPU版本信息 924
实例528  获取CPU编号 925
实例529  获取计算机CPU制造商名称 925
实例530  获取计算机CPU的最大时钟频率 926
实例531  获取CPU二级缓存尺寸 927
实例532  获取计算机CPU外部频率 928
实例533  获取计算机CPU当前时钟频率 929
实例534  获取计算机CPU当前电压 930
实例535  获取计算机CPU当前使用率 930
实例536  获取计算机CPU地址宽度 931
15.2  获取显示设备信息 932
实例537  获取显示设备的PNPDeviceID 932
实例538  获取显示设备的名称 933
实例539  获取显示设备的驱动版本号 934
实例540  获取显示设备的驱动程序文件 935
实例541  获取显示设备的当前颜色值 936
实例542  获取显示设备的显示处理器 937
实例543  获取显示设备的最小刷新率 938
实例544  获取显示设备的最大刷新率 939
实例545  获取显示设备的当前垂直分辨率 940
实例546  获取显示设备的当前水平分辨率 941
实例547  获取显示设备的当前显示模式 941
15.3  获取声音设备信息 942
实例548  获取声音设备的产品名称 942
实例549  获取声音设备的PNPDeviceID 943
实例550  获取声音设备的制造商名称 944
15.4  获取及设置网卡信息 945
实例551  获取有效网卡的名称 945
实例552  显示网卡信息 946
实例553  设置网卡IP地址、子网掩码、网关及
DNS 947
实例554  获取网卡MAC物理地址 948
15.5  获取系统驱动程序的描述信息 949
实例555  获取系统驱动程序的描述信息 949
实例556  获取系统正在运行的驱动程序 950
实例557  获取系统服务程序的描述信息 951
实例558  获取系统服务程序的程序文件 952
实例559  获取系统正在运行的服务程序 953
实例560  获取系统已经停止的服务程序 954
实例561  获取后台已经停止的驱动程序 955
15.6  获取操作系统信息 956
实例562  获取操作系统的启动时间 956
实例563  获取操作系统的安装日期 957
实例564  获取Windows账户和组信息 958
15.7  获取主板信息 959
实例565  获取主板BIOS信息 959
实例566  获取主板制造商名称和型号 960
15.8  网络共享管理 960
实例567  创建网络共享 960
实例568  删除网络共享 961
实例569  枚举网络共享 962
15.9  WMI的其他应用 963
实例570  备份程序事件日志 963
实例571  获取当前打印队列信息 964
实例572  枚举快捷方式文件 965
实例573  枚举Win32_Service所有属性名称 966
实例574  使用WMI方法启动记事本程序 967
实例575  获取计算机的数据宽度 968
实例576  获取计算机产品名称 968
第16章  硬件相关技术 970
（本章内容在配书光盘中）
16.1  串口控制 971
实例577  通过串口传递数据 971
实例578  通过串口控制对方计算机 973
16.2  加密狗 974
实例579  将密码写入加密狗 974
实例580  使用加密狗设计加密程序 976
16.3  IC卡的应用 977
实例581  向IC卡中写入数据 977
实例582  读取IC卡中的数据 979
实例583  利用IC卡制作考勤程序 981
16.4  监控 983
实例584  利用简易摄像头编写监控程序 983
实例585  编写监控录像程序 984
实例586  定时监控程序 986
16.5  扫描、条码 987
实例587  利用条形码扫描器销售 987
实例588  设计条形码打印程序 989
16.6  POS控制 991
实例589  设计钱箱控制程序 991
实例590  设计扫描仪控制程序 992
实例591  设计发票机控制程序 993
实例592  客户来电支持系统 995
实例593  利用手机群发短信 997
实例594  利用神龙卡制作练歌房程序 999
实例595  通过语音卡实现电话的拨打与接听 1000
实例596  视频监控 1006
实例597  使用ID卡读卡器获取持卡人信息 1012
实例598  员工指纹考勤系统 1015
实例599  使用短信猫发送短信 1021
实例600  通过短信猫实现短信自动回复 1024