书籍详情
深入解析ATL(第2版)
作者:(美)塔瓦瑞斯 等著,赖仪灵,曹雨田 译
出版社:电子工业出版社
出版时间:2007-11-01
ISBN:9787121049859
定价:¥89.90
购买这本书可以去
内容简介
ATL的发明人Jim Springfield亲自作序推荐四位顶尖的Windows编程专家倾力合作,绝对经典再现COM、ATL开发人员的必备宝典深入分析ATL实现COM内幕细节,展示COM应用中的各类漂亮技巧本书主要介绍了ATL技术的原理、内部实现和应用技巧,由当今4 位顶尖的 Windows技术专家联合撰写。全书内容丰富,深入浅出,主要涵盖了ATL内部架构和实现方法、运用向导简化ATL开发、C++/COM/ATL中字符串的使用技巧、理解并正确实现IUnknown、充分利用ATL提供的Smart Types、撰写能够暴露COM服务器上COM对象的粘合代码、利用Canned Interface实现来支持对象持久化/COM群集/枚举、利用ATL Windows类建构独立的应用程序和UI组件等的技术内容。本书适合于广大Windows开发人员阅读参考,是ATL开发人员的必备权威参考书籍。
作者简介
Chris Tavares:现在是Microsoft模式和实践组的一名软件开发工程师,他致力于帮助开发人员学习Microsoft平台上最好的开发方式。第一次接触电脑是在三年级,在一台8080机器上完成机器码的手动汇编。机器配置是内存512字节(是的,字节),一个十六进制的键区和7段的LCD显示器。从那时起,他就开始深入研究计算机和软件。Kirk Fertitta:Pacifi MindWorks公司的CTO,该公司专门提供电子测试和测量的工具和服务。aKirk与他在PacificcMindWorks的团队一起广泛地致力于代码生成技术和VisualcStudio的扩展性研究,他还是Pluralsight的NET/C#讲师。BrentcRector:WisecOwl咨询公司的总裁和创始人,著名的演说家。顾问家和作家。擅长.NET.ASP.NET.XML.COM+和ATLChriscSells:ConnectedcSystemscDivision的一名程序经理。他已经编写了多本著作,包括《Programming Windows Presentation Foundation》、《Windows Forms Programming in C#》和《ATLcInternals》。在业余时间,Chris举办各种会议,使他成为了Microsoft内部产品组讨论列表的“害虫”。关于Chris的更多信息以及他的各种项目,可以在http://www.sellsbrothers.com访问到。
目录
第2版序
第1版序
前言
致谢
关于作者
联系博文视点
第1章 你好,ATL
1.1 什么是ATL
1.2 创建COM服务器
1.3 插入COM类
1.4 添加属性和方法
1.5 实现附加接口
1.6 脚本支持
1.7 添加永久性
1.8 添加和激发事件
1.9 使用窗口
1.10 COM控件
1.11 容纳控件
1.12 ATL Server Web项目
1.13 总结
第2章 字符串和文本
2.1 字符串数据类型、转换类和辅助函数
2.2 智能BSTR类CComBSTR
2.3 CComBSTR类
2.4 CString类
2.5 总结
第3章 ATL智能类型
3.1 智能VARIANT类CComVariant
3.2 智能SAFEARRAY类CComSafeArray
3.3 智能指针类CComPtr和CComQIPtr
3.4 智能指针类CAutoPtr和CAutoVectorPtr
3.5 ATL内存管理器
3.6 总结
第4章 ATL中的对象
4.1 实现IUnknown
4.2 ATL的层次
4.3 线程模型支持
4.4 IUnknow核心
4.5 我们的类
4.6 CComObject以及其他
4.7 ATL创建者
4.8 调试
4.9 总结
第5章 COM服务器
5.1 回顾COM服务器
5.2 对象映射表和CAtlModule类
5.3 对象映射表
5.4 对象映射类要求的方法
5.5 CAtlModule类
5.6 重游CComCoClass
5.7 ATL与C运行时库
5.8 总结
第6章 接口映射表
6.1 回顾:COM的实体身份
6.2 表驱动的QueryInterface
6.3 多重继承
6.4 Tear-off接口
6.5 聚合:外部控制对象
6.6 接口映射表链
6.7 尽管说“不”
6.8 调试
6.9 扩展性
6.10 总结
第7章 ATL中的永久性
7.1 回顾COM的永久性
7.2 ATL的永久性实现类
7.3 属性映射表
7.4 永久性实现
7.5 其他永久性实现
7.6 使用永久性添加“按值列集”的语义
7.7 总结
第8章 集合和枚举器
8.1 COM集合和枚举接口
8.2 枚举数组
8.3 枚举标准的C++集合
8.4 集合
8.5 ATL数据类型的标准C++集合
8.6 ATL集合
8.7 对象模型
8.8 总结
第9章 连接点
9.1 回顾连接点
9.2 创建基于ATL的可连接对象
9.3 创建一个接收事件的对象
9.4 它是怎么工作的:杂乱的实现细节
9.5 总结
第10章 窗口
10.1 Windows应用程序的结构
10.2 CWindow
10.3 CWindowImpl
10.4 CDialogImpl
10.5 Windows控件包装类
10.6 CContainedWindow
10.7 总结
第11章 ActiveX控件
11.1 回顾ActiveX控件
11.2 BullsEye控件需求
11.3 使用ATL向导创建初始的控件
11.4 初始的BullsEye源文件
11.5 逐步开发BullsEye控件
11.6 总结
第12章 控件包容
12.1 控件是如何被包容的
12.2 基本的控件包容
12.3 在对话框中容纳控件
12.4 复合控件
12.5 HTML控件
12.6 ATL控件包容的限制
12.7 总结
第13章 你好,ATL Server:一个新型的C++ Web平台
13.1 微软Web平台(因特网信息服务)
13.2 可能是可以运行的最简单ISAPI扩展
13.3 封装ISAPI
13.4 ATL Server
13.5 ATL Server中的Web服务
13.6 总结
第14章 ATL Server内幕
14.1 ATL Server中的ISAPI实现
14.2 服务器响应文件
14.3 请求处理程序示例
14.4 输入处理
14.5 会话管理
14.6 数据缓存
14.7 总结
附录A 实例展示C++模板
A.1 模板的必要性
A.2 模板基础
A.3 不同类型的多态
A.4 函数模板
A.5 成员函数模板
A.6 总结
附录B ATL头文件
附录C 移植到ATL 8
C.1 字符串、字符集和转换
C.2 与MFC共享的类
C.3 实现COM服务器
C.4 ActiveX控件和控件容纳
C.5 ATL_MIN_CRT变化
C.6 总结
附录D 属性化ATL
D.1 ATL Attributes的基础
D.2 属性化ATL的未来
D.3 总结
索引
第1版序
前言
致谢
关于作者
联系博文视点
第1章 你好,ATL
1.1 什么是ATL
1.2 创建COM服务器
1.3 插入COM类
1.4 添加属性和方法
1.5 实现附加接口
1.6 脚本支持
1.7 添加永久性
1.8 添加和激发事件
1.9 使用窗口
1.10 COM控件
1.11 容纳控件
1.12 ATL Server Web项目
1.13 总结
第2章 字符串和文本
2.1 字符串数据类型、转换类和辅助函数
2.2 智能BSTR类CComBSTR
2.3 CComBSTR类
2.4 CString类
2.5 总结
第3章 ATL智能类型
3.1 智能VARIANT类CComVariant
3.2 智能SAFEARRAY类CComSafeArray
3.3 智能指针类CComPtr和CComQIPtr
3.4 智能指针类CAutoPtr和CAutoVectorPtr
3.5 ATL内存管理器
3.6 总结
第4章 ATL中的对象
4.1 实现IUnknown
4.2 ATL的层次
4.3 线程模型支持
4.4 IUnknow核心
4.5 我们的类
4.6 CComObject以及其他
4.7 ATL创建者
4.8 调试
4.9 总结
第5章 COM服务器
5.1 回顾COM服务器
5.2 对象映射表和CAtlModule类
5.3 对象映射表
5.4 对象映射类要求的方法
5.5 CAtlModule类
5.6 重游CComCoClass
5.7 ATL与C运行时库
5.8 总结
第6章 接口映射表
6.1 回顾:COM的实体身份
6.2 表驱动的QueryInterface
6.3 多重继承
6.4 Tear-off接口
6.5 聚合:外部控制对象
6.6 接口映射表链
6.7 尽管说“不”
6.8 调试
6.9 扩展性
6.10 总结
第7章 ATL中的永久性
7.1 回顾COM的永久性
7.2 ATL的永久性实现类
7.3 属性映射表
7.4 永久性实现
7.5 其他永久性实现
7.6 使用永久性添加“按值列集”的语义
7.7 总结
第8章 集合和枚举器
8.1 COM集合和枚举接口
8.2 枚举数组
8.3 枚举标准的C++集合
8.4 集合
8.5 ATL数据类型的标准C++集合
8.6 ATL集合
8.7 对象模型
8.8 总结
第9章 连接点
9.1 回顾连接点
9.2 创建基于ATL的可连接对象
9.3 创建一个接收事件的对象
9.4 它是怎么工作的:杂乱的实现细节
9.5 总结
第10章 窗口
10.1 Windows应用程序的结构
10.2 CWindow
10.3 CWindowImpl
10.4 CDialogImpl
10.5 Windows控件包装类
10.6 CContainedWindow
10.7 总结
第11章 ActiveX控件
11.1 回顾ActiveX控件
11.2 BullsEye控件需求
11.3 使用ATL向导创建初始的控件
11.4 初始的BullsEye源文件
11.5 逐步开发BullsEye控件
11.6 总结
第12章 控件包容
12.1 控件是如何被包容的
12.2 基本的控件包容
12.3 在对话框中容纳控件
12.4 复合控件
12.5 HTML控件
12.6 ATL控件包容的限制
12.7 总结
第13章 你好,ATL Server:一个新型的C++ Web平台
13.1 微软Web平台(因特网信息服务)
13.2 可能是可以运行的最简单ISAPI扩展
13.3 封装ISAPI
13.4 ATL Server
13.5 ATL Server中的Web服务
13.6 总结
第14章 ATL Server内幕
14.1 ATL Server中的ISAPI实现
14.2 服务器响应文件
14.3 请求处理程序示例
14.4 输入处理
14.5 会话管理
14.6 数据缓存
14.7 总结
附录A 实例展示C++模板
A.1 模板的必要性
A.2 模板基础
A.3 不同类型的多态
A.4 函数模板
A.5 成员函数模板
A.6 总结
附录B ATL头文件
附录C 移植到ATL 8
C.1 字符串、字符集和转换
C.2 与MFC共享的类
C.3 实现COM服务器
C.4 ActiveX控件和控件容纳
C.5 ATL_MIN_CRT变化
C.6 总结
附录D 属性化ATL
D.1 ATL Attributes的基础
D.2 属性化ATL的未来
D.3 总结
索引
猜您喜欢