相关图书推荐

COM/DCOM/ATL/COM+

    您的浏览历史

    深入解析ATL(第2版)

    促销活动
    • [本书]参加电子工业出版社 满58元赠书活动

    基本信息

    编辑推荐

    ATL的发明人Jim Springfield亲自作序推荐.
    四位顶尖的Windows编程专家倾力合作,绝对经典再现
    COM、ATL开发人员的必备宝典..
    深入分析ATL实现COM内幕细节,展示COM应用中的各类漂亮技巧...

    推荐阅读
    COM高手心经(影印版)..

    市场价:¥30.00
    4-5星价:¥25.50
    [购买] [收藏]
    ATL Internals: Working with ATL 8 (2nd E..

    市场价:¥630.00
    4-5星价:¥355.94
    [购买] [收藏]

    内容简介回到顶部↑

    本书主要介绍了ATL技术的原理、内部实现和应用技巧,由当今4 位顶尖的 Windows技术专家联合撰写。全书内容丰富,深入浅出,主要涵盖了ATL内部架构和实现方法、运用向导简化ATL开发、C++/COM/ATL中字符串的使用技巧、理解并正确实现IUnknown、充分利用ATL提供的Smart Types、撰写能够暴露COM服务器上COM对象的粘合代码、利用Canned Interface实现来支持对象持久化/COM群集/枚举、利用ATL Windows类建构独立的应用程序和UI组件等的技术内容。本书适合于广大Windows开发人员阅读参考,是ATL开发人员的必备权威参考书籍。

    作译者回到顶部↑

    本书提供作译者介绍

    Christopher Tavares,目前在微软工作,是模式与实践方面的专家。有着超过25年的编程经验,涉及的平台从Sinclair ZX-81到多CPU信号处理硬件。
    .. << 查看详细

    目录回到顶部↑

    第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 总结

    译者序回到顶部↑

    从本书的第1版面世以来,它一直就是ATL开发人员不可或缺的书籍。经过近10的发展,ATL本身也从3.0发展到了8.0版本。是的,我和大家一样期待了近10年的时间,终于盼来了《ATL Internals》第2版的出版。.
    近年来,随着.NET的快速发展,越来越多的人开始关心C++语言的发展等问题。事实上,我们应该相信C++从其发展至今,已经得到了明确的认可。C++凭借其功能强大、可控性强等特性占据着一定的、非常重要的应用领域。另一个方面,COM技术的地位似乎也受到了冲击。但是,COM仍然是Windows中最重要的跨语言、二进制级别的源代码共享技术之一。作为Windows平台的一名好的开发人员,熟悉这项技术、了解该技术发展的流脉也是非常重要的。
    活动模板库(ATL)是微软提供的致力于改善进行COM相关开发过程的C++类库。ATL一开始的目标便是成为一套短小、灵活、功能强大的C++类库,从1998年发表ATL 3.0开始,经过多年的发展它已经变得非常成熟。强大的ATL库经过近10年的改进已经发展到8.0版,现在它的功能更强大,结构更优化,使我们可以更方便地构建COM对象和组件。ATL 8.0更是添加了ATL Server类集帮助构建网页应用程序扩展。..
    本书的组织结构与第1版类似,首先第1章是快速浏览IDE的向导功能,接着重点分析了ATL实现COM的内幕细节,这也是本书的核心,从第7章开始介绍了ATL的各种综合应用,第13、14章重点介绍了用于建立网页应用程序扩展的ATL Server类集。
    幸运的是,本书的作者比第1版时还多了两位,他们都是Windows编程领域的大师,有着多年的实践经验。本书就是他们四人通力合作的结晶,书中不但非常详尽地解释了ATL 8.0实现COM功能的各种细节,同时也展示了COM应用中的各种漂亮技巧。
    在翻译一本如此优秀的书籍时,我们尽力保持原文的含义和风格。在翻译的过程中,我们也深刻体会到该书的确是又一经典之作,它将带领我们深入理解ATL的设计和实现过程。
    本书的翻译工作由曹雨田老师和我合作完成。该书的第8章至第12章由曹雨田老师翻译,其余内容均由我翻译,最终,所有内容均由我统稿整理。和其他的翻译工作一样,虽然我们努力尝试消除中文版的每一个错误,但因时间和水平有限,终究难免存在不足。所有的错误都应归咎于我的把关不严,责任不在其他。欢迎广大读者朋友在阅读该书的过程中指出我们的不足之处。我的邮件联系地址为laiyiling@gmail.com
    赖仪灵
    2007年8月于上海...

    前言回到顶部↑

    .NET如同一枚重磅炸弹冲击了Windows程序员社区,它推翻了我们过去的编程基础。它非常贴切地满足了大多数Web应用程序和服务应用程序,以及与以前我们用Visual Basic和MFC开发的大多数业务相关的应用程序的需要。.
    但是,一些顽固的程序员在他们的“基地”声称除非最后用武力强迫,否则不会放弃本地代码。很多人在C++代码上投入了很多年,不相信一些新奇的编译器开关,会使他们的本地代码被“托管”。不管是否会得到好处,这些人都不会移植他们的代码。只要能说服他们把ATL 3/Visual C++ 6项目移植到ATL 8和Visual Studio 2005之上,在某种程度上,本书就适合他们。
    另一类开发人员居住在“Windows城市”的“市区”,不会受到暴风雨的袭击,他们仅仅知道正在发生暴风雨。他们发布的应用程序必须在Windows 95及更高版本之上快速、良好地运行,这样的环境中没有足够的内存或者CPU来运行.NET应用程序,或者即使满足这两点,也没有足够的带宽来下载.NET应用程序。他们还必须在服务器范围内最大可能地减少资源,充分利用可用的每个资源。他们没有豪华的CPU、内存或者存储系统来满足垃圾回收、即时编译或者包含有不必要内容的庞大类库的需求,因为它们需要只有现代机器才能明确满足的环境。这些开发人员计算加载时间,执行速度,以在各种不利环境下直接访问平台。对他们而言,所使用的任何框架如果有不被使用的零开销特征时,都必须有严格的策略:自定义时需要最大的灵活性以及绝对的效率。对于这些开发人员,ATL 8成为了Windows平台最后最好的本地框架。
    对于客户,ATL提供了窗口、COM客户智能类型、广泛的COM控件和控件宿主、与MFC的集成(包含几个不再需要MFC的其他部分就可以使用的MFC类)和生成Web服务代理。对于服务器,ATL提供全面的COM服务器和对象服务,广泛支持高吞吐量、高并发的Web应用程序和服务。对于客户和服务器,ATL都疯狂地使用了宏和模板来给予我们最大的灵活性和低开销,确保我们只为所使用的功能付出代价,通过源代码完全透明地向我们提供了这些类是如何把他们的功能映射到平台的。对于生产力,ATL提供了一套向导用于开始和建立客户及服务器项目。..
    在ATL 7和Visual Studio 2003上,为了提高生产力,ATL组引入了属性化 ATL,它允许ATL程序员使用向IDL接口和coclass(比如uuid Attribute)添加元数据的相同技术来注解他们的代码。事实上,在VS03,向导非常乐意向我们展示这种风格的代码,属性化选项被默认是打开的。但是,Attribute并非一切都是美好的。在.NET和IDL中,Attribute确实是属于编程模型的一部分,所有向下的方法都支持它们。在ATL中,Attribute与特级宏、生成的基类、宏映射、注册脚本和IDL文件一样,远比编译器技巧复杂。
    但是,Attribute与宏不同,它不是透明的,不能很好地看到其工作过程。它包含了一个编译器开关来展示生成的代码,比如添加了什么基类,但这在VS05中有所退步。这已经导致了理解和调试方面的问题,对Attribute生成的代码问题也没有任何帮助。但这不表示ATL的其他部分的问题是开放的(也不意味着任何软件的问题都是开放的),但是当它引入了基类或宏中的问题时,ATL总是有几种方式使我们可以替换有问题的功能。事实上,本书第1版的很大一部分代码都是解决问题,因为我们可以很容易地回避这些问题。
    在VS05中的提示说明Attribute不再是ATL组的工作重点。比如,编译器开关提示的关于Attribute生成的信息更少,而不是更多。其实更明显的是在VS05中属性化选项不再被默认选中。基于这个原因,我在附录D“属性化ATL”中涉及了ATL Attribute的基本原理。本书不会有更多的内容来介绍它。我们相信三心二意的Attribute将不会再使ATL 8程序员兴奋,因为他们可以选择本地框架。
    本书适用于转向ATL 8的C++/COM程序员,ATL 8与Visual Studio 2005一起发布。ATL的构建基于很多的假设,因此,要想成为一个ATL专家,不仅需要理解ATL是如何构建的,还需要知道原因。当然,为了理解ATL的原因,我们必须理解ATL的开发环境:COM。本书没有把所需要的COM知识压缩到一到两章的内容,本书假定读者已经理解了COM,本书所有的内容都是展示ATL的设计、使用以及内幕。Don Box的《COM本质论》(Essential COM,Addison-Wesley Professional,1997)很好地讲述了COM的知识。在深入ATL之前可以用它复习COM知识。...

    【插图】

    chatu
    评论交流

    共有83人开贴评论  106人参与评论  73人参与打分 查看

    32人
     43%
    用户平均打分
    我要写评论 help如何参与评论和打分
    17人
     23%
    9人
     12%
    4人
     5%
    11人
     15%

    liliar
    一级评论员
    该会员在china-pub购买过此书
    评价等级:  
    发表于:2010-1-28 13:25:00
    感觉还行,属于工具书,要用的时候查查。内容比较全面,书比较厚实。价格也比较高。呵呵
    您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

    jiangjunjei23

    一级评论员
    该会员在china-pub购买过此书
    评价等级:  
    发表于:2009-4-10 15:38:00
    我看过本书的第一版, 本书从技术上讲可以深入理解ATL如何去实现COM,从架构上讲可以学到如何设计重用性高、高度灵活的一套类库。
    您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

    wk19830318

    三级评论员
    该会员在china-pub购买过此书
    评价等级:  
    发表于:2010-7-16 11:28:00
    一直就是ATL开发人员不可或缺的书籍!!

    基础最重要!
    您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

    yandesheng
    一级评论员
    该会员在china-pub购买过此书
      
    发表于:2010-5-13 7:46:00
    ALT知识速查手册
    您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)

    orochi717

    三级评论员
    该会员在china-pub购买过此书
    评价等级:  
    发表于:2010-4-10 12:35:00
    这本书不错,作为参考手册相当不错
    您觉得呢? 送鲜花 (得0支)  扔鸡蛋 (得0个)
    我要写评论
    查看所有评论交流(共83条)