Now that you have a good idea of how MSMQ works, we'll move on and look at how we interact with it from our applications and components. MSMQ supports two programming approaches, the MSMQ API (Application Programming Interface) and a set of ActiveX (COM) objects that act as wrappers for the API functions.
It's probably obvious that the previous example used the API method, through a sample tool written in C++ and supplied with MSMQ. This technique is fine for languages that can use API functions, and offers the best performance. However, programming with the ActiveX objects is generally easier, and, as the actual amount of code that we use is minimal, performance is not generally an issue. Besides, some languages cannot support API function calling, the most obvious of which are the scripting languages available for use in Active Server Pages.
We'll be exploring the ActiveX objects in the remainder of this book, as this approach is open to all the usual Windows DNA programming languages.