ATL技術內幕

ATL技術內幕

《ATL技術內幕》是2003年5月科學出版社出版的圖書,作者是(美)雷克托(BrentRector)、(美)塞爾斯。

內容簡介

ATL是一組小而靈活的類,可用於開發COM組件。本書對ATL的內部工作原理做了深入的剖析,詳細介紹了關於ATL設計的基礎知識和體系結構,展示了ATL如何與COM相匹配,並對一些重要的實施細節做了具體提示。在此基礎上,對ATL的一些高級內容和功能做了充分的介紹。更為重要的是,本書還指出了ATL存在的一些缺陷,並告訴讀者如何去避免。

本書具有一定的技術深度,適合有經驗的COM和VC++程式設計師閱讀。

Brent Rector is President of Wise Owl Consulting,Inc., a form that specializes in Windows/COM development and consulting.He also teaches classes on COM, ATL,and MTS for DevelpMentor,a leading COM education firm.His previous books include Win32 Programming ,Developing windows 3 Applications with Microsoft SDK,and Developing Windows 3.1 Applications with Microsoft C/C++.He received the Microsoft Annual MVP award for his contributions to CompuServe's Windows forums.

Chris Sells Works as an independent consultant specializing in design and development using COM.He is also a COM C++, and ATL instructor for DevelopMentor,where he authored the Essential ATL five-day shor course.His previous books include Effective COM and Windows Telephony Programming .He is a contributor to the Visual C++ Developer's Journal and the Visual C++ Professional newsletter,and a frequent speaker at conferences ,including Software Development,WinDev,and the Visual C++ Developer's Conference.

圖書目錄

Foreword
Preface
Chapter 1 Hello,ATL
What Is ATL?
Creating a COM Server
Inserting a COM Class
Adding Properties and Methods
Implementing Additional Interfaces
Support for Scripting
Adding Persistence
Adding and Firing Events
Using a Window
Implementing Component Categories
Adding a User Interface
Hosting a Control
Summary
Chapter 2 ATL Smart Types:Strings,BSTRs,VARIANTs,and Interface Pointers
String data Types,Conversion Macros,and Helper Functions
The CComBSTR Smart BSTR Class
The CComBSTR Class
The ComVariant Smart VARIANT Class
The CComPtr,CComQIPtr,and CcomDispatchDriver Smart Pointer Classes
Summary
Chapter 3 Objects in ATL
Recall:COM Apartments
Implementing IUnknown
The Layers of ATL
Threading Model Support
The Core of IUnknown
Your Class
CComObject et al.
ATL Creators
Debugging
Summary
Chapter 4 COM Servers
A Review of COM Servers
The Object Map and the CComModule Class
The Object Map
Methods Required of an Object Map Class
The CComModule
CComCoClass Revisited
Server Optimization Compilation Options
Summary
Chapter 5 Interface Maps
Recall:COM Identity
Table-Driven QueryInterface
Multiple Interfaces
Aggregation:The Controlling Outer
Interface Map Tricks
Summary
Chapter 6 Persistence in ATL
A Review of COM Persistence
AT L Persistence Implementation Classes
The Property Map
The Persistence Implementations
Additional Persistence Implementations
Adding Marshal-by-Value Semantics Using Persistence
Summary
Chapter 7 Collections and Enumerators
COM Collections and Enumerators Interface
Enumerating Arrays
Enumerating STL Collections
Collections
STL Collections of ATL Data Types
Simple Collections
Object Models
Summary
Chapter 8 Connection Points
A Review of Connection Points
Creating an ATL-Based Connectable Object
Creating an Object That Is an Event Recipient
How It All Works:The Messy Implementation Details
Summary
Chapter 9 Windowing
The Structure of a Windows Application
CWindow
CWindowImpl
CDialogImpl
Windows Control Wrappers
CContainedWindow
Summary
Chapter 10 ActiveX Controls
A Review of ActiveX Controls
The BullsEye Control Requirements
Creating the Initial Control Using the ATL Wizard
The Initial BullsEye Source Files
Developing the BullsEye Control Step by Step
Summary
Chapter 11 Control Containment
How Controls Are Contained
Basic Control Containment
Hosting a Control in Dialog
Composite Controls
HTML Controls
ATLs Control Containment Limitations
Summary
Appendix A C++ Templates by Example
The Need for Templates
Template Basics
A Different Kind of Polymorphism
Function Templates
Member Function Templates
Summary
Appendix B ATL Classes and Headers
Index

相關詞條

相關搜尋

熱門詞條

聯絡我們