MessageQueue.Exists(String) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan apakah antrean Antrean Pesan ada di jalur yang ditentukan.
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
Parameter
- path
- String
Lokasi antrean untuk ditemukan.
Mengembalikan
true
jika ada antrean dengan jalur yang ditentukan; jika tidak, false
.
Pengecualian
Sintaks path
tidak valid.
Terjadi kesalahan saat mengakses metode Antrean Pesan.
-atau-
Metode Exists(String) ini sedang dipanggil pada antrean privat jarak jauh
Aplikasi menggunakan sintaks nama format saat memverifikasi keberadaan antrean.
Contoh
Contoh kode berikut memverifikasi apakah antrean Antrean Pesan ada, lalu menghapusnya.
#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
Keterangan
Metode Exists(String) menentukan apakah antrean Antrean Pesan ada di jalur tertentu. Tidak ada metode untuk menentukan apakah ada antrean dengan nama format tertentu. Untuk informasi selengkapnya tentang sintaks nama format dan formulir sintaks jalur lainnya, lihat Path properti .)
Exists(String) adalah operasi yang mahal. Gunakan hanya ketika diperlukan dalam aplikasi.
Catatan
Metode Exists(String) ini tidak mendukung awalan FormatName .
Sintaks untuk path
parameter tergantung pada jenis antrean, seperti yang ditunjukkan dalam tabel berikut.
Jenis antrean | Sintaks |
---|---|
Antrean publik | MachineName \QueueName |
Exists(String) tidak dapat dipanggil untuk memverifikasi keberadaan antrean privat jarak jauh.
Untuk sintaks lainnya, lihat Path properti .
Atau, Anda dapat menggunakan Label untuk menjelaskan jalur antrean.
Referensi | Sintaks |
---|---|
Label | Label:[ label ] |
Tabel berikut ini memperlihatkan apakah metode ini tersedia dalam berbagai mode Grup Kerja.
Mode grup kerja | Tersedia |
---|---|
Komputer lokal | Ya |
Komputer lokal dan nama format langsung | Tidak |
Komputer jarak jauh | Tidak |
Komputer jarak jauh dan nama format langsung | Tidak |