Freigeben über


MessageQueue Konstruktoren

Definition

Initialisiert eine neue Instanz der MessageQueue-Klasse.

Überlädt

Name Beschreibung
MessageQueue()

Initialisiert eine neue Instanz der MessageQueue-Klasse. Nachdem der parameterlose Konstruktor die neue Instanz initialisiert hat, müssen Sie die Eigenschaft der Instanz Path festlegen, bevor Sie die Instanz verwenden können.

MessageQueue(String)

Initialisiert eine neue Instanz der MessageQueue Klasse, die auf die Message Queuing-Warteschlange im angegebenen Pfad verweist.

MessageQueue(String, Boolean)

Initialisiert eine neue Instanz der MessageQueue Klasse, die auf die Message Queuing-Warteschlange im angegebenen Pfad und mit der angegebenen Lesezugriffseinschränkung verweist.

MessageQueue(String, QueueAccessMode)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

MessageQueue(String, Boolean, Boolean)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

MessageQueue(String, Boolean, Boolean, QueueAccessMode)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

MessageQueue()

Initialisiert eine neue Instanz der MessageQueue-Klasse. Nachdem der parameterlose Konstruktor die neue Instanz initialisiert hat, müssen Sie die Eigenschaft der Instanz Path festlegen, bevor Sie die Instanz verwenden können.

public:
 MessageQueue();
public MessageQueue();
Public Sub New ()

Beispiele

Im folgenden Codebeispiel wird ein neues MessageQueue.

// Connect to a queue on the local computer. You must set the queue's
// Path property before you can use the queue.
MessageQueue queue = new MessageQueue();
queue.Path = ".\\exampleQueue";

Hinweise

Verwenden Sie diese Überladung, um eine neue Instanz der Klasse zu erstellen, die MessageQueue nicht sofort an eine Warteschlange auf dem Message Queuing-Server gebunden ist. Bevor Sie diese Instanz verwenden, müssen Sie sie mit einer vorhandenen Message Queuing-Warteschlange verbinden, indem Sie die Path Eigenschaft festlegen. Alternativ können Sie den Verweis auf den Rückgabewert der MessageQueueCreate(String) Methode festlegen und so eine neue Message Queuing-Warteschlange erstellen.

Der MessageQueue Konstruktor instanziiert eine neue Instanz der MessageQueue Klasse. Er erstellt keine neue Message Queuing-Warteschlange.

In der folgenden Tabelle sind die anfänglichen Eigenschaftswerte für eine Instanz von MessageQueue.

Eigentum Anfangswert
DefaultPropertiesToSend Die Werte, die vom parameterlosen Konstruktor der DefaultPropertiesToSend Klasse festgelegt werden.
Formatter XmlMessageFormatter
MessageReadPropertyFilter Die Werte, die vom parameterlosen Konstruktor der MessagePropertyFilter Klasse festgelegt werden. Alle Filterwerte werden auf true.
DenySharedReceive false

Weitere Informationen

Gilt für:

MessageQueue(String)

Initialisiert eine neue Instanz der MessageQueue Klasse, die auf die Message Queuing-Warteschlange im angegebenen Pfad verweist.

public:
 MessageQueue(System::String ^ path);
public MessageQueue(string path);
new System.Messaging.MessageQueue : string -> System.Messaging.MessageQueue
Public Sub New (path As String)

Parameter

path
String

Der Speicherort der Warteschlange, auf die von diesem MessageQueueverwiesen wird.

Ausnahmen

Die Path Eigenschaft ist ungültig, möglicherweise weil sie nicht festgelegt wurde.

Beispiele

Im folgenden Codebeispiel werden neue MessageQueue Objekte mit verschiedenen Pfadnamensyntaxtypen erstellt. In jedem Fall sendet sie eine Nachricht an die Warteschlange, deren Pfad im Konstruktor definiert ist.

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

using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:

   // References public queues.
   void SendPublic()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue" );
      myQueue->Send( "Public queue by path name." );
      return;
   }


   // References private queues.
   void SendPrivate()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( ".\\Private$\\myQueue" );
      myQueue->Send( "Private queue by path name." );
      return;
   }


   // References queues by label.
   void SendByLabel()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( "Label:TheLabel" );
      myQueue->Send( "Queue by label." );
      return;
   }


   // References queues by format name.
   void SendByFormatName()
   {
      MessageQueue^ myQueue = gcnew MessageQueue( "FormatName:Public=5A5F7535-AE9A-41d4 -935C-845C2AFF7112" );
      myQueue->Send( "Queue by format name." );
      return;
   }


   // References computer journal queues.
   void MonitorComputerJournal()
   {
      MessageQueue^ computerJournal = gcnew MessageQueue( ".\\Journal$" );
      while ( true )
      {
         Message^ journalMessage = computerJournal->Receive();
         
         // Process the journal message.
      }
   }


   // References queue journal queues.
   void MonitorQueueJournal()
   {
      MessageQueue^ queueJournal = gcnew MessageQueue( ".\\myQueue\\Journal$" );
      while ( true )
      {
         Message^ journalMessage = queueJournal->Receive();
         
         // Process the journal message.
      }
   }


   // References dead-letter queues.
   void MonitorDeadLetter()
   {
      MessageQueue^ deadLetter = gcnew MessageQueue( ".\\DeadLetter$" );
      while ( true )
      {
         Message^ deadMessage = deadLetter->Receive();
         
         // Process the dead-letter message.
      }
   }


   // References transactional dead-letter queues.
   void MonitorTransactionalDeadLetter()
   {
      MessageQueue^ TxDeadLetter = gcnew MessageQueue( ".\\XactDeadLetter$" );
      while ( true )
      {
         Message^ txDeadLetter = TxDeadLetter->Receive();
         
         // Process the transactional dead-letter message.
      }
   }

};


//*************************************************
// Provides an entry point into the application.
//         
// This example demonstrates several ways to set
// a queue's path.
//*************************************************
int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   myNewQueue->SendPublic();
   myNewQueue->SendPrivate();
   myNewQueue->SendByLabel();
   myNewQueue->SendByFormatName();
   myNewQueue->MonitorComputerJournal();
   myNewQueue->MonitorQueueJournal();
   myNewQueue->MonitorDeadLetter();
   myNewQueue->MonitorTransactionalDeadLetter();
   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 demonstrates several ways to set
        // a queue's path.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            myNewQueue.SendPublic();
            myNewQueue.SendPrivate();
            myNewQueue.SendByLabel();
            myNewQueue.SendByFormatName();
            myNewQueue.MonitorComputerJournal();
            myNewQueue.MonitorQueueJournal();
            myNewQueue.MonitorDeadLetter();
            myNewQueue.MonitorTransactionalDeadLetter();

            return;
        }
        
        // References public queues.
        public void SendPublic()
        {
            MessageQueue myQueue = new MessageQueue(".\\myQueue");
            myQueue.Send("Public queue by path name.");

            return;
        }

        // References private queues.
        public void SendPrivate()
        {
            MessageQueue myQueue = new
                MessageQueue(".\\Private$\\myQueue");
            myQueue.Send("Private queue by path name.");

            return;
        }

        // References queues by label.
        public void SendByLabel()
        {
            MessageQueue myQueue = new MessageQueue("Label:TheLabel");
            myQueue.Send("Queue by label.");

            return;
        }

        // References queues by format name.
        public void SendByFormatName()
        {
            MessageQueue myQueue = new
                MessageQueue("FormatName:Public=5A5F7535-AE9A-41d4" +
                "-935C-845C2AFF7112");
            myQueue.Send("Queue by format name.");

            return;
        }

        // References computer journal queues.
        public void MonitorComputerJournal()
        {
            MessageQueue computerJournal = new
                MessageQueue(".\\Journal$");
            while(true)
            {
                Message journalMessage = computerJournal.Receive();
                // Process the journal message.
            }
        }

        // References queue journal queues.
        public void MonitorQueueJournal()
        {
            MessageQueue queueJournal = new
                MessageQueue(".\\myQueue\\Journal$");
            while(true)
            {
                Message journalMessage = queueJournal.Receive();
                // Process the journal message.
            }
        }
        
        // References dead-letter queues.
        public void MonitorDeadLetter()
        {
            MessageQueue deadLetter = new
                MessageQueue(".\\DeadLetter$");
            while(true)
            {
                Message deadMessage = deadLetter.Receive();
                // Process the dead-letter message.
            }
        }

        // References transactional dead-letter queues.
        public void MonitorTransactionalDeadLetter()
        {
            MessageQueue TxDeadLetter = new
                MessageQueue(".\\XactDeadLetter$");
            while(true)
            {
                Message txDeadLetter = TxDeadLetter.Receive();
                // Process the transactional dead-letter message.
            }
        }
    }
}
Imports System.Messaging

Public Class MyNewQueue


        
        ' Provides an entry point into the application.
        '		 
        ' This example demonstrates several ways to set
        ' a queue's path.
        

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            myNewQueue.SendPublic()
            myNewQueue.SendPrivate()
            myNewQueue.SendByLabel()
            myNewQueue.SendByFormatName()
            myNewQueue.MonitorComputerJournal()
            myNewQueue.MonitorQueueJournal()
            myNewQueue.MonitorDeadLetter()
            myNewQueue.MonitorTransactionalDeadLetter()

            Return

        End Sub


        ' References public queues.
        Public Sub SendPublic()

            Dim myQueue As New MessageQueue(".\myQueue")
            myQueue.Send("Public queue by path name.")

            Return

        End Sub


        ' References private queues.
        Public Sub SendPrivate()

            Dim myQueue As New MessageQueue(".\Private$\myQueue")
            myQueue.Send("Private queue by path name.")

            Return

        End Sub


        ' References queues by label.
        Public Sub SendByLabel()

            Dim myQueue As New MessageQueue("Label:TheLabel")
            myQueue.Send("Queue by label.")

            Return

        End Sub


        ' References queues by format name.
        Public Sub SendByFormatName()

            Dim myQueue As New _
                MessageQueue("FormatName:Public=" + _
                    "5A5F7535-AE9A-41d4-935C-845C2AFF7112")
            myQueue.Send("Queue by format name.")

            Return

        End Sub


        ' References computer journal queues.
        Public Sub MonitorComputerJournal()

            Dim computerJournal As New MessageQueue(".\Journal$")

            While True

                Dim journalMessage As Message = _
                    computerJournal.Receive()

                ' Process the journal message.

            End While

            Return
        End Sub


        ' References queue journal queues.
        Public Sub MonitorQueueJournal()

            Dim queueJournal As New _
                            MessageQueue(".\myQueue\Journal$")

            While True

                Dim journalMessage As Message = _
                    queueJournal.Receive()

                ' Process the journal message.

            End While

            Return
        End Sub


        ' References dead-letter queues.
        Public Sub MonitorDeadLetter()
            Dim deadLetter As New MessageQueue(".\DeadLetter$")

            While True

                Dim deadMessage As Message = deadLetter.Receive()

                ' Process the dead-letter message.

            End While

            Return

        End Sub


        ' References transactional dead-letter queues.
        Public Sub MonitorTransactionalDeadLetter()

            Dim TxDeadLetter As New MessageQueue(".\XactDeadLetter$")

            While True

                Dim txDeadLetterMessage As Message = _
                    TxDeadLetter.Receive()

                ' Process the transactional dead-letter message.

            End While

            Return

        End Sub

End Class

Hinweise

Verwenden Sie diese Überladung, wenn Sie die neue MessageQueue Instanz mit einer bestimmten Message Queuing-Warteschlange verknüpfen möchten, für die Sie den Pfad, den Formatnamen oder die Bezeichnung kennen. Wenn Sie exklusiven Zugriff auf die erste Anwendung gewähren möchten, die auf die Warteschlange verweist, müssen Sie die Eigenschaft auf true den DenySharedReceive Konstruktor festlegen oder verwenden, der einen Lesezugriffseinschränkungsparameter übergibt.

Der MessageQueue Konstruktor instanziiert eine neue Instanz der MessageQueue Klasse. Er erstellt keine neue Message Queuing-Warteschlange. Verwenden Sie Create(String)zum Erstellen einer neuen Warteschlange in Message Queuing .

Die Syntax des path Parameters hängt vom Typ der Warteschlange ab, auf die er verweist, wie in der folgenden Tabelle dargestellt.

Warteschlangentyp Syntax
Öffentliche Warteschlange MachineName\QueueName
Private Warteschlange MachineName\Private$\QueueName
Journalwarteschlange MachineName\QueueName\Journal$
Computerjournalwarteschlange MachineName\Journal$
Computerwarteschlange mit inaktiven Buchstaben MachineName\Deadletter$
Machine transactional dead-letter queue MachineName\XactDeadletter$

Alternativ können Sie den FormatName Warteschlangenpfad verwenden oder Label beschreiben, wie in der folgenden Tabelle dargestellt.

Referenz Syntax Beispiel
Formatname FormatName: [ Formatname ] FormatName:Public= 5A5F7535-AE9A-41d4-935C-845C2AFF7112

FormatName:DIRECT=SPX: NetworkNumber; HostNumber\QueueName

FormatName:DIRECT=TCP: IPAddress \ QueueName

FormatName:DIRECT=OS: MachineName \ QueueName
Etikett Label: [ Beschriftung ] Label: TheLabel

Um offline zu arbeiten, müssen Sie die Formatnamensyntax und nicht die Pfadnamensyntax für den Konstruktor verwenden. Andernfalls wird eine Ausnahme ausgelöst, da der primäre Domänencontroller nicht verfügbar ist, um den Pfad zum Formatnamen aufzulösen.

In der folgenden Tabelle sind die anfänglichen Eigenschaftswerte für eine Instanz von MessageQueue. Diese Werte basieren auf den Eigenschaften der Message Queuing-Warteschlange mit dem durch den path Parameter angegebenen Pfad.

Eigentum Anfangswert
Authenticate false
BasePriority 0
Category Empty
DefaultPropertiesToSend Die Werte, die vom parameterlosen Konstruktor der DefaultPropertiesToSend Klasse festgelegt werden.
EncryptionRequired true, wenn die Einstellung der Datenschutzstufe der Message Queuing-Warteschlange "Text" lautet; andernfalls . false
Formatter XmlMessageFormatter
Label Empty
MachineName Der Wert der Computernameneigenschaft der Message Queuing-Warteschlange.
MaximumJournalSize InfiniteQueueSize
MaximumQueueSize InfiniteQueueSize
MessageReadPropertyFilter Die Werte, die vom parameterlosen Konstruktor der MessagePropertyFilter Klasse festgelegt werden.
Path Empty, wenn nicht vom Konstruktor festgelegt.
QueueName Empty, wenn nicht vom Konstruktor festgelegt.
DenySharedReceive false
UseJournalQueue true, wenn die Journaleinstellung des Message Queuing-Objekts aktiviert ist; andernfalls . false

Weitere Informationen

Gilt für:

MessageQueue(String, Boolean)

Initialisiert eine neue Instanz der MessageQueue Klasse, die auf die Message Queuing-Warteschlange im angegebenen Pfad und mit der angegebenen Lesezugriffseinschränkung verweist.

public:
 MessageQueue(System::String ^ path, bool sharedModeDenyReceive);
public MessageQueue(string path, bool sharedModeDenyReceive);
new System.Messaging.MessageQueue : string * bool -> System.Messaging.MessageQueue
Public Sub New (path As String, sharedModeDenyReceive As Boolean)

Parameter

path
String

Der Speicherort der Warteschlange, auf die durch diese MessageQueueWarteschlange verwiesen wird, die für den lokalen Computer "." sein kann.

sharedModeDenyReceive
Boolean

trueexklusiven Lesezugriff auf die erste Anwendung zu gewähren, die auf die Warteschlange zugreift; andernfalls . false

Ausnahmen

Die Path Eigenschaft ist ungültig, möglicherweise weil sie nicht festgelegt wurde.

Beispiele

Im folgenden Codebeispiel wird ein neues MessageQueue mit exklusivem Zugriff erstellt, der Pfad festgelegt und eine Nachricht an die Warteschlange gesendet.

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

using namespace System;
using namespace System::Messaging;
ref class MyNewQueue
{
public:

   // Requests exlusive read access to the queue. If
   // access is granted, receives a message from the 
   // queue.
   void GetExclusiveAccess()
   {
      try
      {
         
         // Request exclusive read access to the queue.
         MessageQueue^ myQueue = gcnew MessageQueue( ".\\myQueue",true );
         
         // Receive a message. This is where SharingViolation 
         // exceptions would be thrown.
         Message^ myMessage = myQueue->Receive();
      }
      catch ( MessageQueueException^ e ) 
      {
         
         // Handle request for denial of exclusive read access.
         if ( e->MessageQueueErrorCode == MessageQueueErrorCode::SharingViolation )
         {
            Console::WriteLine( "Denied exclusive read access" );
         }

         
         // Handle other sources of a MessageQueueException.
      }

      
      // Handle other exceptions as necessary.
      return;
   }

};


// Provides an entry point into the application.
// This example connects to a message queue, and
// requests exclusive read access to the queue.
int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   
   // Output the count of Lowest priority messages.
   myNewQueue->GetExclusiveAccess();
   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 connects to a message queue, and
        // requests exclusive read access to the queue.
        //**************************************************

        public static void Main()
        {
            // Create a new instance of the class.
            MyNewQueue myNewQueue = new MyNewQueue();

            // Output the count of Lowest priority messages.
            GetExclusiveAccess();
                        
            return;
        }

        //**************************************************
        // Requests exlusive read access to the queue. If
        // access is granted, receives a message from the
        // queue.
        //**************************************************
        
        public static void GetExclusiveAccess()
        {
            try
            {
                // Request exclusive read access to the queue.
                MessageQueue myQueue = new
                    MessageQueue(".\\myQueue", true);

                // Receive a message. This is where SharingViolation
                // exceptions would be thrown.
                Message myMessage = myQueue.Receive();
            }
            
            catch (MessageQueueException e)
            {
                // Handle request for denial of exclusive read access.
                if (e.MessageQueueErrorCode ==
                    MessageQueueErrorCode.SharingViolation)
                {
                    Console.WriteLine("Denied exclusive read access");
                }

                // Handle other sources of a MessageQueueException.
            }

            // Handle other exceptions as necessary.

            return;
        }
    }
}
Imports System.Messaging

Public Class MyNewQueue


        ' Provides an entry point into the application.
        '		 
        ' This example connects to a message queue, and
        ' requests exclusive read access to the queue.
 

        Public Shared Sub Main()

            ' Create a new instance of the class.
            Dim myNewQueue As New MyNewQueue()

            ' Output the count of Lowest priority messages.
            myNewQueue.GetExclusiveAccess()

            Return

        End Sub


  
        ' Requests exlusive read access to the queue. If
        ' access is granted, receives a message from the 
        ' queue.
  

        Public Sub GetExclusiveAccess()

            Try

                ' Request exclusive read access to the queue.
                Dim myQueue As New MessageQueue(".\myQueue", True)

                ' Receive a message. This is where a SharingViolation 
                ' exception would be thrown.
                Dim myMessage As Message = myQueue.Receive()

            Catch e As MessageQueueException

                ' Handle request for denial of exclusive read access.
                If e.MessageQueueErrorCode = _
                    MessageQueueErrorCode.SharingViolation Then

                    Console.WriteLine("Denied exclusive read access.")

                End If

                ' Handle other sources of a MessageQueueException.

                ' Handle other exceptions as necessary.

            End Try

            Return

        End Sub

End Class

Hinweise

Verwenden Sie diese Überladung, wenn Sie die Neue MessageQueue mit einer bestimmten Message Queuing-Warteschlange verknüpfen möchten, für die Sie den Pfad, den Formatnamen oder die Bezeichnung kennen. Wenn Sie exklusiven Zugriff auf die erste Anwendung gewähren möchten, die auf die Warteschlange verweist, legen Sie den sharedModeDenyReceive Parameter auf true. Legen Sie sharedModeDenyReceive andernfalls den Konstruktor fest false , der nur über einen path Parameter verfügt.

Einstellung sharedModeDenyReceive auf true alle Objekte, die auf die Message Queuing-Warteschlange zugreifen, einschließlich anderer Anwendungen. Die Auswirkungen des Parameters sind nicht auf diese Anwendung beschränkt.

Der MessageQueue Konstruktor erstellt eine neue Instanz der MessageQueue Klasse. Er erstellt keine neue Message Queuing-Warteschlange. Verwenden Sie Create(String)zum Erstellen einer neuen Warteschlange in Message Queuing .

Die Syntax des path Parameters hängt vom Typ der Warteschlange ab.

Warteschlangentyp Syntax
Öffentliche Warteschlange MachineName\QueueName
Private Warteschlange MachineName\Private$\QueueName
Journalwarteschlange MachineName\QueueName\Journal$
Computerjournalwarteschlange MachineName\Journal$
Computerwarteschlange mit inaktiven Buchstaben MachineName\Deadletter$
Machine transactional dead-letter queue MachineName\XactDeadletter$

Alternativ können Sie den Formatnamen oder die Bezeichnung einer Message Queuing-Warteschlange verwenden, um den Warteschlangenpfad zu beschreiben.

Referenz Syntax Beispiel
Formatname FormatName: [ Formatname ] FormatName:Public= 5A5F7535-AE9A-41d4-935C-845C2AFF7112

FormatName:DIRECT=SPX: NetworkNumber; HostNumber\QueueName

FormatName:DIRECT=TCP: IPAddress \ QueueName

FormatName:DIRECT=OS: MachineName \ QueueName
Etikett Label: [ Beschriftung ] Label: TheLabel

Um offline zu arbeiten, müssen Sie die Formatnamensyntax anstelle der Anzeigenamensyntax verwenden. Andernfalls wird eine Ausnahme ausgelöst, da der primäre Domänencontroller (auf dem sich Active Directory befindet) nicht verfügbar ist, um den Pfad zum Formatnamen aufzulösen.

Wenn eine MessageQueue Warteschlange geöffnet wird, auf die der sharedModeDenyReceive Parameter festgelegt ist true, generiert jedes MessageQueue , das anschließend versucht, aus der Warteschlange zu lesen, einen MessageQueueException Fehler aufgrund einer Freigabeverletzung. Ein MessageQueueException Fehler wird auch ausgelöst, wenn ein Versuch, im exklusiven Modus auf die Warteschlange zuzugreifen, während ein MessageQueue anderer MessageQueue bereits nicht exklusiver Zugriff auf die Warteschlange hat.

In der folgenden Tabelle sind die anfänglichen Eigenschaftswerte für eine Instanz von MessageQueue. Diese Werte basieren auf den Eigenschaften der Message Queuing-Warteschlange, wobei der vom Parameter angegebene Pfad angegeben wird path .

Eigentum Anfangswert
Authenticate false.
BasePriority 0.
Category Empty.
DefaultPropertiesToSend Die Werte, die vom parameterlosen Konstruktor der DefaultPropertiesToSend Klasse festgelegt werden.
EncryptionRequired true, wenn die Einstellung der Datenschutzstufe der Message Queuing-Warteschlange "Text" lautet; andernfalls . false
Formatter XmlMessageFormatter.
Label Empty.
MachineName Der Wert der Computernameneigenschaft der Message Queuing-Warteschlange.
MaximumJournalSize InfiniteQueueSize.
MaximumQueueSize InfiniteQueueSize.
MessageReadPropertyFilter Die Werte, die vom parameterlosen Konstruktor der MessagePropertyFilter Klasse festgelegt werden.
Path Empty, wenn nicht vom Konstruktor festgelegt.
QueueName Empty, wenn nicht vom Konstruktor festgelegt.
DenySharedReceive Der Wert des sharedModeDenyReceive Parameters.
UseJournalQueue true, wenn die Journaleinstellung des Message Queuing-Objekts aktiviert ist; andernfalls . false

Weitere Informationen

Gilt für:

MessageQueue(String, QueueAccessMode)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

public:
 MessageQueue(System::String ^ path, System::Messaging::QueueAccessMode accessMode);
public MessageQueue(string path, System.Messaging.QueueAccessMode accessMode);
new System.Messaging.MessageQueue : string * System.Messaging.QueueAccessMode -> System.Messaging.MessageQueue
Public Sub New (path As String, accessMode As QueueAccessMode)

Parameter

path
String

Der Speicherort der Warteschlange, auf die durch diese MessageQueueWarteschlange verwiesen wird, die für den lokalen Computer "." sein kann.

accessMode
QueueAccessMode

Einer der QueueAccessMode Werte.

Gilt für:

MessageQueue(String, Boolean, Boolean)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

public:
 MessageQueue(System::String ^ path, bool sharedModeDenyReceive, bool enableCache);
public MessageQueue(string path, bool sharedModeDenyReceive, bool enableCache);
new System.Messaging.MessageQueue : string * bool * bool -> System.Messaging.MessageQueue
Public Sub New (path As String, sharedModeDenyReceive As Boolean, enableCache As Boolean)

Parameter

path
String

Der Speicherort der Warteschlange, auf die durch diese MessageQueueWarteschlange verwiesen wird, die für den lokalen Computer "." sein kann.

sharedModeDenyReceive
Boolean

trueexklusiven Lesezugriff auf die erste Anwendung zu gewähren, die auf die Warteschlange zugreift; andernfalls . false

enableCache
Boolean

trueum einen Verbindungscache zu erstellen und zu verwenden; andernfalls . false

Beispiele

Im folgenden Codebeispiel wird ein neues mit MessageQueue exklusivem Lesezugriff und aktivierter Verbindungszwischenspeicherung erstellt.

// Connect to a queue on the local computer, grant exclusive read
// access to the first application that accesses the queue, and
// enable connection caching.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue", true, true);

queue->Close();
// Connect to a queue on the local computer, grant exclusive read
// access to the first application that accesses the queue, and
// enable connection caching.
MessageQueue queue = new MessageQueue(".\\exampleQueue", true, true);

Gilt für:

MessageQueue(String, Boolean, Boolean, QueueAccessMode)

Initialisiert eine neue Instanz der MessageQueue-Klasse.

public:
 MessageQueue(System::String ^ path, bool sharedModeDenyReceive, bool enableCache, System::Messaging::QueueAccessMode accessMode);
public MessageQueue(string path, bool sharedModeDenyReceive, bool enableCache, System.Messaging.QueueAccessMode accessMode);
new System.Messaging.MessageQueue : string * bool * bool * System.Messaging.QueueAccessMode -> System.Messaging.MessageQueue
Public Sub New (path As String, sharedModeDenyReceive As Boolean, enableCache As Boolean, accessMode As QueueAccessMode)

Parameter

path
String

Der Speicherort der Warteschlange, auf die durch diese MessageQueueWarteschlange verwiesen wird, die für den lokalen Computer "." sein kann.

sharedModeDenyReceive
Boolean

trueexklusiven Lesezugriff auf die erste Anwendung zu gewähren, die auf die Warteschlange zugreift; andernfalls . false

enableCache
Boolean

trueum einen Verbindungscache zu erstellen und zu verwenden; andernfalls . false

accessMode
QueueAccessMode

Einer der QueueAccessMode Werte.

Gilt für: