Outgoing Service Example

This example retrieves an MSMQ message from the Outgoing Service queue. This example requires references to the System.Messaging and System.XML assemblies.

Notice how the example performs the following steps:

  • Creates a MessageQueue object to access the Outgoing Service's message queue.
  • Creates the MSMQ Formatter, MessageQueueTransaction, and Message objects.
  • Retrieves the message from the queue.
  • Retrieves the string from the Message object
  • Loads the string into an XML document object and uses it to display the XML in a textbox. To allow access to specific XML elements and values, the example parses the string into XML. Refer to the .NET Framework documentation for information about creating XML from a string.
Private Sub GetMessage()
    'Create queue object to retrieve messages from the default outgoing queue
    Dim MyQueue As New MessageQueue(".\private$\econnect_outgoing")
    'Create an MSMQ formatter and transaction objects
    MyQueue.Formatter = New ActiveXMessageFormatter
    Dim MyTransaction As New MessageQueueTransaction
    'Create a message object
    Dim MyMessage As Message
    Try
        'Retrieve a message from the queue
        'This example assumes there is always a message waiting in the queue
        MyTransaction.Begin()
        MyMessage = MyQueue.Receive(MyTransaction)
        MyTransaction.Commit()
        'Retrieve the string from the message
        Dim MyDocument As [String] = CType(MyMessage.Body, [String])
        'Load the string into an XML document object
        Dim MyXml As New XmlDocument
        MyXml.LoadXml(MyDocument)
        'Display the XML from the queue message
        MessageText.Text = MyXml.InnerXml
    Catch err As SystemException
        ErrorText.Text = err.InnerException.ToString()
    End Try
End Sub