Copyright © 2002 Ingo Rammer
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.
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.
Technical Reviewer: Kent Sharkey
Editorial Directors: Dan Appleman, Peter Blackburn, Gary Cornell, Jason Gilmore, Karen Watterson, John Zukowski
Managing Editor: Grace Wong
Project Manager: Alexa Stuart
Copy Editor: Ami Knox
Production Editor: Julianna Scott Fein
Compositor and Illustrator: Impressions Book and Journal Services, Inc.
Indexer: Valerie Haynes Perry
Cover Designer: Tom Debolski
Marketing Manager: Stephanie Rodriguez
Distributed to the book trade in the United States by Springer-Verlag New York, Inc., 175 Fifth Avenue, New York, NY, 10010 and outside the United States by Springer-Verlag GmbH & Co. KG, Tiergartenstr. 17, 69112 Heidelberg, Germany.
In the United States, phone 1-800-SPRINGER, Email email@example.com, or visit http://www.springer-ny.com.
Outside the United States, fax +49 6221 345229, Email firstname.lastname@example.org, or visit http://www.springer.de.
For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710.
Email email@example.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 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 Downloads section.
Each day that starts with you being nearby can only turn out great.
I love you.
About the Author
Ingo Rammer is CEO and cofounder of Sycom Software, an Austrian software consulting company. He started his professional career years ago with obscure scripting languages such as Perl and Tcl/Tk on various versions of Unix. Shortly after this he converted to the Windows platform and created some large-scale distributed applications with Visual Basic and ASP. He implemented cross-platform remote procedure calls using XML and HTTP POST way before the term "Web Services" had been coined for this technology, and he still focuses on the integration of applications written in different programming languages and platforms.
About the Technical Reviewer
Kent Sharkey is currently employed at Microsoft as a Technical Evangelist for the .NET Framework and Visual Studio .NET. He roams the land striving to smite the heretics, convert the heathens, and celebrate the faithful. In between he sleeps (far too little), bangs his head against the .NET Framework (far too often, with little result), and tries to help everyone however he can. He lives in Redmond with the three women of his life: Margaret (the wife), Squirrel (the warrior), and Cica (the princess).
I started writing my first computer programs mostly due to my father, who was interested in computers at a time when only a few people saw the potential in this upcoming technology. His enthusiasm about computers made it possible for me to play around with such weird devices as the Commodore Plus 4, the Sinclair QL, and the Philips MSX-2 at about the age of ten or eleven. All of those computers had one thing in common-as soon as they had been powered on, you landed in the programming language, which of course was BASIC at that time (the real one, when AUTO 10 was essential). Learning to program computers therefore has been an almost natural activity for me. I really want to thank both my mother Helga and my father Willi for giving me a great childhood and for providing me with all the support I needed to quench my thirst for knowledge at this time.
The person who shaped the greatest part of my professional life was Juergen Nitsche, who dared to employ me as the lead programmer for a series of custom business applications when I was a 16-year-old high school boy. This partnership turned out so well that about four years later we founded our own company, of which we both are still CEOs and owners. Thanks for your trusting me from the beginning.
I also want to say thanks to my fellows at the NOVA framework team, especially Christian "Gumbo" Wehrl and Harald Haefele, for bearing with my absence during the course of writing this book and for all the great VB vs. Java vs. C++ vs. .NET discussions we had. Best wishes also to Robert "Stony" Steinfest, who has the most interesting developer personality I've ever come across. Your unique, friendly way of dealing with users, testers, and junior programmers alike really is legendary. You guys are brilliant!
As I sometimes get too obsessed about working with Microsoft technology, kudos go out to Edgar Hucek and Markus Gaertner for reminding me that this world is about choices. (That is, Ed is a real Open Source fan and Markus is the best Java guru I've gotten to know.)
I also want to thank Jay "Saurik" Freeman for creating the Anakrino MSIL-to-C# decompiler. This tool allowed me to understand the .NET Remoting Framework at a level that made it possible for me to write this book. If you also want or need to understand one or another part of the .NET platform, be sure to grab a free copy of this tool at http://www.anakrino.org.
Last but not least, this book would not have been possible without the great Apress team who worked with me during the last months. This starts with Dan Appleman and Gary Cornell, who gave me the opportunity to write for the best publisher when it comes to .NET books. I also want to thank Kent Sharkey from Microsoft for agreeing to tech review this book. My biggest thanks go out to Ami Knox, who was my copy editor and who really managed to turn my manuscripts into a readable and understandable book. Possibly the most important person on this endeavor was Alexa Stuart, who mastered to "herd the cats" and kept us all on track while working on this book. Kudos also go out to all the people at Apress who did not work directly with me but whose effort definitely influenced the success of this book: Stephanie, Julianna, Grace, Doris, and everyone else who worked with us but whose name I do not yet know.
Working with all of you was great!