Condividi tramite


MessageQueue.Exists(String) Metodo

Definizione

Determina se una coda di Accodamento messaggi è presente nel percorso specificato.

public:
 static bool Exists(System::String ^ path);
public static bool Exists (string path);
static member Exists : string -> bool
Public Shared Function Exists (path As String) As Boolean

Parametri

path
String

Posizione della coda da trovare.

Restituisce

true se esiste una coda con il percorso specificato; in caso contrario, false.

Eccezioni

La sintassi di path non è valida.

Si è verificato un errore durante l'accesso a un metodo di Accodamento messaggi.

-oppure-

Il metodo Exists(String) viene chiamato su una coda privata remota.

Nell'applicazione è stata utilizzata la sintassi dei nomi di formato durante la verifica dell'esistenza della coda.

Esempio

Nell'esempio di codice seguente viene verificato se esiste una coda accodamento messaggi e quindi la elimina.

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

using namespace System;
using namespace System::Messaging;
int main()
{
   
   // Determine whether the queue exists.
   if ( MessageQueue::Exists( ".\\myQueue" ) )
   {
      try
      {
         
         // Delete the queue.
         MessageQueue::Delete( ".\\myQueue" );
      }
      catch ( MessageQueueException^ e ) 
      {
         if ( e->MessageQueueErrorCode == MessageQueueErrorCode::AccessDenied )
         {
            Console::WriteLine( "Access is denied. Queue might be a system queue." );
         }
         
         // Handle other sources of MessageQueueException.
      }

   }

   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 verifies existence and attempts to
        // delete a queue.
        //**************************************************

        public static void Main()
        {

            // Determine whether the queue exists.
            if (MessageQueue.Exists(".\\myQueue"))
            {
                try
                {
                    // Delete the queue.
                    MessageQueue.Delete(".\\myQueue");
                }
                catch(MessageQueueException e)
                {
                    if(e.MessageQueueErrorCode ==
                        MessageQueueErrorCode.AccessDenied)
                    {
                        Console.WriteLine("Access is denied. " +
                            "Queue might be a system queue.");
                    }

                    // Handle other sources of MessageQueueException.
                }
            }
        
            return;
        }
    }
}
Imports System.Messaging



Public Class MyNewQueue


        
        ' Provides an entry point into the application.
        '		 
        ' This example verifies existence and attempts to 
        ' delete a queue.
        

        Public Shared Sub Main()

            ' Determine whether the queue exists.
            If MessageQueue.Exists(".\myQueue") Then

                Try

                    ' Delete the queue.
                    MessageQueue.Delete(".\myQueue")

                Catch e As MessageQueueException

                    If e.MessageQueueErrorCode = _
                        MessageQueueErrorCode.AccessDenied Then

                        Console.WriteLine("Access is denied. " _
                            + "Queue might be a system queue.")
                    End If

                    ' Handle other sources of exceptions as necessary.

                End Try

            End If


            Return

        End Sub

End Class

Commenti

Il Exists(String) metodo determina se esiste una coda di accodamento messaggi in un percorso specificato. Non esiste alcun metodo per determinare se esiste una coda con un nome di formato specificato. Per altre informazioni sulla sintassi del nome di formato e su altri moduli di sintassi del percorso, vedere la Path proprietà .

Exists(String) è un'operazione costosa. Usarlo solo quando è necessario all'interno dell'applicazione.

Nota

Il Exists(String) metodo non supporta il FormatName prefisso.

La sintassi per il path parametro dipende dal tipo di coda, come illustrato nella tabella seguente.

Tipo di coda Sintassi
Coda pubblica MachineName\QueueName

Exists(String) non può essere chiamato per verificare l'esistenza di una coda privata remota.

Per altre sintassi, vedere la Path proprietà .

In alternativa, è possibile usare per Label descrivere il percorso della coda.

Riferimento Sintassi
Etichetta Label:[ label ]

Nella tabella seguente viene illustrato se questo metodo è disponibile in varie modalità gruppo di lavoro.

Modalità gruppo di lavoro Disponibile
Computer locale
Computer locale e nome del formato diretto No
Computer remoto No
Nome del formato diretto e del computer remoto No

Si applica a

Vedi anche