Export (0) Print
Expand All
Expand Minimize

MessageQueuePermissionAccess Enumeration

Defines access levels used by System.Messaging permission classes.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

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

[SerializableAttribute]
[FlagsAttribute]
public enum MessageQueuePermissionAccess

Member nameDescription
AdministerThe MessageQueue can look at the queues that are available, read the messages in the queue, and send and receive messages.
BrowseThe MessageQueue can look at the queues that are available.
NoneThe MessageQueue has no permissions.
PeekThe MessageQueue can look at the queues that are available and read the messages in the queue.
ReceiveThe MessageQueue can look at the queues that are available, read the messages in the queue, and receive messages.
SendThe MessageQueue can look at the queues that are available and send messages.

The following code example uses MessageQueuePermissionAccess in creating a new instance of MessageQueuePermission.


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

.NET Framework

Supported in: 4.5.3, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft