Share via


System.Messaging-Namespace

Der System.Messaging-Namespace stellt Klassen für folgende Aufgaben zur Verfügung: Herstellen von Verbindungen mit Meldungswarteschlangen im Netzwerk, Überwachen und Verwalten von Meldungswarteschlangen im Netzwerk sowie Senden, Empfangen und Einsehen von Meldungen.

Member der MessageQueue-Klasse enthalten die folgenden Methoden, mit denen Meldungen gelesen und in die Warteschlange geschrieben werden können:

  • Mit der Send-Methode kann die Anwendung Meldungen in die Warteschlange schreiben. Mit Überladungen der Methode können Sie angeben, ob die Meldung mit Message (wodurch die präzise Steuerung der zu sendenden Informationen möglich ist) oder einem beliebigen anderen verwalteten Objekt gesendet werden soll, einschließlich anwendungsspezifischer Klassen. Die Methode unterstützt außerdem das Senden von Meldungen im Rahmen einer Transaktion.

  • Die Receive-Methode, die ReceiveById-Methode und die ReceiveByCorrelationId-Methode stellen Funktionen zum Lesen von Meldungen aus einer Warteschlange zur Verfügung. Wie die Send-Methode stellen diese Methoden Überladungen bereit, die die transaktionale Verarbeitung von Warteschlangen unterstützen. Diese Methoden stellen auch Überladungen mit Timeouts bereit.

    Out-Parameter, die die Fortsetzung der Verarbeitung ermöglichen, wenn die Warteschlange leer ist. Da diese Methoden Beispiele für synchrone Verarbeitung sind, unterbrechen sie den aktuellen Thread, bis eine Meldung verfügbar ist, sofern Sie keinen Timeout angeben.

  • Die Peek-Methode ähnelt Receive, die Meldung in der Wartschlange wird nach dem Lesen jedoch nicht entfernt. Da Peek den Inhalt der Warteschlange nicht ändert, sind keine Überladungen vorhanden, die die transaktionale Verarbeitung unterstützen. Da Peek Meldungen jedoch wie Receive synchron aus der Warteschlange liest, kann für Überladungen der Methode ein Timeout angegeben werden, um zu verhindern, dass der Thread eine unbestimmte Zeit wartet.

  • Die Methoden BeginPeek, EndPeek, BeginReceive und EndReceive bieten Möglichkeiten zum asynchronen Lesen von Meldungen aus der Warteschlange. Sie unterbrechen den aktuellen Thread nicht, während sie auf den Eingang einer Meldung in der Warteschlange warten.

Die folgenden Methoden der MessageQueue-Klasse stellen Funktionen bereit, mit denen Listen von Warteschlangen anhand bestimmter Kriterien abgerufen und das Vorhandensein bestimmter Warteschlangen bestimmt werden kann:

Weitere Methoden der MessageQueue-Klasse bieten folgende Funktionen:

  • Erstellen und Löschen von Message Queueing-Warteschlangen.

  • Verwenden eines Meldungsenumerators, mit dem die Meldungen in einer Warteschlange schrittweise durchlaufen werden können.

  • Verwenden eines Warteschlangenenumerators zum Durchlaufen der Warteschlangen im System.

  • Festlegen von ACL-basierten Zugriffsrechten.

  • Verwenden des Verbindungscache.

Die Message-Klasse ermöglicht die präzise Steuerung der an eine Warteschlange gesendeten Informationen. Sie stellt das Objekt dar, das beim Empfangen und Einsehen von Meldungen aus einer Warteschlange verwendet wird. Neben dem Meldungstext werden mit den Eigenschaften der Message-Klasse Bestätigungseinstellungen, Auswahl des Formatierungsprogramms, Identifikation, Authentifizierungs- und Verschlüsselungsinformationen, Timestamps, Angaben über Ablaufverfolgung, Serverjournale, Warteschlangen für unzustellbare Nachrichten und Transaktionsdaten festgelegt.

Der MessageQueue-Komponente sind die folgenden drei Formatierungsprogramme zugeordnet, mit denen Sie Meldungen serialisieren oder deserialisieren können, die an Warteschlangen gesendet bzw. aus diesen empfangen wurden:

  • XmlMessageFormatter bietet ein lose verknüpftes Messaging, wobei voneinander unabhängige Versionen serialisierter Typen auf Client und Server erstellt werden können.

  • Das ActiveXMessageFormatter ist mit dem COM-Steuerelement von MSMQ kompatibel. Es ermöglicht Ihnen das Senden von Typen, die vom Steuerelement empfangen werden können, und das Empfangen von Typen, die vom Steuerelement gesendet wurden.

  • Der BinaryMessageFormatter ist schneller als der XmlMessageFormatter, bietet jedoch nicht den Vorteil des lose verknüpften Messaging.

Weitere Klassen im Messaging-Namespace unterstützen Codezugriffssicherheit und Sicherheit auf der Grundlage von ACL, Filtern von Message-Eigenschaften während des Lesens von Meldungen aus einer Warteschlange sowie Verwenden von Transaktionen beim Senden und Empfangen von Meldungen.

Klassen

  Klasse Beschreibung
Öffentliche Klasse AccessControlEntry Gibt Zugriffsrechte für einen Vertrauensnehmer (einen Benutzer, eine Gruppe oder einen Computer) für die Ausführung anwendungsspezifischer Implementierungen allgemeiner Aufgaben an.
Öffentliche Klasse AccessControlList Enthält eine Liste von Zugriffssteuerungseinträgen, die Zugriffsrechte für einen oder mehrere Vertrauensnehmer angeben.
Öffentliche Klasse ActiveXMessageFormatter Serialisiert bzw. deserialisiert primitive Datentypen und andere Objekte aus oder in den Text einer Message Queuing-Meldung. Dabei wird ein Format verwendet, das mit der ActiveX-Komponente von MSMQ kompatibel ist.
Öffentliche Klasse BinaryMessageFormatter Serialisiert bzw. deserialisiert ein Objekt oder ein ganzes Diagramm verbundener Objekte unter Verwendung eines binären Formats in bzw. aus dem Text einer Message Queuing-Meldung.
Öffentliche Klasse Cursor Beim Lesen der Meldungen einer Warteschlange wird mit einem Cursor eine bestimmte Position in dieser MessageQueue beizubehalten.
Öffentliche Klasse DefaultPropertiesToSend Gibt die Standardwerte für Eigenschaften an, die beim Senden von Objekten (mit Ausnahme von Message-Instanzen) an eine Meldungswarteschlange verwendet werden.
Öffentliche Klasse Message Stellt den Zugriff auf die Eigenschaften bereit, die zur Definition einer Message Queuing-Meldung erforderlich sind.
Öffentliche Klasse MessageEnumerator Stellt einen Vorwärtscursor zum Durchlaufen der Meldungen in einer Meldungswarteschlange bereit.
Öffentliche Klasse MessagePropertyFilter Steuert und wählt die Eigenschaften aus, die beim Einsehen oder beim Empfang von Meldungen aus einer Warteschlange abgerufen werden.
Öffentliche Klasse MessageQueue Ermöglicht den Zugriff auf eine Warteschlange auf einem Message Queuing-Server.
Öffentliche Klasse MessageQueueAccessControlEntry Gibt Zugriffsrechte für einen Vertrauensnehmer (Benutzer, Gruppe oder Computer) für die Durchführung von Message Queuing-Aufgaben an.
Öffentliche Klasse MessageQueueCriteria Filtert Meldungswarteschlangen beim Durchführen einer Abfrage mit der GetPublicQueues-Methode der MessageQueue-Klasse.
Öffentliche Klasse MessageQueueEnumerator Stellt einen Vorwärtscursor zum Durchlaufen der Meldungen in einer Meldungswarteschlange bereit.
Öffentliche Klasse MessageQueueException Die Ausnahme, die ausgelöst wird, wenn ein interner Fehler in Microsoft Message Queuing auftritt.
Öffentliche Klasse MessageQueueInstaller Ermöglicht das Installieren und Konfigurieren einer Warteschlange, die für das Ausführen einer Anwendung benötigt wird. Diese Klasse wird vom Installationsprogramm, z. B. InstallUtil.exe, beim Installieren einer MessageQueue aufgerufen.
Öffentliche Klasse MessageQueuePermission Ermöglicht das Steuern von Codezugriffsberechtigungen für Messaging.
Öffentliche Klasse MessageQueuePermissionAttribute Ermöglicht deklarative MessageQueue-Berechtigungsüberprüfungen.
Öffentliche Klasse MessageQueuePermissionEntry Definiert die kleinste Einheit einer Berechtigung für die Codezugriffssicherheit, die für Messaging festgelegt ist.
Öffentliche Klasse MessageQueuePermissionEntryCollection Enthält eine Auflistung von stark typisierten MessageQueuePermissionEntry-Objekten.
Öffentliche Klasse MessageQueueTransaction Stellt eine interne Message Queuing-Transaktion bereit.
Öffentliche Klasse MessagingDescriptionAttribute Gibt eine Beschreibung für eine Eigenschaft oder ein Ereignis an.
Öffentliche Klasse PeekCompletedEventArgs Stellt Daten für das PeekCompleted-Ereignis bereit. Beim Aufruf eines Ereignishandlers durch die asynchrone Leseanweisung wird eine Instanz dieser Klasse an den Handler übergeben.
Öffentliche Klasse ReceiveCompletedEventArgs Stellt Daten für das ReceiveCompleted-Ereignis bereit. Beim Aufruf eines Ereignishandlers durch eine asynchrone Receive-Methode wird eine Instanz dieser Klasse an den Handler übergeben.
Öffentliche Klasse SecurityContext Stellt den Sicherheitskontext für eine Meldung in einer Warteschlange dar.
Öffentliche Klasse Trustee Gibt ein Benutzerkonto, ein Gruppenkonto oder eine Anmeldesitzung an, auf das bzw. die sich ein Zugriffssteuerungseintrag bezieht.
Öffentliche Klasse XmlMessageFormatter Serialisiert und deserialisiert mithilfe des auf XSD (XML Schema Definition) beruhenden XML-Formats Objekte in den oder aus dem Textkörper einer Meldung.

Schnittstellen

  Schnittstelle Beschreibung
Öffentliche Schnittstelle IMessageFormatter Serialisiert bzw. deserialisiert Objekte aus dem Text einer Message Queuing-Meldung.

Delegaten

  Delegat Beschreibung
Öffentlicher Delegat PeekCompletedEventHandler Stellt die Methode dar, die das PeekCompleted-Ereignis einer MessageQueue behandelt.
Öffentlicher Delegat ReceiveCompletedEventHandler Stellt die Methode dar, die das ReceiveCompleted-Ereignis einer MessageQueue behandelt.

Enumerationen

  Enumeration Beschreibung
Öffentliche Enumeration AccessControlEntryType Gibt an, ob Zugriffsrechte für einen Vertrauensnehmer erteilt, verweigert oder widerrufen werden.
Öffentliche Enumeration AcknowledgeTypes Gibt die Typen von Bestätigungsmeldungen an, die Message Queuing an die sendende Anwendung zurückgibt.
Öffentliche Enumeration Acknowledgment Gibt das Ergebnis der versuchten Übermittlung einer Meldung an.
Öffentliche Enumeration CryptographicProviderType Gibt die Kryptographiedienstanbieter an, die für das Überprüfen digitaler Signaturen verfügbar sind.
Öffentliche Enumeration EncryptionAlgorithm Gibt den Verschlüsselungsalgorithmus an, mit dem der Meldungstext einer privaten Meldung verschlüsselt wird.
Öffentliche Enumeration EncryptionRequired Gibt die Sicherheitsebene von Meldungen an, die von der Warteschlange empfangen werden.
Öffentliche Enumeration GenericAccessRights Gibt unter Verwendung des Zugriffsformats von Windows 2000 oder Windows NT einen Satz allgemeiner Zugriffsrechte an, das Message Queuing sowohl Standardzugriffsrechten als auch objektspezifischen Zugriffsrechten für Lesen, Schreiben und Ausführen zuordnet.
Öffentliche Enumeration HashAlgorithm Gibt den Hashalgorithmus an, der von Message Queuing beim Authentifizieren von Meldungen verwendet wird.
Öffentliche Enumeration MessageLookupAction Gibt eine Meldung in einer Meldungswarteschlange an, die eingesehen oder empfangen werden soll.
Öffentliche Enumeration MessagePriority Gibt die Priorität an, die Message Queuing einer Meldung auf dem Weg zu einer Warteschlange und beim Einfügen der Meldung in die Zielwarteschlage zuweist.
Öffentliche Enumeration MessageQueueAccessRights Gibt eine Gruppe von objektspezifischen Zugriffsrechten für Operationen an, die spezifisch für Message Queuing sind.
Öffentliche Enumeration MessageQueueErrorCode Bezeichnet die Quelle eines Fehlers, der in der Message Queuing-Anwendung aufgetreten ist und eine MessageQueueException-Ausnahme generiert hat.
Öffentliche Enumeration MessageQueuePermissionAccess Definiert Zugriffsebenen, die von System.Messaging-Berechtigungsklassen verwendet werden.
Öffentliche Enumeration MessageQueueTransactionStatus Gibt den Zustand einer internen Message Queuing-Transaktion an.
Öffentliche Enumeration MessageQueueTransactionType Gibt den Typ einer Message Queuing-Transaktion an.
Öffentliche Enumeration MessageType Gibt den Typ einer Meldung an. Eine Meldung kann eine typische Message Queuing-Meldung, eine positive bzw. Eingangs- und Lesebestätigung oder eine Berichtsmeldung sein.
Öffentliche Enumeration PeekAction Gibt an, ob die aktuelle oder die folgende Meldung in der Warteschlange eingesehen werden soll.
Öffentliche Enumeration QueueAccessMode Gibt den Zugriffsmodus für eine MessageQueue zur Erstellungszeit an.
Öffentliche Enumeration StandardAccessRights Gibt einen Satz von Standardzugriffsrechten an, die Operationen entsprechen, die den meisten Typen von sicherungsfähigen Objekten gemeinsam sind.
Öffentliche Enumeration TrusteeType Gibt den Typ eines Vertrauensnehmers an.