MSMQ in .NET Compact Framework
Aktualisiert: November 2007
.NET Compact Framework unterstützt Message Queuing (auch bekannt als MSMQ) unter Windows Embedded CE. MSMQ ermöglicht Anwendungen das Kommunizieren mit anderen Anwendungen über Netzwerke oder Systeme, die möglicherweise vorübergehend offline sind.
Ein vollständiges Beispiel zur Verwendung von MSMQ in .NET Compact Framework finden Sie unter Anwendungsbeispiel für MSMQ-Buchungsaufträge.
Um diesen Dienst zu verwenden, senden Anwendungen Meldungen an eine Meldungswarteschlange. Eine Meldungswarteschlange kann Meldungen sowohl für sendende als auch empfangende Anwendungen enthalten, die sich auf demselben Gerät oder auf verschiedenen Geräten befinden können.
Beim Herstellen einer Netzwerkverbindung übermittelt MSMQ Meldungen an die Remotewarteschlange, unabhängig davon, ob eine empfangende Anwendung ausgeführt wird. Die empfangende Anwendung kann die lokale Warteschlange jederzeit auf Meldungen überprüfen.
MSMQ ist auf Pocket PCs nicht im Betriebssystem Windows Embedded CE integriert. Sie können MSMQ jedoch installieren, den Dienst starten und Anwendungen erstellen, die diesen verwenden. Im Folgenden wird beschrieben, wie die MSMQ-Komponente abgerufen wird:
Das Windows Mobile 2003 für Pocket PC SDK stellt MSMQ für Pocket PCs bereit, auf denen Windows Mobile 2003 für Pocket PC ausgeführt wird.
Für Geräte, auf denen Windows Mobile, Version 5.0, für Pocket PCs oder Smartphones ausgeführt wird, kann die MSMQ-Komponente unter Redistributable Server Components for Windows Mobile 5.0 heruntergeladen werden.
MSMQ ist für Windows Mobile 2003 für Smartphone nicht verfügbar.
MSMQ ist für Windows Embedded CE-Geräteentwickler verfügbar, die Microsoft Platform Builder verwenden.
Windows Mobile 2003 für Pocket PCs unterstützt nicht das HTTP-basierte Protokoll SRMP (SOAP Reliable Messaging Protocol). Zum Senden von Nachrichten muss daher ein proprietäres MSMQ-Protokoll verwendet werden. SRMP wird von Windows Mobile, Version 5.0, unterstützt.
.NET Compact Framework unterstützt nur den XmlMessageFormatter zum Serialisieren und Deserialisieren von Meldungen in die bzw. aus der Meldungswarteschlange.
Folgende Features werden von .NET Compact Framework nicht unterstützt, da sie in Windows Embedded CE nicht verfügbar sind:
Mehrere Meldungstransaktionen. Die Transaktionsunterstützung ist auf einzelne Meldungstransaktionen beschränkt.
Lesen aus Remotewarteschlangen.
Verschlüsselung.
Auf einer Zugriffssteuerungsliste (Access Control List, ACL) basierende Sicherheit.
MQMail.
Auf Active Directory basierte öffentliche Warteschlangen.
Da Active Directory auf Geräten nicht unterstützt wird, kann .NET Compact Framework nicht bestimmen, ob eine Remotewarteschlange transaktional ist. Um eine Meldung an eine Remotetransaktionswarteschlange zu senden, ist Folgendes erforderlich:
Fügen Sie dem Warteschlangenpfad in MessageQueue-Konstruktoren, die einen Zeichenfolgenpfadparameter annehmen, ;XACTONLY hinzu, und fügen Sie dies der Path-Eigenschaft hinzu.
Geben Sie Single für MessageQueueTransactionType in Send-Methoden an, die diesen Parameter akzeptieren.
Die folgenden Typen werden von .NET Compact Framework im System.Messaging-Namespace nicht unterstützt:
MessageQueuePermissionAttribute |
Siehe auch
Aufgaben
Gewusst wie: Verwenden von MSMQ in .NET Compact Framework
Anwendungsbeispiel für MSMQ-Buchungsaufträge
Anwendungsbeispiel für MSMQ-Buchungsaufträge
Konzepte
Hintergrundinformationen zu Meldungswarteschlangen und Messaging-Technologie