Freigeben über


MessageQueuePermissionAccess-Enumeration

Definiert Zugriffsebenen, die von System.Messaging-Berechtigungsklassen verwendet werden.

Diese Enumeration verfügt über ein FlagsAttribute -Attribut, das die bitweise Kombination der Memberwerte zulässt.

Namespace: System.Messaging
Assembly: System.Messaging (in system.messaging.dll)

Syntax

'Declaration
<SerializableAttribute> _
<FlagsAttribute> _
Public Enumeration MessageQueuePermissionAccess
'Usage
Dim instance As MessageQueuePermissionAccess
[SerializableAttribute] 
[FlagsAttribute] 
public enum MessageQueuePermissionAccess
[SerializableAttribute] 
[FlagsAttribute] 
public enum class MessageQueuePermissionAccess
/** @attribute SerializableAttribute() */ 
/** @attribute FlagsAttribute() */ 
public enum MessageQueuePermissionAccess
SerializableAttribute 
FlagsAttribute 
public enum MessageQueuePermissionAccess

Member

  Membername Beschreibung
Unterstützt von .NET Compact Framework Administer Die MessageQueue kann die verfügbaren Warteschlangen einsehen, die Meldungen in der Warteschlange lesen sowie Meldungen senden und empfangen. 
Unterstützt von .NET Compact Framework Browse Die MessageQueue kann die verfügbaren Warteschlangen einsehen. 
Unterstützt von .NET Compact Framework None Die MessageQueue verfügt über keine Berechtigungen. 
Unterstützt von .NET Compact Framework Peek Die MessageQueue kann die verfügbaren Warteschlangen einsehen und die Meldungen in der Warteschlange lesen. 
Unterstützt von .NET Compact Framework Receive Die MessageQueue kann die verfügbaren Warteschlangen einsehen, die Meldungen in der Warteschlange lesen und Meldungen empfangen. 
Unterstützt von .NET Compact Framework Send Die MessageQueue kann die verfügbaren Warteschlangen einsehen und Meldungen senden. 

Beispiel

Im folgenden Codebeispiel wird mithilfe von MessageQueuePermissionAccess eine neue Instanz von MessageQueuePermission erstellt.

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);
    }
}
#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);
    }
}

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0

Siehe auch

Referenz

System.Messaging-Namespace
MessageQueuePermission-Klasse
MessageQueuePermissionAttribute
MessageQueuePermissionEntry
MessageQueuePermissionEntryCollection