MessageQueue.GetAllMessages Methode

Definition

Gibt alle Meldungen in der Warteschlange zurück.

public:
 cli::array <System::Messaging::Message ^> ^ GetAllMessages();
public System.Messaging.Message[] GetAllMessages ();
member this.GetAllMessages : unit -> System.Messaging.Message[]
Public Function GetAllMessages () As Message()

Gibt zurück

Ein Array vom Typ Message, das alle Meldungen aus der Warteschlange darstellt. Die Reihenfolge entspricht der Reihenfolge in der Message Queuing-Warteschlange.

Ausnahmen

Fehler beim Zugriff auf eine Message Queuing-Methode.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von GetAllMessages.


// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");

// Populate an array with copies of all the messages in the queue.
array<Message^>^ msgs = queue->GetAllMessages();

// Loop through the messages.
for each(Message^ msg in msgs)
{
    // Display the label of each message.
    Console::WriteLine(msg->Label);
}

queue->Close();

// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");

// Populate an array with copies of all the messages in the queue.
Message[] msgs = queue.GetAllMessages();

// Loop through the messages.
foreach(Message msg in msgs)
{
    // Display the label of each message.
    Console.WriteLine(msg.Label);
}

Hinweise

GetAllMessages gibt eine statische Momentaufnahme der Nachrichten in der Warteschlange zurück, keine dynamischen Links zu diesen Nachrichten. Daher können Sie das Array nicht verwenden, um die Nachrichten in der Warteschlange zu ändern. Wenn Sie eine dynamische Interaktion in Echtzeit mit der Warteschlange wünschen (z. B. die Möglichkeit, Nachrichten zu löschen), rufen Sie die GetMessageEnumerator2 -Methode auf, die eine dynamische Liste der Nachrichten in der Warteschlange zurückgibt.

Da GetAllMessages zum Zeitpunkt des Aufrufs der Methode eine Kopie der Nachrichten in der Warteschlange zurückgegeben wird, spiegelt das Array keine neuen Nachrichten wider, die in der Warteschlange eintreffen, oder Nachrichten, die aus der Warteschlange entfernt werden.

GetAllMessages ruft nur die Eigenschaften ab, die nicht von der MessageReadPropertyFilter -Eigenschaft herausgefiltert wurden.

Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.

Arbeitsgruppenmodus Verfügbar
Lokalem Computer Ja
Name des lokalen Computers und des direkten Formats Ja
Remotecomputer Nein
Name des Remotecomputers und des direkten Formats Ja

Gilt für:

Weitere Informationen