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.
Assembly: System.Messaging (in System.Messaging.dll)
| Member name | Description | |
|---|---|---|
| Administer | The MessageQueue can look at the queues that are available, read the messages in the queue, and send and receive messages. | |
| Browse | The MessageQueue can look at the queues that are available. | |
| None | The MessageQueue has no permissions. | |
| Peek | The MessageQueue can look at the queues that are available and read the messages in the queue. | |
| Receive | The MessageQueue can look at the queues that are available, read the messages in the queue, and receive messages. | |
| Send | The 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.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); } }
Available since 1.1