Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
264 lines (256 sloc) 14.5 KB
<Type Name="MutexRights" FullName="System.Security.AccessControl.MutexRights">
<TypeSignature Language="C#" Value="public enum MutexRights" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed MutexRights extends System.Enum" />
<TypeSignature Language="DocId" Value="T:System.Security.AccessControl.MutexRights" />
<TypeSignature Language="VB.NET" Value="Public Enum MutexRights" />
<TypeSignature Language="C++ CLI" Value="public enum class MutexRights" />
<TypeSignature Language="F#" Value="type MutexRights = " />
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Attributes>
<Attribute FrameworkAlternate="netcore-1.0;netcore-1.1;netcore-2.0;netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0;netcore-2.1;netframework-4.8;dotnet-plat-ext-2.1;netcore-2.2;netcore-3.0;dotnet-plat-ext-2.2;dotnet-plat-ext-3.0">
<AttributeName>System.Flags</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netcore-1.0;netcore-1.1">
<AttributeName>System.Security.SecurityCritical</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Specifies the access control rights that can be applied to named system mutex objects.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use the <xref:System.Security.AccessControl.MutexRights> enumeration to specify access control rights when you create <xref:System.Security.AccessControl.MutexSecurity> objects. To apply access rights to a named system mutex, use <xref:System.Security.AccessControl.MutexSecurity> objects with the <xref:System.Threading.Mutex.%23ctor%28System.Boolean%2CSystem.String%2CSystem.Boolean%40%2CSystem.Security.AccessControl.MutexSecurity%29> constructor and the <xref:System.Threading.Mutex.SetAccessControl%2A?displayProperty=nameWithType> method.
> [!NOTE]
> Security on synchronization objects is not supported for Windows 98 or Windows Millennium Edition.
## Examples
The following code example demonstrates the use of <xref:System.Security.AccessControl.MutexRights> values when creating and using <xref:System.Security.AccessControl.MutexAccessRule> objects. The example creates an <xref:System.Security.AccessControl.MutexSecurity> 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 <xref:System.Security.AccessControl.AccessControlType.Allow?displayProperty=nameWithType> rule.
> [!NOTE]
> This example does not attach the security object to a <xref:System.Threading.Mutex> object; see <xref:System.Security.AccessControl.MutexSecurity>, <xref:System.Threading.Mutex.GetAccessControl%2A?displayProperty=nameWithType> method, and <xref:System.Threading.Mutex.SetAccessControl%2A?displayProperty=nameWithType>.
[!code-csharp[System.Security.AccessControl.MutexSecurity.AddAccessRule#1](~/samples/snippets/csharp/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/CS/source.cs#1)]
[!code-vb[System.Security.AccessControl.MutexSecurity.AddAccessRule#1](~/samples/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/VB/source.vb#1)]
]]></format>
</remarks>
<altmember cref="T:System.Security.AccessControl.MutexAccessRule" />
<altmember cref="T:System.Security.AccessControl.MutexSecurity" />
</Docs>
<Members>
<Member MemberName="ChangePermissions">
<MemberSignature Language="C#" Value="ChangePermissions" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights ChangePermissions = int32(262144)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.ChangePermissions" />
<MemberSignature Language="VB.NET" Value="ChangePermissions" />
<MemberSignature Language="C++ CLI" Value="ChangePermissions" />
<MemberSignature Language="F#" Value="ChangePermissions = 262144" Usage="System.Security.AccessControl.MutexRights.ChangePermissions" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>262144</MemberValue>
<Docs>
<summary>The right to change the security and audit rules associated with a named mutex.</summary>
</Docs>
</Member>
<Member MemberName="Delete">
<MemberSignature Language="C#" Value="Delete" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights Delete = int32(65536)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.Delete" />
<MemberSignature Language="VB.NET" Value="Delete" />
<MemberSignature Language="C++ CLI" Value="Delete" />
<MemberSignature Language="F#" Value="Delete = 65536" Usage="System.Security.AccessControl.MutexRights.Delete" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>65536</MemberValue>
<Docs>
<summary>The right to delete a named mutex.</summary>
</Docs>
</Member>
<Member MemberName="FullControl">
<MemberSignature Language="C#" Value="FullControl" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights FullControl = int32(2031617)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.FullControl" />
<MemberSignature Language="VB.NET" Value="FullControl" />
<MemberSignature Language="C++ CLI" Value="FullControl" />
<MemberSignature Language="F#" Value="FullControl = 2031617" Usage="System.Security.AccessControl.MutexRights.FullControl" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>2031617</MemberValue>
<Docs>
<summary>The right to exert full control over a named mutex, and to modify its access rules and audit rules.</summary>
</Docs>
</Member>
<Member MemberName="Modify">
<MemberSignature Language="C#" Value="Modify" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights Modify = int32(1)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.Modify" />
<MemberSignature Language="VB.NET" Value="Modify" />
<MemberSignature Language="C++ CLI" Value="Modify" />
<MemberSignature Language="F#" Value="Modify = 1" Usage="System.Security.AccessControl.MutexRights.Modify" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>1</MemberValue>
<Docs>
<summary>The right to release a named mutex.</summary>
</Docs>
</Member>
<Member MemberName="ReadPermissions">
<MemberSignature Language="C#" Value="ReadPermissions" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights ReadPermissions = int32(131072)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.ReadPermissions" />
<MemberSignature Language="VB.NET" Value="ReadPermissions" />
<MemberSignature Language="C++ CLI" Value="ReadPermissions" />
<MemberSignature Language="F#" Value="ReadPermissions = 131072" Usage="System.Security.AccessControl.MutexRights.ReadPermissions" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>131072</MemberValue>
<Docs>
<summary>The right to open and copy the access rules and audit rules for a named mutex.</summary>
</Docs>
</Member>
<Member MemberName="Synchronize">
<MemberSignature Language="C#" Value="Synchronize" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights Synchronize = int32(1048576)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.Synchronize" />
<MemberSignature Language="VB.NET" Value="Synchronize" />
<MemberSignature Language="C++ CLI" Value="Synchronize" />
<MemberSignature Language="F#" Value="Synchronize = 1048576" Usage="System.Security.AccessControl.MutexRights.Synchronize" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>1048576</MemberValue>
<Docs>
<summary>The right to wait on a named mutex.</summary>
</Docs>
</Member>
<Member MemberName="TakeOwnership">
<MemberSignature Language="C#" Value="TakeOwnership" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Security.AccessControl.MutexRights TakeOwnership = int32(524288)" />
<MemberSignature Language="DocId" Value="F:System.Security.AccessControl.MutexRights.TakeOwnership" />
<MemberSignature Language="VB.NET" Value="TakeOwnership" />
<MemberSignature Language="C++ CLI" Value="TakeOwnership" />
<MemberSignature Language="F#" Value="TakeOwnership = 524288" Usage="System.Security.AccessControl.MutexRights.TakeOwnership" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>System.Threading.AccessControl</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.2.0</AssemblyVersion>
<AssemblyVersion>4.0.3.0</AssemblyVersion>
<AssemblyVersion>4.0.4.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Security.AccessControl.MutexRights</ReturnType>
</ReturnValue>
<MemberValue>524288</MemberValue>
<Docs>
<summary>The right to change the owner of a named mutex.</summary>
</Docs>
</Member>
</Members>
</Type>
You can’t perform that action at this time.