图书介绍
COM/DCOM 编程指南PDF|Epub|txt|kindle电子书版本网盘下载
![COM/DCOM 编程指南](https://www.shukui.net/cover/23/34833050.jpg)
- (美)(科里)Corry等著;刘云,孔雷译 著
- 出版社: 北京:清华大学出版社
- ISBN:7900622624
- 出版时间:2000
- 标注页数:416页
- 文件大小:19MB
- 文件页数:430页
- 主题词:COM/DCOM/ATL/COM+
PDF下载
下载说明
COM/DCOM 编程指南PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
前言页1
第1章 Microsoft对象技术概述1
1.1 COM,DCOM,OLE和ActiveX1
1.2 组件技术的演变2
1.2.1 定制控制2
1.2.2 Visual Basic扩展2
1.2.3 OLE 1.03
1.2.4 OLE 2.03
1.3 理解OLE4
1.3.1 从最终用户的角度观察OLE4
1.3.2 从程序员的角度观察OLE8
1.4 ActiveX概述20
1.4.1 通过ActiveX扩展OLE技术21
1.4.2 新的ActiveX技术22
1.5 分布式组件对象模型(DCOM)23
1.6 小结24
第2章 对象的演变25
2.1 对象和类25
2.2 什么是面向对象26
2.2.1 封装26
2.2.2 继承29
2.2.3 多态性32
2.3 抽象的基类34
2.4 类对象34
2.5 从C++的观点看对象35
2.5.1 C++中的封装36
2.5.2 C++中的继承37
2.5.3 C++中的方法重载38
2.5.4 C++中的多态性39
2.5.5 C++中的抽象基类41
2.5.6 C++中的类对象42
2.6 从COM的观点看对象45
2.6.1 COM中的封装45
2.7 COM中的继承47
2.7.1 COM中的方法重载49
2.7.2 COM中的多态性49
2.7.3 COM中的类对象50
2.8 小结51
第3章 创建COM对象和接口52
3.1 了解低级COM52
3.2 客户与服务器53
3.2.1 进程内服务器55
3.2.2 本地服务器55
3.2.3 远程服务器56
3.2.4 代理56
3.2.5 服务器的工作实现58
3.3 用GUID标识类60
3.3.1 生成GUID61
3.3.2 将GUID放入源码63
3.4 HRESULT返回类型65
3.5 接口的构造67
3.6 探索IUnknown70
3.6.1 利用QueryInterface()来获取不同的接口71
3.6.2 引用计数:AddRef()和Release()72
3.6.3 认识IUnknown74
3.7 小结76
第4章 实现COM客户和服务器77
4.1 最简单的示例程序:Fortune177
4.2 Fortune2示例程序79
4.3 创建IFortuneTeller接口79
4.3.1 IFortuneTeller接口80
4.3.4 STDMETHOD宏81
4.3.3 interface关键字81
4.3.2 DECLARE_INTERFACE宏81
4.3.5 PURE宏82
4.4 宽字节字符集和国际化的字符串82
4.4.1 在宽字节字符集与ANSI之间转换字符串83
4.4.2 BSTR,COM字符串类型84
4.5 重新创建CFortuneTeller为ComFortuneTeller85
4.5.1 ComFortuneTeller类85
4.5.2 VerboseMsg()函数88
4.5.3 IUnKnown接口的ComFortuneTeller实现90
4.5.4 全局数据91
4.5.5 IFortuneTeller接口的ComFortuneTeller类实现93
4.6 ComFortuneTellerFactory类93
4.6.1 IClassFactory接口93
4.6.2 实现ComFortuneTellerFactory95
4.7 完成进程内服务器100
4.7.2 DllCanUnloadNow()函数101
4.7.1 DllGetClassObject()函数101
4.8 创建客户102
4.8.1 初始化104
4.8.2 取回一个指向FortuneTeller对象的接口指针105
4.8.3 使用108
4.8.4 终止108
4.9 注册服务器109
4.9.1 注册表基础知识109
4.9.2 COM类和注册表110
4.10 小结111
第5章 使用MFC进行COM编程112
5.1 MFC简介112
5.2 MFC和OLE/ActiveX113
5.3 ActiveX模板库113
5.6 多重接口和多重继承114
5.4 多重组件和它们的多重接口114
5.5 多重接口支持不是聚合114
5.6.1 符号冲突的问题115
5.7 使用嵌套类输出多重接口116
5.7.1 Fortune3示例程序117
5.7.2 ComFortuneTeller的MFC版本117
5.7.3 CCmdTarget类中的IUnknown实现118
5.7.4 声明嵌套类120
5.7.5 INTERFACE MAP,OLECREATE和DYNCREATE宏121
5.7.6 实现MFC ComFortuneTeller类122
5.7.7 使用IMPLEMENT_DYNCREATE和IMPLEMENT_OLECREATE实现MFC类工厂126
5.7.8 声明和实现接口映射127
5.7.9 在MFC服务器中对对象实例进行计数128
5.7.10 为嵌套类实现IUnknown接口129
5.7.12 实现IFortuneTeller和IQuotation接口131
5.7.11 IMPLEMENT_NESTED_IUNKNOWN宏131
5.7.13 完成基于MFC的Fortune3服务器132
5.7.14 Fortune3客户程序138
5.8 小结141
第6章 使用聚合模拟继承142
6.1 聚合的功能142
6.1.1 聚合的机制143
6.2 聚合和MFC风格144
6.3 创建机器人组件146
6.3.1 IRobot接口146
6.3.2 ISimpleDrawable接口146
6.3.3 ComRobot COM类147
6.3.4 客户和服务器153
6.3.5 客户程序主窗口154
6.4 使用聚合的NoisyRobot组件157
6.5 小结166
7.1 为什么建立本地服务器167
第7章 使用本地服务器打破进程边界167
7.1.1 编排中间层168
7.1.2 代理与占位模块168
7.2 接口定义语言170
7.3 编制定制组件的IDL文件171
7.3.1 Import174
7.3.2 Typedef174
7.3.3 Interface175
7.3.4 方法原型176
7.3.5 Coclass178
7.4 将MIDL集成到Developer Studio中178
7.5 COM实例:比萨饼订购向导179
7.5.1 ComPizzaOrderTaker类180
7.5.2 PizzaOrderTaker本地服务器190
7.5.3 代理/占位模块DLL198
7.5.4 向导客户203
7.6 小结224
第8章 使用ActiveX模板库创建COM对象225
8.1 ATL简介225
8.1.1 ATL与C++模板226
8.1.2 多重继承226
8.1.3 自动化和双重接口226
8.1.4 Tear-off接口227
8.2 ATL的体系结构227
8.2.1 CComModule227
8.2.2 CComObjectRoot228
8.2.3 CComObject228
8.2.4 CComCoClass229
8.2.5 在定制接口中混合230
8.3 比萨饼订购实例的ATL版本231
8.3.1 用ATL声明ComPizzaOrderTaker类231
8.3.2 实现ATL ComPizzaOrderTaker类235
8.3.3 建立本地服务器240
8.3.4 建立进程内服务器250
8.5 注册表脚本程序和注册表管理程序252
8.5.1 测试注册表脚本程序253
8.5.2 编写注册表脚本程序253
8.5.3 调用注册表管理程序257
8.5.4 宏替换259
8.6 增加新的向导配置入口260
8.7 小结260
第9章 分布式对象概述262
9.1 分布式系统的发展262
9.1.1 传统系统263
9.1.2 客户/服务器263
9.2 分布式COM267
9.2.1 对象RPCs268
9.2.2 OXID269
9.2.3 传递接口指针270
9.2.4 优化DCOM270
9.2.5 Pinging271
9.3 小结272
第10章 安全性273
10.1 安全支持提供者接口273
10.2 NT安全性概述273
10.2.1 安全性描述符273
10.2.2 安全ID274
10.2.3 访问控制列表277
10.2.4 用户配置文件280
10.2.5 访问标记280
10.3 COM安全性281
10.3.1 认证安全性281
10.3.2 模仿安全性282
10.3.3 激活安全性283
10.3.4 调用安全性288
10.3.5 示例289
10.3.6 示例1295
10.3.7 示例2296
10.4 COM对象身份鉴别296
10.5 进程内安全性298
10.6 安全性覆盖和模仿298
10.6.1 IClientSecurity298
10.6.2 IServerSecurity299
10.7 DCOM与CAPI300
10.8 小结300
第11章 使用不同的COM线程模型301
11.1 线程函数303
11.1.1 CreateThread()303
11.1.2 SuspendThread()和ResumeThread()304
11.1.3 TerminateThread()305
11.1.4 GetExitCodeThread()306
11.1.5 ExitThread()306
11.1.6 beginthreadex()307
11.1.7 线程局部存储区309
11.2 线程类型311
11.2.1 工作线程311
11.2.2 消息队列线程313
11.2.3 线程池317
11.2.4 窗口线程319
11.2.5 单元线程321
11.2.6 纤程323
11.3 线程同步323
11.3.1 事件324
11.3.2 互斥变量325
11.3.3 临界区326
11.3.4 信号量328
11.4 COM线程模型330
11.4.1 单线程模型330
11.4.2 单元线程模型332
11.4.3 自由线程模型336
11.5 小结336
第12章 揭开自动化的面纱337
12.1 自动化的特征339
12.1.1 自动化数据类型346
12.2 自动化和事件支持352
12.3 在MFC中支持自动化352
12.4 在ATL中支持自动化354
12.4.1 客户(控制器)354
12.4.2 CComDispatchDriver354
12.4.3 服务器354
12.6 小结356
12.5 特殊意义的DispID356
第13章 使用分布式对象357
13.1 远程对象实例化357
13.1.1 远程存在的COM组件358
13.1.2 CoCreateInstanceEx362
13.1.3 决定什么时候使用进程内服务器、本地服务器或远程服务器365
13.2 设计分布式对象应用366
13.2.1 可扩缩性367
13.2.2 负载平衡368
13.2.3 连接到服务对象369
13.2.4 事件通知和可连接对象371
13.3 分布式比萨饼订购系统372
13.3.1 新的PizzaOrderTaker服务器373
13.3.2 定位器类384
13.3.3 PizzaMaker服务器388
13.3.4 PizzaMaker服务器查看器401
13.4 小结416