Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

The Message Queuing (MSMQ) service makes it possible for applications to communicate with other applications across networks and systems that might be temporarily offline.

To accomplish this, applications communicate by sending messages to a message queue. A single queue, which can be located on the same device as the sending or receiving application, or on another device available to both applications, can hold messages for both the sending and receiving applications.

When the receiving application is restarted, or the network connection is reestablished, the receiving application reads the messages stored in the queue. The receiving application can be on another device or any device running a version of Microsoft Windows that supports MSMQ workgroups.

This communication takes place without the need for applications to establish, maintain, or even know about the communication conduit being used.

This means that with the MSMQ API you can create distributed applications without the programming overhead associated with creating and maintaining network connections and persistent data buffering.

To use the MSMQ API, add the following files to your build environment:

  • Msmqrt.lib, the import library for MSMQ APIs.

  • Mq.h, the master header file.

The topics in this section describe the programming model for MSMQ and provide guidelines for developing, administering, configuring, and troubleshooting a message-queuing application.

This documentation targets the differences between this implementation of MSMQ and the Microsoft Windows NT implementation of MSMQ and is not intended to be a comprehensive guide to programming with the MSMQ API.

Familiarity with the MSMQ API, messaging, and distributed programming concepts is assumed.

Background and conceptual information are available through the following resources:

Several sample message-queuing programs and a collection of utilities for administering, installing, and debugging MSMQ applications are included with this SDK.

See Also