Export (0) Print
Expand All

MessageQueueException Class

The exception that is thrown if a Microsoft Message Queuing internal error occurs.

For a list of all members of this type, see MessageQueueException Members.

System.Object
   System.Exception
      System.SystemException
         System.Runtime.InteropServices.ExternalException
            System.Messaging.MessageQueueException

[Visual Basic]
<Serializable>
Public Class MessageQueueException
   Inherits ExternalException
[C#]
[Serializable]
public class MessageQueueException : ExternalException
[C++]
[Serializable]
public __gc class MessageQueueException : public ExternalException
[JScript]
public
   Serializable
class MessageQueueException extends ExternalException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Remarks

Exceptions associated with the MessageQueueException class are generated by internal errors within Message Queuing that should be dealt with through your code.

Every exception consists of an error code and a text string that describes the source of the error. See the MessageQueueErrorCode class for a list of these error codes and their descriptions.

Example

[Visual Basic] 
Imports System
Imports System.Messaging

Namespace MyProject

    '/ <summary>
    '/ Provides a container class for the example.
    '/ </summary>
    Public Class MyNewQueue


        '**************************************************
        ' Provides an entry point into the application.
        '         
        ' This example verifies existence and attempts to 
        ' delete a queue.
        '**************************************************

        Public Shared Sub Main()

            ' Determine whether the queue exists.
            If MessageQueue.Exists(".\myQueue") Then

                Try

                    ' Delete the queue.
                    MessageQueue.Delete(".\myQueue")

                Catch e As MessageQueueException

                    If e.MessageQueueErrorCode = _
                        MessageQueueErrorCode.AccessDenied Then

                        Console.WriteLine("Access is denied. " _
                            + "Queue might be a system queue.")
                    End If

                    ' Handle other sources of exceptions as necessary.

                End Try

            End If


            Return

        End Sub 'Main

    End Class 'MyNewQueue 
End Namespace 'MyProject

[C#] 
using System;
using System.Messaging;

namespace MyProject
{
    /// <summary>
    /// Provides a container class for the example.
    /// </summary>
    public class MyNewQueue
    {

        //**************************************************
        // Provides an entry point into the application.
        //         
        // This example verifies existence and attempts to 
        // delete a queue.
        //**************************************************

        public static void Main()
        {

            // Determine whether the queue exists.
            if (MessageQueue.Exists(".\\myQueue"))
            {
                try
                {
                    // Delete the queue.
                    MessageQueue.Delete(".\\myQueue");
                }
                catch(MessageQueueException e)
                {
                    if(e.MessageQueueErrorCode == 
                        MessageQueueErrorCode.AccessDenied)
                    {
                        Console.WriteLine("Access is denied. " + 
                            "Queue might be a system queue.");
                    }

                    // Handle other sources of MessageQueueException.
                }

            }
        
            return;
        }

    }
}

[C++] 
#using <mscorlib.dll>
#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;

int main() 
{
    // Determine whether the queue exists.
    if (MessageQueue::Exists(S".\\myQueue")) 
    {
        try 
        {
            // Delete the queue.
            MessageQueue::Delete(S".\\myQueue");
        }
        catch (MessageQueueException* e) 
        {
            if (e->MessageQueueErrorCode == 
                MessageQueueErrorCode::AccessDenied) 
            {
                Console::WriteLine(S"Access is denied. Queue might be a system queue.");
            }
            // Handle other sources of MessageQueueException.
        }

    }

    return 0;
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Namespace: System.Messaging

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

Assembly: System.Messaging (in System.Messaging.dll)

See Also

MessageQueueException Members | System.Messaging Namespace | MessageQueueErrorCode | MessageQueue | Message

Show:
© 2014 Microsoft