L'autore:
strongStephen R.G. Fraser/strong has over 15 years of information technology experience working for a number of consulting companies, ranging from the large consulting firms of Electronic Data Systems and Andersen Consulting (Accenture) to a number of smaller e-business companies. His IT experience covers all aspects of application and web development and management, ranging from initial concept all the way through to deployment. Stephen resides with his beautiful wife, Sarah, and daughter, Shaina, in the Silicon Valley.
Contenuti:
Pro Visual C++/CLI and
the .NET 2.0 Platform
■ ■ ■
Stephen R. G. Fraser
Pro Visual C++/CLI and the .NET 2.0 Platform
Copyright © 2006 by Stephen R.G. Fraser
All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording, or by any information storage or retrieval
system, without the prior written permission of the copyright owner and the publisher.
ISBN: 1-59059-640-4
Library of Congress Cataloging-in-Publication data is available upon request.
Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1
Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence
of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark
owner, with no intention of infringement of the trademark.
Lead Editor: Ewan Buckingham
Technical Reviewer: Don Reamey
Editorial Board: Steve Anglin, Dan Appleman, Ewan Buckingham, Gary Cornell, Tony Davis, Jason Gilmore,
Jonathan Hassell, Chris Mills, Dominic Shakeshaft, Jim Sumser
Project Managers: Laura Cheu, Richard Dal Porto
Copy Edit Manager: Nicole LeClerc
Copy Editors: Freelance Editorial Services, Ami Knox, Liz Welch
Assistant Production Director: Kari Brooks-Copony
Production Editor: Katie Stence
Compositor: Susan Gilnert
Proofreader: Elizabeth Berry
Indexer: John Collin
Artist: April Milne
Interior Designer: Van Winkle Design Group
Cover Designer: Kurt Krames
Manufacturing Director: Tom Debolski
Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor,
New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail orders-ny@springer-sbm.com, or
visit http://www.springeronline.com.
For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA
94710. Phone 510-549-5930, fax 510-549-5939, e-mail info@apress.com, or visit http://www.apress.com.
The information in this book is distributed on an “as is” basis, without warranty. Although every precaution
has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to
any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly
by the information contained in this work.
The source code for this book is available to readers at http://www.apress.com in the Source Code section.
You will need to answer questions pertaining to this book in order to successfully download the code.
v
Contents at a Glance
Foreword by Stanley B. Lippman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi
About the Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxi
About the Technical Reviewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxxiii
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxv
PART 1 ■ ■ ■ The C++/CLI Language
■CHAPTER 1 Overview of the .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
■CHAPTER 2 C++/CLI Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
■CHAPTER 3 Object-Oriented C++/CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
■CHAPTER 4 Advanced C++/CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
PART 2 ■ ■ ■ .NET Framework Development
in C++/CLI
■CHAPTER 5 The .NET Framework Class Library . . . . . . . . . . . . . . . . . . . . . . . . . . 193
■CHAPTER 6 Integrated XML Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
■CHAPTER 7 Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
■CHAPTER 8 Input, Output, and Serialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
■CHAPTER 9 Basic Windows Forms Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 309
■CHAPTER 10 Advanced Windows Forms Applications . . . . . . . . . . . . . . . . . . . . . . 377
■CHAPTER 11 Graphics Using GDI+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
■CHAPTER 12 ADO.NET and Database Development . . . . . . . . . . . . . . . . . . . . . . . . 515
■CHAPTER 13 XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
■CHAPTER 14 Windows Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
■CHAPTER 15 Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
■CHAPTER 16 Multithreaded Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
vi ■CONTENTS AT A GLANCE
■CHAPTER 17 Network Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
■CHAPTER 18 Assembly Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729
■CHAPTER 19 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
PART 3 ■ ■ ■ Unsafe/Unmanaged C++/CLI
■CHAPTER 20 Unsafe C++ .NET Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805
■CHAPTER 21 Advanced Unsafe or Unmanaged C++ .NET Programming . . . . . 825
■INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847
Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.