MessageQueueException Klasa

Definicja

Wyjątek zgłaszany w przypadku wystąpienia błędu wewnętrznego kolejkowania komunikatów Microsoft.

public ref class MessageQueueException : System::Runtime::InteropServices::ExternalException
[System.Serializable]
public class MessageQueueException : System.Runtime.InteropServices.ExternalException
[<System.Serializable>]
type MessageQueueException = class
    inherit ExternalException
    interface ISerializable
[<System.Serializable>]
type MessageQueueException = class
    inherit ExternalException
Public Class MessageQueueException
Inherits ExternalException
Dziedziczenie
Atrybuty
Implementuje

Przykłady

#using <system.dll>
#using <system.messaging.dll>

using namespace System;
using namespace System::Messaging;
int 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 0;
}
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;
        }
    }
}
Imports System.Messaging



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

End Class

Uwagi

Wyjątki skojarzone z klasą MessageQueueException są generowane przez wewnętrzne błędy w usłudze kolejkowania komunikatów, które powinny być rozpatrywane za pośrednictwem kodu.

Każdy wyjątek składa się z kodu błędu i ciągu tekstowego opisującego źródło błędu. Zobacz klasę, MessageQueueErrorCode aby uzyskać listę tych kodów błędów i ich opisy.

Jeśli kolejka MessageQueue zostanie otwarta z parametrem sharedModeDenyReceive ustawionym na wartość true, każda MessageQueue , która następnie spróbuje odczytać z kolejki, wygeneruje MessageQueueException wyjątek z powodu naruszenia udostępniania. Ten sam wyjątek jest zgłaszany, jeśli MessageQueue próba uzyskania dostępu do kolejki w trybie wyłącznym, podczas gdy inny MessageQueue ma już niejednoznaczny dostęp do kolejki.

tag alertu nie jest obsługiwany!!!!
MessageQueueTransaction jest wątkowo-apartament-aware. Visual Basic ustawia stan głównego wątku na STA, więc należy zastosować element MTAThreadAttribute w podproceducji Main . W przeciwnym razie wysłanie komunikatu transakcyjnego przy użyciu innego wątku zgłasza MessageQueueException wyjątek.

Konstruktory

MessageQueueException(SerializationInfo, StreamingContext)

Inicjuje nowe wystąpienie klasy MessageQueueException z zserializowanymi danymi.

Właściwości

Data

Pobiera kolekcję par klucz/wartość, które zapewniają dodatkowe informacje zdefiniowane przez użytkownika dotyczące wyjątku.

(Odziedziczone po Exception)
ErrorCode

HRESULT Pobiera błąd.

(Odziedziczone po ExternalException)
HelpLink

Pobiera lub ustawia link do pliku pomocy skojarzonego z tym wyjątkiem.

(Odziedziczone po Exception)
HResult

Pobiera lub ustawia HRESULT, zakodowaną wartość liczbową przypisaną do określonego wyjątku.

(Odziedziczone po Exception)
InnerException

Exception Pobiera wystąpienie, które spowodowało bieżący wyjątek.

(Odziedziczone po Exception)
Message

Pobiera wartość opisową błędu kolejkowania komunikatów.

MessageQueueErrorCode

Pobiera wartość wskazującą kod błędu skojarzony z tym wyjątkiem.

Source

Pobiera lub ustawia nazwę aplikacji lub obiektu, który powoduje błąd.

(Odziedziczone po Exception)
StackTrace

Pobiera reprezentację ciągu natychmiastowych ramek na stosie wywołań.

(Odziedziczone po Exception)
TargetSite

Pobiera metodę, która zgłasza bieżący wyjątek.

(Odziedziczone po Exception)

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetBaseException()

Po przesłonięciu w klasie pochodnej funkcja zwraca Exception główną przyczynę co najmniej jednego kolejnego wyjątku.

(Odziedziczone po Exception)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetObjectData(SerializationInfo, StreamingContext)

Wypełnia obiekt informacji o serializacji danymi wymaganymi do serializacji obiektu MessageQueueException.

GetType()

Pobiera typ środowiska uruchomieniowego bieżącego wystąpienia.

(Odziedziczone po Exception)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg zawierający wartość HRESULT błędu.

(Odziedziczone po ExternalException)

Zdarzenia

SerializeObjectState
Przestarzałe.

Występuje, gdy wyjątek jest serializowany w celu utworzenia obiektu stanu wyjątku, który zawiera serializowane dane dotyczące wyjątku.

(Odziedziczone po Exception)

Dotyczy

Zobacz też