Partager via


MessageQueueCriteria Classe

Définition

Filtre les files d’attente de messages lors de l’exécution d’une requête à l’aide de la méthode de GetPublicQueues() la MessageQueue classe.

public ref class MessageQueueCriteria
public class MessageQueueCriteria
type MessageQueueCriteria = class
Public Class MessageQueueCriteria
Héritage
MessageQueueCriteria

Exemples

L’exemple suivant itère dans les files d’attente de messages et affiche le chemin d’accès de chaque file d’attente créée le dernier jour et qui existe sur l’ordinateur « MyComputer ».

#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

Remarques

La MessageQueue classe fournit un certain nombre de méthodes qui vous permettent de filtrer votre recherche de files d’attente publiques sur le réseau. Les méthodes spécifiques pour le filtrage par étiquette de file d’attente, catégorie ou emplacement du serveur sont les GetPublicQueuesByLabelsuivantes : GetPublicQueuesByCategoryet GetPublicQueuesByMachine.

La MessageQueueCriteria classe, lorsqu’elle est utilisée avec la GetPublicQueues méthode, vous permet d’affiner votre filtre. Vous pouvez spécifier des critères de recherche non spécifiquement traités par l’une GetPublicQueuesBydes méthodes * ou par plusieurs critères. Vous pouvez transmettre une MessageQueueCriteria instance à la GetPublicQueues méthode afin de rechercher, par exemple, par création ou modification de file d’attente, l’ordinateur sur lequel réside la file d’attente, l’étiquette de file d’attente ou la catégorie, ou toute combinaison de ces propriétés.

Lors du filtrage par plusieurs propriétés, les critères sont composés en appliquant l’opérateur AND à l’ensemble de propriétés. Par conséquent, lorsque vous spécifiez une valeur pour la CreatedAfter propriété avec la MachineName propriété, vous demandez toutes les files d’attente créées après une heure spécifiée et qui résident sur un ordinateur spécifique.

Lorsque vous définissez une propriété, la méthode qui définit la propriété définit également un indicateur pour indiquer qu’elle doit être incluse dans le filtre que vous créez. Vous ne pouvez pas supprimer des propriétés individuelles du filtre de recherche. Au lieu de cela, vous supprimez toutes les propriétés du filtre en appelant ClearAll, puis définissez les propriétés que vous souhaitez générer dans le filtre de recherche. ClearAll réinitialise toutes les propriétés dans un état par défaut « non défini ».

Vous devez définir une propriété avant d’essayer de la lire ; sinon, une exception est levée.

Constructeurs

Nom Description
MessageQueueCriteria()

Initialise une nouvelle instance de la classe MessageQueueCriteria.

Propriétés

Nom Description
Category

Obtient ou définit la catégorie par laquelle filtrer les files d’attente dans le réseau.

CreatedAfter

Obtient ou définit la limite inférieure de la date et de l’heure de création de la file d’attente par laquelle filtrer les files d’attente sur le réseau.

CreatedBefore

Obtient ou définit la limite supérieure de la date et de l’heure de création de la file d’attente par laquelle filtrer les files d’attente sur le réseau.

Label

Obtient ou définit l’étiquette par laquelle filtrer les files d’attente dans le réseau.

MachineName

Obtient ou définit le nom de l’ordinateur par lequel filtrer les files d’attente dans le réseau.

ModifiedAfter

Obtient ou définit la limite inférieure de la date et de l’heure de modification de la file d’attente par lesquelles filtrer les files d’attente sur le réseau.

ModifiedBefore

Obtient ou définit la limite supérieure de la date et de l’heure de modification de la file d’attente pour filtrer les files d’attente sur le réseau.

Méthodes

Nom Description
ClearAll()

Efface toutes les propriétés d’être intégrées à un filtre et place toutes les valeurs de propriété dans un état « non défini ».

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à

Voir aussi