ATL Internals: Working with ATL 8, 2/e

Christopher Tavares, Kirk Fertitta, Brent E. Rector, Chris Sells

  • 出版商: Addison Wesley
  • 出版日期: 2006-07-01
  • 定價: $2,450
  • 售價: 8.0$1,960
  • 語言: 英文
  • 頁數: 888
  • 裝訂: Paperback
  • ISBN: 0321159624
  • ISBN-13: 9780321159625
  • 立即出貨(限量) (庫存=4)




The Classic Guide to ATL–Now Updated for ATL 8 and Visual Studio 2005


Four leading Windows programming experts systematically reveal ATL’s inner workings, explaining not just how ATL works, but why it works the way it does. Client-side developers will master ATL’s resources for windowing, COM control, MFC integration, web service proxy generation, and more. Server-side programmers will discover ATL’s full COM server and object services, and its extensive support for high-throughput, high-concurrency web applications, and services. Every Windows developer will learn powerful ways to increase flexibility, reduce overhead, and maximize transparency and control.


• Discover ATL’s internals through diagrams, example code, and internal ATL implementation code

• Walk through wizards that simplify ATL usage in common applications

• Master string handling in C++, COM, and ATL

• Leverage ATL smart types, including CComPtr, CComQIPtr, CComBSTR, and CComVariant

• Understand and choose the right options for implementing IUnknown

• Create glue code that exposes COM objects from COM servers

• Use canned interface implementations to support object persistence, COM collections, enumerators, and connection points

• Build standalone applications and UI components with ATL window classes and controls

• Use ATL Server to develop web applications that run on Microsoft IIS


Table of Contents

Foreword to the Second Edition  xiii

Foreword to the First Edition  xv

Preface  xvii

About the Authors  xxiii

Chapter 1        Hello, ATL  1

Chapter 2        Strings and Text  43

Chapter 3        ATL Smart Types  99

Chapter 4        Objects in ATL  175

Chapter 5        COM Servers  243

Chapter 6        Interface Maps  299

Chapter 7        Persistence in ATL  345

Chapter 8        Collections and Enumerators  381

Chapter 9        Connection Points  441

Chapter 10      Windowing  489

Chapter 11      ActiveX Controls  567

Chapter 12      Control Containment  631

Chapter 13      Hello, ATL Server: A Modern C++ Web Platform  699

Chapter 14      ATL Server Internals  739

Appendix A      C++ Templates by Example  787

Appendix B      ATL Header Files  799

Appendix C      Moving to ATL 8  803

Appendix D      Attributed ATL  815

Index  827