MessageQueue.Exists(String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Determina se existe uma fila de Enfileiramento de Mensagens no caminho especificado.
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
Parâmetros
- path
- String
O local da fila a ser localizada.
Retornos
true se existir uma fila com o caminho especificado; caso contrário, false.
Exceções
A path sintaxe não é válida.
Ocorreu um erro ao acessar um método de Enfileiramento de Mensagens.
- ou -
O Exists(String) método está sendo chamado em uma fila privada remota
O aplicativo usou a sintaxe de nome de formato ao verificar a existência da fila.
Exemplos
O exemplo de código a seguir verifica se existe uma fila de Enfileiramento de Mensagens e a exclui.
#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
Comentários
O Exists(String) método determina se existe uma fila de Enfileiramento de Mensagens em um caminho especificado. Não existe nenhum método para determinar se existe uma fila com um nome de formato especificado. Para obter mais informações sobre a sintaxe do nome do formato e outros formulários de sintaxe de caminho, consulte a Path propriedade.)
Exists(String) é uma operação cara. Use-o somente quando for necessário dentro do aplicativo.
Observação
O Exists(String) método não dá suporte ao FormatName prefixo.
A sintaxe do path parâmetro depende do tipo de fila, conforme mostrado na tabela a seguir.
| Tipo de fila | Sintaxe |
|---|---|
| Fila pública | MachineName\QueueName |
Exists(String) não pode ser chamado para verificar a existência de uma fila privada remota.
Para obter mais sintaxe, consulte a Path propriedade.
Como alternativa, você pode usar o Label caminho da fila para descrever.
| Referência | Sintaxe |
|---|---|
| Etiqueta | Label:[ label ] |
A tabela a seguir mostra se esse método está disponível em vários modos de Grupo de Trabalho.
| Modo de grupo de trabalho | Disponível |
|---|---|
| Computador local | Sim |
| Nome do computador local e do formato direto | No |
| Computador remoto | No |
| Computador remoto e nome do formato direto | No |