第9章 Windows相关技术 337
9.1 磁盘信息 338
0520 获取驱动器的卷标 338
0521 检测软驱是否有软盘 339
0522 判断是否插入存储器 339
0523 判断光驱是否有光盘 339
0524 判断驱动器类型 340
0525 获取磁盘序列号 341
0526 获取磁盘空间信息 342
9.2 磁盘操作 343
0527 格式化磁盘 343
0528 关闭磁盘共享 343
0529 设置磁盘卷标 343
0530 磁盘碎片整理 344
0531 从FAT32转换为NTFS 344
0532 隐藏磁盘分区 345
0533 显示被隐藏的磁盘分区 345
0534 如何更改分区号 346
0535 如何监视硬盘 346
9.3 系统控制与调用 347
0536 调用外部程序的方法 347
0537 调用创建快捷方式向导 348
0538 访问启动控制面板中的各项 348
0539 控制光驱的弹开与关闭 349
0540 实现关闭、重启和注销计算机 349
0541 关闭和打开显示器 350
0542 打开和关闭屏幕保护 350
0543 关闭当前输入法 350
0544 程序发出提示音 351
0545 列举系统中的可执行文件 351
9.4 应用程序操作 352
0546 如何确定应用程序没有响应 352
0547 检索任务管理器中的任务列表 353
0548 判断某个程序是否运行 353
0549 设计具有插件功能的应用程序 355
0550 怎样在程序中执行DOS命令 359
0551 修改其他进程中窗口的标题 359
0552 如何设计换肤程序 360
0553 PE档案格式分析 364
0554 修改应用程序图标 365
0555 列举应用程序使用的dll文件 368
0556 调用具有命令行参数的应用程序 369
0557 在程序中调用一个子进程直到其结束 371
0558 提取并保存应用程序图标 371
9.5 系统工具 373
0559 为程序添加快捷方式 373
0560 用列表显示系统正在运行的程序 375
0561 如何获得毫秒级时间 376
0562 注册和卸载组件 376
0563 清空回收站 377
0564 如何在程序中显示文件属性对话框 377
9.6 桌面相关 377
0565 隐藏和显示桌面文件 377
0566 隐藏和显示开始按钮 378
0567 隐藏和显示Windows任务栏 378
0568 判断屏幕保护程序是否在运行 379
0569 判断系统是否使用大字体 379
0570 获取任务栏属性 379
0571 获取任务栏窗口句柄 379
0572 隐藏任务栏时钟 380
0573 改变桌面背景颜色 380
0574 获取桌面列表视图句柄 380
9.7 系统信息 380
0575 获取CPU ID值 380
0576 获取CPU时钟频率 381
0577 获得Windows和System的路径 381
0578 获取特殊文件夹路径 382
0579 检测系统启动模式 382
0580 判断操作系统类型 383
0581 获取当前系统的运行时间 383
0582 如何获取Windows 2000系统启动时间 384
0583 获取处理器信息 385
0584 通过内存映射实现传送数据 385
0585 检测是否安装声卡 387
0586 获取当前用户名 387
0587 获取系统环境变量 387
0588 修改计算机名称 388
0589 获取当前屏幕颜色质量 388
0590 获得当前屏幕的分辨率 388
9.8 进程与线程 389
0591 如何使用TLS 389
0592 创建线程 389
0593 创建用户界面线程 390
0594 终止线程的方法 390
0595 使进程处于睡眠状态 391
0596 启动记事本并控制其关闭 391
0597 创建闪屏线程 392
0598 利用互斥对象实现线程同步 393
0599 利用临界区实现线程同步 395
0600 利用事件对象实现线程同步 396
0601 用信号量实现线程同步 398
0602 挂起系统 399
0603 调用记事本程序并暂停其运行 399
0604 等待打开的记事本程序关闭 400
0605 禁止程序重复运行 400
0606 在Visual C++与Delphi间实现对象共享 401
9.9 消息 402
0607 如何自定义消息 402
0608 如何向Windows注册消息 402
0609 PostMessage和SendMessage函数的区别 402
0610 利用WM_COPYDATA消息实现进程间数据传递 403
9.10 剪贴板 404
0611 列举剪贴板中数据类型 404
0612 监视剪贴板复制过的内容 405
0613 通过剪贴板传递全局数据 406
9.11 鼠标键盘 407
0614 交换鼠标左右键 407
0615 设置鼠标双击的时间间隔 407
0616 获得鼠标键数 407
0617 获取鼠标下窗体句柄 407
0618 模拟鼠标单击按钮 409
0619 在程序中添加快捷键 410
0620 在对话框中使用加速键 411
0621 处理鼠标滚轮消息 411
0622 获取键盘按键 412
0623 获取键盘类型及功能号 412
0624 控制键盘指示灯 413
9.12 动态链接库与钩子 414
0625 从动态库中获取位图资源 414
0626 屏蔽键盘POWER键 415
0627 屏蔽键盘WIN键 415
0628 禁止使用 Alt+F4 键来关闭窗体 416
0629 枚举模块中的所有图标 417
0630 使用模块对话框资源 418
0631 替换应用程序中对话框资源 419
0632 可导出的动态链接库函数 420
0633 动态链接库动态加载 420
1