I use COM in this book not because I want to but because I have to. Having made the decision to use MSXML for the C++ implementation, I have to use COM. MSXML is a COM server component. The applications developed in this book are clients of the services it offers. In this appendix I'll try to give you just enough COM so that you can comfortably do client-side COM programming using MSXML. COM is very complex and this appendix doesn't even scratch the surface. In addition, with .NET out and about, COM is legacy technology. So, you probably don't want to spend any more time learning it than you have to.
Let's start at the beginning with how to tell the compiler we're using MSXML and the choices that gives us. Then we'll discuss initialization and a bit more about resource management. After touching on errors and exceptions, we'll finish up with some COM data types and helper classes.