当前位置:首页 > 工业技术
如何开发Windows 95 应用程序
如何开发Windows 95 应用程序

如何开发Windows 95 应用程序PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:(美)Kevin J.Goodman著;郭 勇等译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1996
  • ISBN:7302022615
  • 页数:402 页
图书介绍:
《如何开发Windows 95 应用程序》目录

第一章 32位Windows介绍 1

1.1 32位计算的优点 1

1.1.1 线性编程模式 1

1.1.2 更大的数据和可用地址空间 2

1.1.3 不需要复杂的编译器支持 3

1.1.4 优化为32位模式的处理器 4

1.2 了解目标平台 5

1.2.1 判断基本类型的长度 7

1.2.2 Intel 386/486寄存器集合 8

1.2.3 MIPS R400和R4400处理器 13

1.2.4 DEC Alpha AXP 20

1.3 小结 21

1.4 如何阅读MAP文件 21

第二章 移植到Win32 25

2.1 两个代码基:一个用于Win16,一个用于Win32 25

2.1.1 处理makefile的问题 26

2.1.2 数据类型长度的改变 27

2.1.3 窗口消息的改变 31

2.1.4 API调用的改变 33

2.1.5 分段体系结构问题 34

2.1.6 直接硬件访问 34

2.1.7 WIN.INI和SYSTEM.INI的直接访问 35

2.1.8 无文档说明的函数和内部变量的使用 35

2.1.9 虚拟设备驱动程序(VXD) 36

2.1.10 对hPrevInstance的依赖 36

2.1.11 输入状态的改变 37

2.1.12 对DOS的依赖 37

2.1.13 移植汇编语言 40

2.2 一个代码基:与Win16和Win32兼容 41

2.2.1 C语言的方法 41

2.2.3 移植用于控件的宏 45

2.2.2 得到移植宏 45

2.2.4 简易方案:使用应用程序框架 46

2.2.5 把C代码基升级到可接受的层次 46

2.2.6 把C程序作为C程序编译 49

2.2.7 引入MFC对象 50

2.2.8 MFC 2.x和MFC 3.0的比较 50

2.3 关于MFC 51

2.4 UNICODE支持 51

2.4.1 MFC和多线程 51

2.4.2 MFC的优点 51

2.5 访问移植实验室 52

2.5.1 DEC(数字设备公司)的Alpha处理器移植实验室 53

第三章 形式替换 54

3.1 编译型形式替换程序 57

3.1.1 为形式替换程序编译器建立命令文件 58

3.1.2 编译命令文件生成(.ASM)汇编文件 59

3.2 编译型形式替换程序是如何运行的 69

3.3 调试 70

3.4 一般的形式替换程序 70

3.5 万能形式替换程序 72

3.5.1 登录形式替换程序 73

3.5.2 脱离形式替换程序 74

3.5.3 指针转换 74

3.6 范例程序:ExitWindows32s 76

3.7 Win16的开发 90

3.7.1 与Win16应用程序并存 90

3.7.2 NotifyRegister和Win32s 91

3.8 小结 92

第四章 进程的生存期 93

4.1 对CreateProcess的深入考察 93

4.1.1 可以被子进程继承的属性 94

4.1.2 不能被继承的属性 95

4.1.3 创建优先级标志和进程类型 96

4.2 线程 98

4.2.1 何时用附加线程 99

4.2.2 线程创建 100

4.2.3 挂起线程运行 101

4.2.4 设置线程的优先级 102

4.2.5 使用线程局部存储 103

4.2.6 终止一个线程 105

4.2.7 什么时候线程是不必要的 105

4.3 重叠的I/O 106

4.4 结构和进程创建API 107

4.4.1 环境变量 107

4.4.2 PROCESS_INFORMATION(进程信息)结构 107

4.4.3 停止GUI进程 107

4.5 Win16和Win32的区别 108

4.4.4 同步 108

4.6 同步对象 109

4.6.1 关键段对象 109

4.6.2 事件对象 110

4.6.3 互斥对象 111

4.6.4 信号量对象 112

4.7 同步处理和GDI对象 123

5.2 Windows 95和NT的虚拟内存管理 124

5.1 Windows NT与Windows 95的差异 124

第五章 Win32的内存管理 124

5.3 内存API 126

5.3.1 虚拟API 126

5.3.2 VirtualFree 128

5.3.3 保护页 128

5.4 稀疏内存管理策略 130

5.4.1 VirtualQuery 130

5.5 Win32中的全局以及局部分配 131

5.4.2 VirtualLock 131

5.5.1 用标准C语言库函数操纵内存 132

5.6 Win32新引入的堆API 133

5.6.1 用于分配更多内存的堆分配函数 134

5.6.2 用于取消一个堆的堆分配函数 135

5.6.3 MFC C的new和delete函数 135

5.6.4 跨进程内存管理 136

5.6.5 共享内存DLL 140

5.6.6 用于传输只读数据的WM COPYDATA 141

5.6.7 ReadProcessMemory和WriteProcessMemory函数 142

5.7 范例程序:读写内存 145

5.8 Windows 95的可应用性 169

5.9 小结 170

第六章 登录 171

6.1 登录的必要性 171

6.2.1 键和值项 173

6.2 登录的基本结构 173

6.2.2 预定义句柄 175

6.3 确保Windows NT启动的控制设置 177

6.4 INI文件映射 178

6.5 设置环境变量 181

6.6 如何建立应用程序数据结构 181

6.7 登录程序设计 183

6.7.1 查询登录 185

6.7.2 列举键和数值 187

6.7.3 写入登录 187

6.7.4 加密登录项 188

6.7.5 存储和从磁盘文件中恢复登录 188

6.7.6 连接一台远程机器 189

6.7.7 下载SDK 189

6.7.8 性能数据 190

6.7.9 获取计数器数据 195

6.8 范例程序:REGISTRAR 196

6.9 小结 200

6.10 从登录中提取的典型内容 200

第七章 远程过程调用 204

7.1 什么是RPC 204

7.1.1 Win32 RPC与OSF/DCE 205

7.1.2 RPC和数据转换 205

7.2 开发RPC应用程序 206

7.2.1 使用Microsoft界面定义语言定义一个界面 206

7.2.2 GUID结构 207

7.2.3 将类型属性与定义的类型关联 209

7.2.4 RPC客户 211

7.2.5 客户API联编函数 213

7.2.6 RPC服务器 217

7.3 范例程序:分布式make 220

7.5 命名约定 222

7.4 小结 222

第八章 Windows 95和Win32的异常 223

8.1 32位Windows中的异常 225

8.1.1 内核中的未处理异常 226

8.1.2 异常处理程序和过滤程序 226

8.1.3 展开 228

8.1.4 不要吞没异常 232

8.2 软件产生的异常 233

8.2.1 终断处理程序 234

8.3 异常处理优先级 237

8.4 对异常的调试 238

8.5 结构化异常处理和Win32s 239

8.6 结论 240

第九章 编写控制台应用程序 244

9.2 控制台应用程序中的挂接 246

9.1 控制台应用程序不支持的功能 246

9.3 定时器和控制台应用程序 247

9.4 控制台与其它窗口的交互 247

9.4.1 子类与控制台应用程序 247

9.5 控制台应用程序的功能 247

9.5.1 控制台句柄 248

9.6 对控制台输入和输出的C运行时库支持 252

9.6.1 GetLastError与errno 253

9.7 在控制台应用程序中使用GUI功能 256

9.8 控制台窗口与图形应用程序的组合 258

9.8.1 使输出定向于控制台窗口 259

9.8.2 接收控制台输入 261

9.9 重定向标准输入/输出 262

9.10 检测事件 269

9.11 使用定时器 271

9.10.1 控制台事件与信号 271

9.12 断开进程 272

9.13 从控制台应用程序中打印 273

9.13.1 在运行时确定控制台程序 277

9.14 小结 280

第十章 32位操作系统——发展和特点 281

10.1 不要两次犯同样的错误 287

10.2 与Win16的兼容性 287

10.3 基于32位模式 288

10.4 多线程进程结构 289

10.5 独立的地址空间 289

10.6 稳定性 289

10.7 对不同体系结构的支持 291

10.7.1 SGI公司的MIPS R4x00 291

10.7.2 DEC公司的Alpha AXP 291

10.7.3 对称的多处理机制 291

10.8 安全性 292

10.9 Win32中没有的功能 293

10.10 Win32、Windows NT、Windows 95的对比 294

第十一章 Windows 95 Shell 300

11.1 Shell游戏 300

11.1.1 Shell扩展是如何工作的 302

11.2 使用MFC创建Shell扩展DLL 305

11.2.1 使用APPWIZARD创建_USRDLL 305

11.2.2 初始化Shell扩展 307

11.2.3 图标处理程序 307

11.2.4 上下文菜单处理程序 310

11.2.5 QueryContextMenu 310

11.2.6 InvokeCommand 313

11.2.7 IContextMenu 316

11.2.8 ICOPYHOOK接口 316

11.2.9 登录Shell扩展 317

11.3 调试Shell扩展 318

11.3.1 如何建立或升级一个Shell扩展 319

11.4 小结 319

11.5 Explorer 319

第十二章 Windows和Win32的安全性 320

12.1 用户识别 320

12.2 安全性标识符 321

12.3 访问令牌 322

12.4 可施加安全保护的对象 323

12.5 控制访问许可 324

12.6 范例程序:SecureView 329

12.7 启用优先权 350

12.8 范例应用程序:ExitWindows 352

12.9 安全性如何影响应用程序 361

12.9.1 独立工作站 361

12.10 模仿 362

12.9.2 单域和多域网络 362

12.11 安全性和屏幕保护程序 363

12.12 NT的安全体系结构:总结 363

第十三章 图形设备接口 365

13.1 GDI的客户/服务器的本质概述 365

13.1.1 对GDI API函数的修改 367

13.1.2 被删除的GDI函数 367

13.1.3 对GDI的改进 367

13.1.4 对path的改进 372

13.1.5 对位图的改进 378

13.1.6 新的BITBLT函数 380

13.1.7 照相铜版 382

13.1.8 增强型元文件 382

13.1.9 编辑元文件 385

13.1.11 改进GDI绘图性能 386

13.1.10 修改调色板 386

13.1.12 GDI批量是特定于线程的 388

13.2 小结 389

第十四章 Win32s 390

14.1 Win32s的工作方式 390

14.1.1 WIN32S.EXE:创建任务数据库 391

14.1.2 在16位和32位模块间转译的形式替换程序 392

14.1.3 构成Win32s系统的文件 392

14.2.2 用Win32替代Win32s 395

14.2.3 与Win16应用程序共存 395

14.2 Win32s何时适合于应用程序 395

14.2.1 用Win16替代Win32s 395

14.2.4 NotifyRegister和WIN32s 397

14.2.5 用于Win32的NotifyRegister的另一个选择 398

14.3 调试Win32s应用程序 398

14.3.1 暂时不要丢开INT 21H 402

14.4 小结 402

返回顶部