MessageQueuePermissionAccess Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert Zugriffsstufen, die von System.Messaging Berechtigungsklassen verwendet werden.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class MessageQueuePermissionAccess
[System.Flags]
public enum MessageQueuePermissionAccess
[System.Flags]
[System.Serializable]
public enum MessageQueuePermissionAccess
[<System.Flags>]
type MessageQueuePermissionAccess =
[<System.Flags>]
[<System.Serializable>]
type MessageQueuePermissionAccess =
Public Enum MessageQueuePermissionAccess
- Vererbung
- Attribute
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| None | 0 | Dies MessageQueue hat keine Berechtigungen. |
| Browse | 2 | Die MessageQueue Liste kann sich die verfügbaren Warteschlangen ansehen. |
| Send | 6 | Die MessageQueue Liste kann die verfügbaren Warteschlangen anzeigen und Nachrichten senden. |
| Peek | 10 | Die MessageQueue Warteschlange kann die verfügbaren Warteschlangen anzeigen und die Nachrichten in der Warteschlange lesen. |
| Receive | 26 | Sie MessageQueue können die verfügbaren Warteschlangen betrachten, die Nachrichten in der Warteschlange lesen und Nachrichten empfangen. |
| Administer | 62 | Sie MessageQueue können die verfügbaren Warteschlangen betrachten, die Nachrichten in der Warteschlange lesen und Nachrichten senden und empfangen. |
Beispiele
Im folgenden Codebeispiel wird MessageQueuePermissionAccess zum Erstellen einer neuen Instanz von MessageQueuePermission.
#using <System.dll>
#using <System.Messaging.dll>
using namespace System;
using namespace System::Messaging;
// Creates a new queue.
void CreateQueue(String^ queuePath, bool transactional)
{
if (!MessageQueue::Exists(queuePath))
{
MessageQueue^ queue = MessageQueue::Create(queuePath, transactional);
queue->Close();
}
else
{
Console::WriteLine("{0} already exists.",queuePath);
}
}
// Demonstrates the use of MessageQueuePermissionAccess
void CreatePermission()
{
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Create a new instance of MessageQueuePermission.
MessageQueuePermission^ permission = gcnew MessageQueuePermission(
MessageQueuePermissionAccess::Receive, queue->MachineName,
queue->Label, queue->Category.ToString());
queue->Close();
}
int main()
{
try
{
// Create a non-transactional queue on the local computer.
CreateQueue(".\\exampleQueue", false);
// Demonstrate use of MessageQueuePermissionAccess.
CreatePermission();
}
catch (InvalidOperationException^)
{
Console::WriteLine("Please install Message Queuing.");
}
catch (MessageQueueException^ ex)
{
Console::WriteLine(ex->Message);
}
}
using System;
using System.Messaging;
public class MessageQueuePermissionAccessExample
{
public static void Main()
{
// Create a new instance of the class.
MessageQueuePermissionAccessExample example =
new MessageQueuePermissionAccessExample();
// Create a non-transactional queue on the local computer.
CreateQueue(".\\exampleQueue", false);
// Demonstrate use of MessageQueuePermissionAccess.
example.CreatePermission();
}
// Creates a new queue.
public static void CreateQueue(string queuePath, bool transactional)
{
if(!MessageQueue.Exists(queuePath))
{
MessageQueue.Create(queuePath, transactional);
}
else
{
Console.WriteLine(queuePath + " already exists.");
}
}
// Demonstrates the use of MessageQueuePermissionAccess
public void CreatePermission()
{
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
string machineName = queue.MachineName;
string label = queue.Label;
string category = queue.Category.ToString();
// Create a new instance of MessageQueuePermission.
MessageQueuePermission permission = new MessageQueuePermission(
MessageQueuePermissionAccess.Receive,
machineName,
label,
category);
}
}