Freigeben über


Gewusst wie: Erstellen von Warteschlangen

Aktualisiert: November 2007

Eine Warteschlange wird als Ressource erstellt, mit der Messaging-Komponenten interagieren können. Angenommen, Sie erstellen ein Auftragserfassungssystem, das Aufträge in Warteschlangen stellt, sobald diese über den Verkaufsaußendienst oder über direkte Kundeninteraktion auf einer Website erteilt wurden. Sie könnten zunächst eine OrderEntry-Warteschlange für das Message Queuing-Projekt erstellen. Alle Komponenten, die Sie zum Verarbeiten von Aufträgen erstellen, interagieren mit dieser Warteschlange.

Es gibt zwei Möglichkeiten, eine Warteschlange zu erstellen: mit dem Fenster Server-Explorer oder mit dem Create-Konstruktor aus dem Code. Mit dem Server-Explorer oder dem Windows 2000-Fenster Computerverwaltung kann überprüft werden, ob die Warteschlange erfolgreich erstellt wurde.

Sie können eine öffentliche Warteschlange auf dem eigenen Computer oder auf einem Message Queuing-Computer erstellen, für den Sie Domänen- oder Verwaltungszugriff besitzen. Sie können auch private Warteschlangen erstellen, die nur auf Ihrem lokalen Computer gespeichert sind. Weitere Informationen über Zugriffsrechte finden Sie unter Sicherheit bei Meldungswarteschlangen oder im Kapitel über die Zugriffssteuerung für Message Queuing in der Dokumentation zum Fenster Computerverwaltung.

Hinweis:

Zwischen dem Erstellen einer Warteschlange und dem Erstellen einer Instanz der MessageQueue-Komponente besteht ein deutlicher Unterschied. Mit der Create-Methode erstellen Sie keine Komponente im Projekt oder in der Anwendung, sondern eine neue Warteschlange im Message Queuing-Netzwerk. Wenn Sie eine Instanz der MessageQueue-Komponente anlegen, erstellen Sie eine Komponente innerhalb des Projekts, die auf eine vorhandene Warteschlange im Betriebssystem verweist.

Sie können auch eine Installationskomponente konfigurieren, um bei der Bereitstellung der Anwendung eine Warteschlange zu erstellen oder eine vorhandene Warteschlange zu suchen. Weitere Informationen hierzu finden Sie unter Verwalten von benutzerdefinierten Aktionen bei der Bereitstellung.

So erstellen Sie eine Warteschlange vom Server-Explorer aus

  1. Öffnen Sie den Server-Explorer, und greifen Sie auf den Server zu, auf dem Sie eine Warteschlange erstellen möchten. Weitere Informationen hierzu finden Sie unter Gewusst wie: Zugreifen auf und Initialisieren von Server-Explorer/Datenbank-Explorer.

    Wenn Sie dem Visual Studio-Projekt eine Instanz der MessageQueue-Komponente hinzufügen, erstellt das System automatisch die Verweise und Importanweisungen, die für den Zugriff auf diese Namespaces und Klassen erforderlich sind.

  2. Klicken Sie mit der rechten Maustaste auf den Knoten Meldungswarteschlangen.

  3. Klicken Sie mit der rechten Maustaste je nach dem zu erstellenden Warteschlangentyp entweder auf Öffentliche Warteschlangen oder auf Private Warteschlangen, und klicken Sie dann auf Warteschlange erstellen.

  4. Geben Sie im Dialogfeld Meldungswarteschlange erstellen einen Namen für die Warteschlange ein.

  5. Wenn Sie eine Transaktionswarteschlange erstellen möchten, wählen Sie Warteschlange in "transaktional" ändern. Weitere Informationen hierzu finden Sie unter Transaktionale Meldungsverarbeitung.

    Hinweis:

    Das Erstellen einer öffentlichen Warteschlange kann längere Zeit als erwartet in Anspruch nehmen, wenn die Domäne sehr groß ist und über viele Domänencontroller verfügt. Dies liegt daran, dass es eine gewisse Zeit dauert, bis die neue öffentliche Warteschlange vom Domänencontroller des Computers auf alle anderen Domänencontroller in der Domäne repliziert wird. Während dieses Replikationsvorgangs kann eine Verzögerung auftreten.

So erstellen Sie eine öffentliche Warteschlange programmgesteuert

  1. Klicken Sie mit der rechten Maustaste auf das Projekt, und wählen Sie Verweis hinzufügen. Fügen Sie einen Verweis zu System.Messaging.dll hinzu.

  2. Erstellen Sie mit der Create-Methode eine öffentliche Warteschlange auf dem Computer. Der Code muss wie folgt aussehen:

    System.Messaging.MessageQueue.Create("myMachine\MyQueue")
    
         System.Messaging.MessageQueue.Create(@"myMachine\MyQueue");
    
    Tipp:

    Es ist möglich, mit einer Überladung der Create-Methode anzugeben, dass Sie eine Transaktionswarteschlange erstellen möchten. Sie können im Pfad auch einen Punkt ( . ) verwenden, um den lokalen Computer anzugeben.

    Sicherheitshinweis:

    Beachten Sie bei der Erstellung einer Meldungswarteschlange, dass die Ressource bereits vorhanden sein kann. Möglicherweise wurde die Ressource bereits von einem bösartigen Prozess erstellt, der nun darauf zugreifen kann. Wenn Sie der Meldungswarteschlange Daten hinzufügen, kann der andere Prozess darauf zugreifen. Informationen über vorhandene Warteschlangen finden Sie unter Gewusst wie: Abrufen von Warteschlangen.

So erstellen Sie eine private Warteschlange programmgesteuert

  • Verwenden Sie die Create-Methode, um eine private Warteschlange auf Ihrem Computer zu erstellen. Geben Sie dabei die erforderliche Syntax, Private$, an. Der Code muss wie folgt aussehen:

    System.Messaging.MessageQueue.Create(".\Private$\MyPrivateQueue")
    
         System.Messaging.MessageQueue.Create(@".\Private$\MyPrivateQueue");
    

    Mit dem Server-Explorer oder dem Windows 2000-Fenster Computerverwaltung kann überprüft werden, ob die Meldungswarteschlange erstellt wurde.

So prüfen Sie, ob die Meldungswarteschlange erstellt wurde

  • Aktualisieren Sie im Server-Explorer den Knoten Meldungswarteschlangen, indem Sie mit der rechten Maustaste auf Warteschlangen klicken. Klicken Sie anschließend auf Aktualisieren. Es kann eine Weile dauern, bis die Warteschlange angezeigt wird.

    - oder -

  • So zeigen Sie Message Queuing-Informationen in Windows 2000 an:

    1. Klicken Sie auf dem Desktop des Computers mit der rechten Maustaste auf Arbeitsplatz und dann auf Verwalten.

    2. Erweitern Sie im daraufhin angezeigten Dialogfeld den Knoten Dienste und Anwendungen, und erweitern Sie anschließend Message Queuing. Sie finden die Warteschlange und ihre Meldungen in diesem Knoten.

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Instanzen von MessageQueue-Komponenten

Weitere Ressourcen

Erstellen, Löschen und Verwalten von Warteschlangen