SemaphoreRights Enumeration
Specifies the access control rights that can be applied to named system semaphore objects.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
Assembly: System (in System.dll)
| Member name | Description | |
|---|---|---|
| ChangePermissions | The right to change the security and audit rules associated with a named semaphore. | |
| Delete | The right to delete a named semaphore. | |
| FullControl | The right to exert full control over a named semaphore, and to modify its access rules and audit rules. | |
| Modify | The right to release a named semaphore. | |
| ReadPermissions | The right to open and copy the access rules and audit rules for a named semaphore. | |
| Synchronize | The right to wait on a named semaphore. | |
| TakeOwnership | The right to change the owner of a named semaphore. |
Use the SemaphoreRights enumeration to specify access control rights when you create SemaphoreSecurity objects. To apply access rights to a named system semaphore, use SemaphoreSecurity objects with the Semaphore::Semaphore(Int32, Int32, String^, Boolean%, SemaphoreSecurity^) constructor and the Semaphore::SetAccessControl method.
For the numeric values of the underlying Windows access rights, see Synchronization Object Security and Access Rights (Windows) in the MSDN Library.
Note |
|---|
Security on synchronization objects is not supported for Windows 98 or Windows Millennium Edition. |
The following code example demonstrates the use of SemaphoreRights values when creating and using SemaphoreAccessRule objects. The example creates a SemaphoreSecurity object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing AccessControlType::Allowrule.
Note |
|---|
This example does not attach the security object to an Semaphore object; see SemaphoreSecurity, Semaphore::GetAccessControl method, and Semaphore::SetAccessControl. |
Available since 2.0
