WINDOWS高级编程指南(第三版)

WINDOWS高级编程指南(第三版) - 图书城

增改描述、封面图片

作者:
[美]JEFFREY RICHTER 译:王书洪 刘光明
ISBN:
73020332285 , 73020332285
出版社:
出版日期:
1999-6-1
定价:
99.00
购买:
读过这本书吗?
最近在读 读过 想读 还不熟悉
我的评价:   
图书城书列:
加入到博客或社交网站:
我来评论这本书:
标题:
评价:
内容:
内容提要:
本书以详尽资料和大量的范例深入讨论了有关32位Windows编程的高级问题,包括进程和线程的管理、Win 32的内存管理、消息处理、动态链接库、文件系统和设备输入输出、结构化异常处理、Unicode等,并重点讨论了Windows 95和Windows NT在实现上的不同之处,其中包含了大量的编程技巧。本书可供高等院校计算机专业的师生和广大的计算机编程人员使用。
目录:
第0章  绪论

0.1  关于应用程序范例
0.1.1  用C语言编写程序
0.1.2  Message Cracker Macros(消息拆析宏)
0.1.3  有关16位Windows编程的知识
0.1.4  在Windows 95下运行应用程序范例
0.1.5  不相关代码
0.1.6  范例应用程序的独立性
0.1.7  STRICT编译
0.1.8  错误检查
0.1.9  没有错误
0.1.10  测试平台和环境
0.1.11  Unicode
0.2  安装范例程序
0.2.1  配套的CD-ROM盘

第1章  WIN 32 API和支持它的平台

1.1  梦想一下:Win 32 API
1.2  Win 32s
1.3  Windows NT
1.4  Windows 95
1.5  Windows CE
1.6  现实:Win 32 API

第2章  内核对象

2.1  什么是内核对象
2.1.1  使用计数
2.1.2  安全
2.2  进程的内核对象句柄表
2.2.1  创建内核对象
2.2.2  关闭内核对象
2.3  在进程间共享内核对象
2.3.1  对象句柄继承
2.3.2  改变句柄标志
2.3.3  命名对象
2.3.4  复制对象句柄

第3章  进程

3.1  编写第一个Win 32应用程序
3.1.1  进程的实例句柄
3.1.2  进程的前一个实例的句柄
3.1.3  进程的命令行
3.1.4  进程的环境变量
3.1.5  进程的错误模式
3.1.6  进程的当前驱动器和目录
3.1.7  系统版本
3.2  CreateProcess函数
3.2.1  lpszApplicationName和lpszCommandline
3.2.2  lpsaProcess,lpsaThread和fInheritHandles
3.2.3  fdwCreate
3.2.4  lpvEnvironment
3.2.5  lpszCurDir
3.2.6  lpsiStartInfo
3.2.7  lppiProcInfo
3.3  终止进程
3.3.1  ExitProcess函数
3.3.2  Terminate Process函数
3.3.3  进程中的所有线程结束了
3.3.4  进程终结时发生的事情
3.4   子进程
3.4.1  运行分离的子进程

第4章  线程

4.1  何时创建线程
4.2  何时不用创建线程
4.3  编写第一个线程函数
4.3.1  线程的栈
4.3.2  线程的CONTEXT结构
4.3.3  线程的执行时间
4.4  CreateThread函数
4.4.1  lpsa
4.4.2  cbstack
4.4.3  lpStartAddr和lpvThreadParm
4.4.4  fdwCreate
4.4.5  lpIDThread
4.5  终止线程
4.5.1  Exit Thread函数
4.5.2  TerminateThread函数
4.5.3  进程终结
4.5.4  线程终结时的情况
4.6  识别自己的身份
4.7  系统如何调度线程
4.7.1  使用Win 32 API怎样赋优先级
4.7.2  改变进程的优先级类
4.7.3  设定线程的相对优先级
4.7.4  挂起和恢复线程
4.8  系统内部情况
4.9  进程、线程和C运行时库
4.9.1  应避免使用的C运行时函数

第5章  Win 32内存结构

5.1  虚地址空间
5.1.1  Windows 95如何划分进程的地址空间
5.1.2  Windows NT如何划分进程的地址空间
5.2  地址空间中的区域
5.3  在区域内提交物理存储
5.4  物理存储
5.4.1  不包含在页面文件中的物理存储
5.5  保护属性
5.5.1  写拷贝访问
5.5.2  特殊的访问保护属性标志
5.6  小结
5.6.1  区域的内部
5.7  Windows 95的地址空间的不同

第6章  虚拟内存

6.1  系统信息
6.1.1  系统信息范例应用程序
6.2  虚拟内存状态
6.2.1  虚拟内存状态范例应用程序
6.3  确定地址空间的状态
6.3.1  VMQuery函数
6.3.2  虚拟内存映射范例应用程序

第7章  在应用程序中使用虚拟内存

7.1  在地址空间中保留区域
7.2  在保留区域中提交存储
7.3  同时保留区域和提交物理存储
7.4  何时提交物理存储
7.5  释放物理存储和释放区域
7.5.1  何时释放物理存储
7.5.2  虚拟内存分配范例应用程序
7.6  修改保护属性
7.7  在RAM中锁定物理存储
7.8  重设物理存储的内容
7.9  线程的栈
7.9.1  Windows 95下的线程的栈
7.9.2  C运行时库的栈检查函数

第8章  内存映射文件

8.1  内存映射EXE和DLL
8.1.1  不被EXE或DLL的多个实例共享的静态数据
8.2  内存映射数据文件
8.2.1  方法1:一个文件,一个缓冲区
8.2.2  方法2:两个文件,一个缓冲区
8.2.3  方法3:一个文件,两个缓冲区
8.2.4  方法4:一个文件,零个缓冲区
8.3  使用内存映射文件
8.3.1  第1步:创建或打开文件内核对象
8.3.2  第2步:创建文件映射内核对象
8.3.3  第3步:将文件数据映射入进程地址空间
8.3.4  第4步:从进程地址空间中解除文件数据映射
8.3.5  第5步和第6步:关闭文件映射对象和文件对象
8.3.6  用内存映射文件处理大文件
8.4  内存映射文件和一致性
8.4.1  文件倒置范例应用程序
8.4.2  指定内存映射文件的基本地址
8.5  内存映射文件和Win 32实现
8.5.1  使用内存映射文件在进程间共享数据
8.5.2  由页面文件支持的内存映射文件
8.5.3  内存映射文件共享范例应用程序
8.6  稀疏提交的内存映射文件

第9章  堆

9.1  什么是Win 32堆
9.1.1  进程的缺省堆
9.1.2  创建自己的Win 32堆
9.1.3  创建Win 32堆
9.1.4  释放Win 32堆
9.1.5  在C++时使用堆
9.1.6  其他一些堆函数
9.2  16位Windows堆函数

第10章  线程同步

10.1  线程同步概述
10.2  最坏的事情
10.2.1  创建监临界区
10.2.2  使用临界区
10.2.3  临界区范例应用程序
10.3  用内核对象同步线程
10.3.1  互斥量
10.3.2  互斥量范例应用程序
10.3.3  信号量
10.3.4  超市范例应用程序
10.3.5  事件
10.3.6  Bucket of Balls范例应用程序
10.3.7  SWMRG复合同步对象
10.3.8  Bucket范例源代码
10.3.9  Document Statistics范例应用程序
10.3.10  可等的计时器
10.4  线程挂起
10.4.1  Sleep
10.4.2  异步文件I/O
10.4.3  WaitForLnputIdle
10.4.4  MsgWaitForMultipleObjects
10.4.5  WaitForDebugEvent
10.4.6  SignalObjectAndWait
10.4.7  Interlocked函数族

第11章  窗口消息和异步输入

11.1  多任务
11.1.1  抢先式调度
11.2  线程队列和消息处理
11.2.1  Win 32消息队列结构
11.2.2  向线程的消息队列投递消息
11.2.3  发送消息给窗口
11.2.4  唤醒线程
11.3  用消息发送数据
11.3.1  CopyData范例应用程序
11.4  非序列化输入
11.4.1  输入如何被非序列化
11.5  局部输入状态
11.5.1  键盘输入和焦点
11.5.2  鼠标光标管理
11.5.3  局部输入状态实验范例应用程序

第12章  动态链接库

12.1  创建动态链接
12.1.1  映射DLL到进程的地址空间
12.2  DLL的进入/退出函数
12.2.1  DLL_PROCESS_ATTACH
12.2.2  DLL_PROCESS_DATACH
12.2.3  DLL_THREAD_ATTACH
12.2.4  DLL_THREAD_DETACH
12.2.5  系统如何序列化对DllMain的调用
12.2.6  DllMain和C运行时库
12.3  从DLL中输出函数和变量
12.4  从DLL中引入函数和变量
12.4.1  DLL的头文件
12.5  创建DLL供非Visual C++工具使用
12.6  在EXE或DLL映射之间共享数据
12.6.1  EXE或DLL中的节
12.6.2  ModUse范例应用程序
12.6.3  MultInst范例应用程序

第13章  线程局部存储

13.1  动态线程局部存储
13.1.1  使用动态线程局部存储
13.1.2  动态线程局部存储范例应用程序
13.2  静态线程局部存储
13.2.1  静态线程局部存储范例应用程序

第14章  文件系统

14.1  Win 32的文件名约定
14.2  系统和卷操作
14.2.1  得到卷的特定信息
14.2.2  磁盘信息查看范例应用程序
14.3  目录操作
14.3.1  得到当前目录
14.3.2  改变当前目录
14.3.3  得到系统目录
14.3.4  得到Windows目录
14.3.5  创建和删除目录
14.4  拷贝、删除、移动和重命名文件
14.4.1  拷贝文件
14.4.2  删除文件
14.4.3  移动文件
14.4.4  重命名文件
14.5  查找文件
14.5.1  目录漫游范例应用程序
14.6  文件系统变化通知
14.6.1  文件变化范例应用程序
14.7  操纵文件属性
14.7.1  可执行文件类型
14.7.2  文件属性
14.7.3  文件大小
14.7.4  文件时间戳
14.8  创建临时文件  

第15章  设备I/O

15.1  打开和关闭设备
15.1.1  CreateFile
15.2  使用文件设备
15.2.1 &n
我来评论这本书
联系客服 - 加入到博客 - 图书目录 - 关于图书城.COM - 对外合作 - 购书指南 - 可以在线阅读吗?
English Version: BookGadget
图书城.COM © TuShuCheng.com - 京ICP备06069800