MessageQueuePermissionAccess MessageQueuePermissionAccess MessageQueuePermissionAccess MessageQueuePermissionAccess Enum

定義

定義 System.Messaging 使用權限類別所使用的存取等級。Defines access levels used by System.Messaging permission classes.

此列舉具有 FlagsAttribute 個屬性允許以位元方式合併其成員值。

public enum class MessageQueuePermissionAccess
[System.Flags]
[System.Serializable]
public enum MessageQueuePermissionAccess
type MessageQueuePermissionAccess = 
Public Enum MessageQueuePermissionAccess
繼承
MessageQueuePermissionAccessMessageQueuePermissionAccessMessageQueuePermissionAccessMessageQueuePermissionAccess
屬性

欄位

Administer Administer Administer Administer 62

MessageQueue 可以查看可供使用的佇列、讀取佇列中的訊息以及傳送和接收訊息。The MessageQueue can look at the queues that are available, read the messages in the queue, and send and receive messages.

Browse Browse Browse Browse 2

MessageQueue 可以查看可供使用的佇列。The MessageQueue can look at the queues that are available.

None None None None 0

MessageQueue 沒有使用權限。The MessageQueue has no permissions.

Peek Peek Peek Peek 10

MessageQueue 可以查看可供使用的佇列以及讀取佇列中的訊息。The MessageQueue can look at the queues that are available and read the messages in the queue.

Receive Receive Receive Receive 26

MessageQueue 可以查看可供使用的佇列、讀取佇列中的訊息以及接收訊息。The MessageQueue can look at the queues that are available, read the messages in the queue, and receive messages.

Send Send Send Send 6

MessageQueue 可以查看可供使用的佇列以及傳送訊息。The MessageQueue can look at the queues that are available and send messages.

範例

下列程式碼範例會MessageQueuePermissionAccess使用來建立的新MessageQueuePermission實例。The following code example uses MessageQueuePermissionAccess in creating a new instance of 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);
    }
}

適用於

另請參閱