﻿<?xml version="1.0" encoding="utf-8"?><Type Name="UIntPtr" FullName="System.UIntPtr" FullNameSP="System_UIntPtr" Maintainer="ecma"><TypeSignature Language="ILASM" Value=".class public sequential sealed serializable UIntPtr extends System.ValueType" /><TypeSignature Language="C#" Value="public struct UIntPtr : System.Runtime.Serialization.ISerializable" /><TypeSignature Language="ILAsm" Value=".class public sequential ansi serializable sealed beforefieldinit native unsigned int extends System.ValueType implements class System.Runtime.Serialization.ISerializable" /><MemberOfLibrary>RuntimeInfrastructure</MemberOfLibrary><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadingSafetyStatement>This type is safe for multithreaded operations. </ThreadingSafetyStatement><Base><BaseTypeName>System.ValueType</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.Runtime.Serialization.ISerializable</InterfaceName></Interface></Interfaces><Attributes><Attribute><AttributeName>System.CLSCompliant(false)</AttributeName></Attribute><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="T:System.UIntPtr" /> type is designed to be an integer whose size is platform-specific. That is, an instance of this type is expected to be 32-bits on 32-bit hardware and operating systems, and 64-bits on 64-bit hardware and operating systems.</para><block subset="none" type="note"><para>   The <see cref="T:System.IntPtr" /> type is CLS-compliant, while the <see cref="T:System.UIntPtr" /> type is not. Only the <see cref="T:System.IntPtr" /> type is used in the common language runtime. The <see cref="T:System.UIntPtr" /> type is provided mostly to maintain architectural symmetry with the <see cref="T:System.IntPtr" /> type.</para></block><para>The <see cref="T:System.UIntPtr" /> type can be used by languages that support pointers, and as a common means of referring to data between languages that do and do not support pointers. <see cref="T:System.UIntPtr" /> objects can also be used to hold handles.</para><para>This type implements the <see cref="T:System.Runtime.Serialization.ISerializable" /> interface.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A platform-specific type that is used to represent a pointer or a handle.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(unsigned int32 value)" /><MemberSignature Language="C#" Value="public UIntPtr (uint value);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(unsigned int32 value) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="value" Type="System.UInt32" /></Parameters><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.UIntPtr" /> structure using the specified 32-bit pointer or handle.</para></summary><param name="value"><attribution license="cc4" from="Microsoft" modified="false" />A pointer or handle contained in a 32-bit unsigned integer. </param></Docs><Excluded>0</Excluded></Member><Member MemberName=".ctor"><MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(unsigned int64 value)" /><MemberSignature Language="C#" Value="public UIntPtr (ulong value);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(unsigned int64 value) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="value" Type="System.UInt64" /></Parameters><Docs><exception cref="T:System.OverflowException">The current platform is a 32-bit platform and the value of the current instance is greater than <see cref="F:System.UInt32.MaxValue" />.</exception><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>An exception is only thrown if the value of <paramref name="value" /> requires more bits than the current platform supports.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of <see cref="T:System.UIntPtr" /> using the specified 64-bit pointer or handle.</para></summary><param name="value"><attribution license="cc4" from="Microsoft" modified="false" />A pointer or handle contained in a 64-bit unsigned integer. </param></Docs><Excluded>0</Excluded></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public UIntPtr (void* value);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(void* value) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.CLSCompliant(false)</AttributeName></Attribute></Attributes><Parameters><Parameter Name="value" Type="System.Void*" /></Parameters><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of <see cref="T:System.UIntPtr" /> using the specified pointer to an unspecified type.</para></summary><param name="value"><attribution license="cc4" from="Microsoft" modified="false" />A pointer to an unspecified type. </param></Docs></Member><Member MemberName="Add"><MemberSignature Language="C#" Value="public static UIntPtr Add (UIntPtr pointer, int offset);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig native unsigned int Add(native unsigned int pointer, int32 offset) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="pointer" Type="System.UIntPtr" /><Parameter Name="offset" Type="System.Int32" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="M:System.IntPtr.Add(System.IntPtr,System.Int32)" /> method does not throw an exception if the result is too large to represent as a pointer on the specified platform. Instead, the addition operation is performed in an unchecked context.</para><para>Languages that do not support operator overloading or custom operators can use this method to add an offset to the value of an unsigned pointer.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Adds an offset to the value of an unsigned pointer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new unsigned pointer that reflects the addition of <paramref name="offset" /> to <paramref name="pointer" />.</para></returns><param name="pointer"><attribution license="cc4" from="Microsoft" modified="false" />The unsigned pointer to add the offset to.</param><param name="offset"><attribution license="cc4" from="Microsoft" modified="false" />The offset to add.</param></Docs></Member><Member MemberName="Equals"><MemberSignature Language="ILASM" Value=".method public hidebysig virtual bool Equals(object obj)" /><MemberSignature Language="C#" Value="public override bool Equals (object obj);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object obj) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="obj" Type="System.Object" /></Parameters><Docs><remarks><para><block subset="none" type="note">The method overrides <see cref="M:System.Object.Equals(System.Object)" qualify="true" />.</block></para></remarks><param name="obj"><attribution license="cc4" from="Microsoft" modified="false" />An object to compare with this instance or null. </param><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns a value indicating whether this instance is equal to a specified object.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if <paramref name="obj" /> is an instance of <see cref="T:System.UIntPtr" /> and equals the value of this instance; otherwise, false.</para></returns><param name="obj"><attribution license="cc4" from="Microsoft" modified="false" />An object to compare with this instance or null. </param></Docs><Excluded>0</Excluded></Member><Member MemberName="GetHashCode"><MemberSignature Language="ILASM" Value=".method public hidebysig virtual int32 GetHashCode()" /><MemberSignature Language="C#" Value="public override int GetHashCode ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance int32 GetHashCode() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Parameters /><Docs><remarks><para><block subset="none" type="note">The algorithm used to generate the
 hash code is unspecified.</block></para><para><block subset="none" type="note">This method overrides <see cref="M:System.Object.GetHashCode" qualify="true" />.</block></para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the hash code for this instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A 32-bit signed integer hash code.</para></returns></Docs><Excluded>0</Excluded></Member><Member MemberName="op_Addition"><MemberSignature Language="C#" Value="public static UIntPtr op_Addition (UIntPtr pointer, int offset);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname native unsigned int op_Addition(native unsigned int pointer, int32 offset) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="pointer" Type="System.UIntPtr" /><Parameter Name="offset" Type="System.Int32" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="M:System.UIntPtr.op_Addition(System.UIntPtr,System.Int32)" /> method defines the addition operation for <see cref="T:System.UIntPtr" /> objects. It enables code such as the following.</para><para>code reference: System.UIntPtr.op_Addition#1</para><para>Languages that do not support custom operators can call the <see cref="M:System.UIntPtr.Add(System.UIntPtr,System.Int32)" /> method instead.</para><para>The addition operation does not throw an exception if the result is too large to represent as a pointer on the specified platform. Instead, it is performed in an unchecked context.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Adds an offset to the value of an unsigned pointer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new unsigned pointer that reflects the addition of <paramref name="offset" /> to <paramref name="pointer" />.</para></returns><param name="pointer"><attribution license="cc4" from="Microsoft" modified="false" />The unsigned pointer to add the offset to.</param><param name="offset"><attribution license="cc4" from="Microsoft" modified="false" />The offset to add.</param></Docs></Member><Member MemberName="op_Equality"><MemberSignature Language="ILASM" Value=".method public hidebysig static specialname bool op_Equality(valuetype System.UIntPtr value1, valuetype System.UIntPtr value2)" /><MemberSignature Language="C#" Value="public static bool op_Equality (UIntPtr value1, UIntPtr value2);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Equality(native unsigned int value1, native unsigned int value2) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="value1" Type="System.UIntPtr" /><Parameter Name="value2" Type="System.UIntPtr" /></Parameters><Docs><remarks>To be added.</remarks><altmember cref="M:System.UIntPtr.Equals(System.Object)" /><param name="value2"><attribution license="cc4" from="Microsoft" modified="false" />The second pointer or handle to compare. </param><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Determines whether two specified instances of <see cref="T:System.UIntPtr" /> are equal.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if <paramref name="value1" /> equals <paramref name="value2" />; otherwise, false.</para></returns><param name="value1"><attribution license="cc4" from="Microsoft" modified="false" />The first pointer or handle to compare. </param><param name="value2"><attribution license="cc4" from="Microsoft" modified="false" />The second pointer or handle to compare. </param></Docs><Excluded>0</Excluded></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static UIntPtr op_Explicit (uint value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname native unsigned int op_Explicit(unsigned int32 value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.UInt32" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static UIntPtr op_Explicit (ulong value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname native unsigned int op_Explicit(unsigned int64 value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.UInt64" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static uint op_Explicit (UIntPtr value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname unsigned int32 op_Explicit(native unsigned int value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt32</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.UIntPtr" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static ulong op_Explicit (UIntPtr value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname unsigned int64 op_Explicit(native unsigned int value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt64</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.UIntPtr" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static void* op_Explicit (UIntPtr value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname void* op_Explicit(native unsigned int value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.CLSCompliant(false)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Void*</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.UIntPtr" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Explicit"><MemberSignature Language="C#" Value="public static UIntPtr op_Explicit (void* value);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname native unsigned int op_Explicit(void* value) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.CLSCompliant(false)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="value" Type="System.Void*" /></Parameters><Docs><param name="value">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="op_Inequality"><MemberSignature Language="ILASM" Value=".method public hidebysig static specialname bool op_Inequality(valuetype System.UIntPtr value1, valuetype System.UIntPtr value2)" /><MemberSignature Language="C#" Value="public static bool op_Inequality (UIntPtr value1, UIntPtr value2);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Inequality(native unsigned int value1, native unsigned int value2) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="value1" Type="System.UIntPtr" /><Parameter Name="value2" Type="System.UIntPtr" /></Parameters><Docs><remarks>To be added.</remarks><altmember cref="M:System.UIntPtr.Equals(System.Object)" /><param name="value2"><attribution license="cc4" from="Microsoft" modified="false" />The second pointer or handle to compare. </param><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Determines whether two specified instances of <see cref="T:System.UIntPtr" /> are not equal.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if <paramref name="value1" /> does not equal <paramref name="value2" />; otherwise, false.</para></returns><param name="value1"><attribution license="cc4" from="Microsoft" modified="false" />The first pointer or handle to compare. </param><param name="value2"><attribution license="cc4" from="Microsoft" modified="false" />The second pointer or handle to compare. </param></Docs><Excluded>0</Excluded></Member><Member MemberName="op_Subtraction"><MemberSignature Language="C#" Value="public static UIntPtr op_Subtraction (UIntPtr pointer, int offset);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname native unsigned int op_Subtraction(native unsigned int pointer, int32 offset) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="pointer" Type="System.UIntPtr" /><Parameter Name="offset" Type="System.Int32" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="M:System.UIntPtr.op_Subtraction(System.UIntPtr,System.Int32)" /> method defines the subtraction operation for <see cref="T:System.UIntPtr" /> objects. It enables code such as the following.</para><para>code reference: System.UIntPtr.op_Addition#2</para><para>Languages that do not support custom operators can call the <see cref="M:System.UIntPtr.Subtract(System.UIntPtr,System.Int32)" /> method instead.</para><para>The subtraction operation does not throw an exception if the result is too small to represent as a pointer on the specified platform. Instead, it is performed in an unchecked context.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Subtracts an offset from the value of an unsigned pointer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new unsigned pointer that reflects the subtraction of <paramref name="offset" /> from <paramref name="pointer" />.</para></returns><param name="pointer"><attribution license="cc4" from="Microsoft" modified="false" />The unsigned pointer to subtract the offset from.</param><param name="offset"><attribution license="cc4" from="Microsoft" modified="false" />The offset to subtract.</param></Docs></Member><Member MemberName="Size"><MemberSignature Language="ILASM" Value=".property int32 Size { public hidebysig static specialname int32 get_Size() }" /><MemberSignature Language="C#" Value="public static int Size { get; }" /><MemberSignature Language="ILAsm" Value=".property int32 Size" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Parameters /><MemberValue>4</MemberValue><Docs><value><para>A <see cref="T:System.Int32" /> containing the 
   number of bytes of a pointer or handle for the current implementation. The value
   of this property is equal to the number of bytes contained by the <see langword="native unsigned int" /> type in the current implementation. </para></value><remarks><para>This property is read-only.</para><para>For more information on the 
   <see langword="native unsigned int" /> type, see Partition II of the CLI
      Specification.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the size of this instance.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="Subtract"><MemberSignature Language="C#" Value="public static UIntPtr Subtract (UIntPtr pointer, int offset);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig native unsigned int Subtract(native unsigned int pointer, int32 offset) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters><Parameter Name="pointer" Type="System.UIntPtr" /><Parameter Name="offset" Type="System.Int32" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="M:System.IntPtr.Subtract(System.IntPtr,System.Int32)" /> method does not throw an exception if the result is too small to represent as a pointer on the specified platform. Instead, the subtraction operation is performed in an unchecked context.</para><para>Languages that do not support operator overloading or custom operators can use this method to subtract an offset from the value of an unsigned pointer.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Subtracts an offset from the value of an unsigned pointer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A new unsigned pointer that reflects the subtraction of <paramref name="offset" /> from <paramref name="pointer" />.</para></returns><param name="pointer"><attribution license="cc4" from="Microsoft" modified="false" />The unsigned pointer to subtract the offset from.</param><param name="offset"><attribution license="cc4" from="Microsoft" modified="false" />The offset to subtract.</param></Docs></Member><Member MemberName="System.Runtime.Serialization.ISerializable.GetObjectData"><MemberSignature Language="C#" Value="void ISerializable.GetObjectData (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Runtime.Serialization.ISerializable.GetObjectData(class System.Runtime.Serialization.SerializationInfo info, valuetype System.Runtime.Serialization.StreamingContext context) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="info" Type="System.Runtime.Serialization.SerializationInfo" /><Parameter Name="context" Type="System.Runtime.Serialization.StreamingContext" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method populates the <paramref name="info" /> parameter with the value of the current <see cref="T:System.UIntPtr" /> object.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object with the data needed to serialize the current <see cref="T:System.UIntPtr" /> object.</para></summary><param name="info"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object to populate with data. </param><param name="context"><attribution license="cc4" from="Microsoft" modified="false" />The destination for this serialization. (This parameter is not used; specify null.)</param></Docs></Member><Member MemberName="ToPointer"><MemberSignature Language="ILASM" Value=".method public hidebysig instance class System.Void* ToPointer()" /><MemberSignature Language="C#" Value="public void* ToPointer ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void* ToPointer() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.CLSCompliant(false)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Void*</ReturnType></ReturnValue><Parameters /><Docs><remarks><para><block subset="none" type="note">A pointer to <see langword="void" />
points to memory containing data of an unspecified type.</block></para><para>This method is not CLS-compliant. For a CLS-compliant
   alternative use <see cref="M:System.IntPtr.ToPointer" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Converts the value of this instance to a pointer to an unspecified type.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A pointer to <see cref="T:System.Void" />; that is, a pointer to memory containing data of an unspecified type.</para></returns></Docs><Excluded>0</Excluded></Member><Member MemberName="ToString"><MemberSignature Language="ILASM" Value=".method public hidebysig virtual string ToString()" /><MemberSignature Language="C#" Value="public override string ToString ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If the value of the <see cref="P:System.IntPtr.Size" /> property for this instance is 4, then this method is equivalent to <see cref="M:System.UInt32.ToString" />; otherwise, this method is equivalent to <see cref="M:System.UInt64.ToString" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Converts the numeric value of this instance to its equivalent string representation.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The string representation of the value of this instance.</para></returns></Docs><Excluded>0</Excluded></Member><Member MemberName="ToUInt32"><MemberSignature Language="ILASM" Value=".method public hidebysig instance unsigned int32 ToUInt32()" /><MemberSignature Language="C#" Value="public uint ToUInt32 ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance unsigned int32 ToUInt32() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt32</ReturnType></ReturnValue><Parameters /><Docs><exception cref="T:System.OverflowException">The current platform is not a 32-bit platform and the value of the current instance is greater than <see cref="F:System.UInt32.MaxValue" /> .</exception><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>An exception is only thrown if the value of <paramref name="value" /> requires more bits than the current platform supports.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Converts the value of this instance to a 32-bit unsigned integer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A 32-bit unsigned integer equal to the value of this instance.</para></returns></Docs><Excluded>0</Excluded></Member><Member MemberName="ToUInt64"><MemberSignature Language="ILASM" Value=".method public hidebysig instance unsigned int64 ToUInt64()" /><MemberSignature Language="C#" Value="public ulong ToUInt64 ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance unsigned int64 ToUInt64() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt64</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Converts the value of this instance to a 64-bit unsigned integer.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A 64-bit unsigned integer equal to the value of this instance.</para></returns></Docs><Excluded>0</Excluded></Member><Member MemberName="Zero"><MemberSignature Language="ILASM" Value=".field public static initOnly valuetype System.UIntPtr Zero" /><MemberSignature Language="C#" Value="public static readonly UIntPtr Zero;" /><MemberSignature Language="ILAsm" Value=".field public static initonly native unsigned int Zero" /><MemberType>Field</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UIntPtr</ReturnType></ReturnValue><Parameters /><MemberValue>0</MemberValue><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The value of this field is not equivalent to null. Use this field to efficiently determine whether an instance of <see cref="T:System.UIntPtr" /> has been set to a value other than zero.</para><para>For example, assume the variable, uip, is an instance of <see cref="T:System.UIntPtr" />. You can determine if it has been set by comparing it to the value returned by a constructor, for example: " if uip != new UIntPtr(0)... ". However, invoking a constructor to get an unintialized pointer is inefficient. It is better to code either " if uip != UIntPtr.Zero... ", or " if !UIntPtr.Zero.Equals(uip)... ".</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A read-only field that represents a pointer or handle that has been initialized to zero.</para></summary></Docs><Excluded>0</Excluded></Member></Members><TypeExcluded>0</TypeExcluded></Type>