Freigeben über


MessageQueueCriteria Klasse

Definition

Filtert Nachrichtenwarteschlangen beim Ausführen einer Abfrage mithilfe der Methode der MessageQueue Klasse GetPublicQueues() .

public ref class MessageQueueCriteria
public class MessageQueueCriteria
type MessageQueueCriteria = class
Public Class MessageQueueCriteria
Vererbung
MessageQueueCriteria

Beispiele

Im folgenden Beispiel werden Nachrichtenwarteschlangen durchlaufen und der Pfad jeder Warteschlange angezeigt, die am letzten Tag erstellt wurde und auf dem Computer "MyComputer" vorhanden ist.

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

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

   // Iterates through message queues and displays the
   // path of each queue that was created in the last
   // day and that exists on the computer "MyComputer". 
   void ListPublicQueuesByCriteria()
   {
      UInt32 numberQueues = 0;
      
      // Specify the criteria to filter by.
      MessageQueueCriteria^ myCriteria = gcnew MessageQueueCriteria;
      myCriteria->MachineName = "MyComputer";
      myCriteria->CreatedAfter = DateTime::Now.Subtract( TimeSpan(1,0,0,0) );
      
      // Get a cursor into the queues on the network.
      MessageQueueEnumerator^ myQueueEnumerator = MessageQueue::GetMessageQueueEnumerator( myCriteria );
      
      // Move to the next queue and read its path.
      while ( myQueueEnumerator->MoveNext() )
      {
         
         // Increase the count if priority is Lowest.
         Console::WriteLine( myQueueEnumerator->Current->Path );
         numberQueues++;
      }

      
      // Handle no queues matching the criteria.
      if ( numberQueues == 0 )
      {
         Console::WriteLine( "No public queues match criteria." );
      }

      return;
   }

};

int main()
{
   
   // Create a new instance of the class.
   MyNewQueue^ myNewQueue = gcnew MyNewQueue;
   
   // Output the count of Lowest priority messages.
   myNewQueue->ListPublicQueuesByCriteria();
   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 uses a cursor to step through the
        // message queues and list the public queues on the
        // network that specify certain criteria.
        //**************************************************

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

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

        //**************************************************
        // Iterates through message queues and displays the
        // path of each queue that was created in the last
        // day and that exists on the computer "MyComputer".
        //**************************************************
        
        public void ListPublicQueuesByCriteria()
        {
            uint numberQueues = 0;
            
            // Specify the criteria to filter by.
            MessageQueueCriteria myCriteria = new
                MessageQueueCriteria();
            myCriteria.MachineName = "MyComputer";
            myCriteria.CreatedAfter = DateTime.Now.Subtract(new
                TimeSpan(1,0,0,0));

            // Get a cursor into the queues on the network.
            MessageQueueEnumerator myQueueEnumerator =
                MessageQueue.GetMessageQueueEnumerator(myCriteria);

            // Move to the next queue and read its path.
            while(myQueueEnumerator.MoveNext())
            {
                // Increase the count if priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path);
                numberQueues++;
            }

            // Handle no queues matching the criteria.
            if (numberQueues == 0)
            {
                Console.WriteLine("No public queues match criteria.");
            }

            return;
        }
    }
}
Imports System.Messaging

 
Public Class MyNewQueue


        '
        ' Provides an entry point into the application.
        '		 
        ' This example uses a cursor to step through the
        ' message queues and list the public queues on the
        ' network that specify certain criteria.
        

        Public Shared Sub Main()

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

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

            Return

        End Sub


        
        ' Iterates through message queues and displays the
        ' path of each queue that was created in the last
        ' day and that exists on the computer "MyComputer". 
        

        Public Sub ListPublicQueuesByCriteria()

            Dim numberQueues As Int32 = 0

            ' Specify the criteria to filter by.
            Dim myCriteria As New MessageQueueCriteria()
            myCriteria.MachineName = "MyComputer"
            myCriteria.CreatedAfter = DateTime.Now.Subtract(New _
                TimeSpan(1, 0, 0, 0))


            ' Get a cursor into the queues on the network.
            Dim myQueueEnumerator As MessageQueueEnumerator = _
                MessageQueue.GetMessageQueueEnumerator(myCriteria)

            ' Move to the next queue and read its path.
            While myQueueEnumerator.MoveNext()
                ' Increase the count if the priority is Lowest.
                Console.WriteLine(myQueueEnumerator.Current.Path)
                numberQueues += 1
            End While

            ' Handle no queues matching the criteria.
            If numberQueues = 0 Then
                Console.WriteLine("No queues match the criteria.")
            End If

            Return

        End Sub

End Class

Hinweise

Die MessageQueue Klasse stellt eine Reihe von Methoden bereit, mit denen Sie die Suche nach öffentlichen Warteschlangen im Netzwerk filtern können. Spezifische Methoden zum Filtern nach Warteschlangenbezeichnung, Kategorie oder Serverspeicherort sind die GetPublicQueuesByLabel, GetPublicQueuesByCategoryund GetPublicQueuesByMachine.

Mit MessageQueueCriteria der Klasse, die mit der GetPublicQueues Methode verwendet wird, können Sie den Filter verfeinern. Sie können Suchkriterien angeben, die nicht explizit über eine der GetPublicQueuesBy*-Methoden oder anhand mehrerer Kriterien adressiert werden. Sie können eine MessageQueueCriteria Instanz an die GetPublicQueues Methode übergeben, um z. B. nach Erstellungs- oder Änderungszeiten der Warteschlange zu suchen, auf dem sich der Computer befindet, auf dem sich die Warteschlange befindet, auf der Bezeichnung oder Kategorie der Warteschlange oder eine beliebige Kombination dieser Eigenschaften.

Beim Filtern nach mehreren Eigenschaften werden die Kriterien durch Anwenden des AND Operators auf den Eigenschaftensatz zusammengesetzt. Wenn Sie also einen Wert für die CreatedAfter Eigenschaft zusammen mit der MachineName Eigenschaft angeben, werden Sie nach allen Warteschlangen gefragt, die nach einer bestimmten Zeit erstellt wurden und sich auf einem bestimmten Computer befinden.

Wenn Sie eine Eigenschaft festlegen, legt die Methode, mit der die Eigenschaft festgelegt wird, auch ein Flag fest, um anzugeben, dass sie in den filter aufgenommen werden soll, den Sie erstellen. Sie können einzelne Eigenschaften nicht aus dem Suchfilter entfernen. Stattdessen entfernen Sie alle Eigenschaften aus dem Filter, indem Sie den Filter aufrufen ClearAllund dann die Eigenschaften festlegen, die Sie in den Suchfilter integrieren möchten. ClearAll Setzt alle Eigenschaften in den Standardzustand "nicht festgelegt" zurück.

Sie müssen eine Eigenschaft festlegen, bevor Sie versuchen, sie zu lesen; andernfalls wird eine Ausnahme ausgelöst.

Konstruktoren

Name Beschreibung
MessageQueueCriteria()

Initialisiert eine neue Instanz der MessageQueueCriteria-Klasse.

Eigenschaften

Name Beschreibung
Category

Ruft die Kategorie ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diese fest.

CreatedAfter

Ruft die untere Grenze des Erstellungsdatums und der Uhrzeit der Warteschlangenerstellung ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diese fest.

CreatedBefore

Ruft die obere Grenze des Erstellungsdatums und der Uhrzeit der Warteschlangenerstellung ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diese fest.

Label

Ruft die Bezeichnung ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt sie fest.

MachineName

Ruft den Computernamen ab, nach dem Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diesen fest.

ModifiedAfter

Ruft die untere Grenze des Änderungsdatums und der Uhrzeit der Warteschlangenänderung ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diese fest.

ModifiedBefore

Ruft die obere Grenze des Änderungsdatums und der Uhrzeit der Warteschlangenänderung ab, nach der Warteschlangen im Netzwerk gefiltert werden sollen, oder legt diese fest.

Methoden

Name Beschreibung
ClearAll()

Löscht alle Eigenschaften, die in einen Filter integriert werden, und fügt alle Eigenschaftswerte in einen Zustand "nicht festgelegt" ein.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen