﻿<?xml version="1.0" encoding="utf-8"?><Type Name="UnmanagedType" FullName="System.Runtime.InteropServices.UnmanagedType" FullNameSP="System_Runtime_InteropServices_UnmanagedType" Maintainer="ecma"><TypeSignature Language="ILASM" Value=".class public sealed serializable UnmanagedType extends System.Enum" /><TypeSignature Language="C#" Value="public enum UnmanagedType" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable sealed UnmanagedType extends System.Enum" /><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><Base><BaseTypeName>System.Enum</BaseTypeName></Base><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Use the <see cref="T:System.Runtime.InteropServices.UnmanagedType" /> enumeration with the <see cref="T:System.Runtime.InteropServices.MarshalAsAttribute" /> attribute to specify how types are marshaled during interoperation with unmanaged code.  You can use this enumeration to marshal code using simple value types (I1, I2, I4, I8, R4, R8, U2, U4, and U8), unmanaged types that are unavailable in the .NET Framework, and various miscellaneous types. </para><para>For more information, see <format type="text/html"><a href="ccb68ce7-b0e9-4ffb-839d-03b1cd2c1258">Interoperating with Unmanaged Code</a></format>.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Identifies how to marshal parameters or fields to unmanaged code.</para></summary></Docs><Members><Member MemberName="AnsiBStr"><MemberSignature Language="C#" Value="AnsiBStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType AnsiBStr = int32(35)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>AnsiBStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An ANSI character string that is a length-prefixed single byte. You can use this member on the <see cref="T:System.String" /> data type.</para></summary></Docs></Member><Member MemberName="AsAny"><MemberSignature Language="C#" Value="AsAny" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType AsAny = int32(40)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>AsAny</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A dynamic type that determines the type of an object at run time and marshals the object as that type. This member is valid for platform invoke methods only.</para></summary></Docs></Member><Member MemberName="Bool"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Bool = 2" /><MemberSignature Language="C#" Value="Bool" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Bool = int32(2)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>Bool</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 4-byte Boolean value (true != 0, false = 0). This is the Win32 BOOL type.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="BStr"><MemberSignature Language="C#" Value="BStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType BStr = int32(19)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>BStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A Unicode character string that is a length-prefixed double byte. You can use this member, which is the default string in COM, on the <see cref="T:System.String" /> data type.</para></summary></Docs></Member><Member MemberName="ByValArray"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType ByValArray = 30" /><MemberSignature Language="C#" Value="ByValArray" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType ByValArray = int32(30)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>ByValArray</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>When the <see cref="P:System.Runtime.InteropServices.MarshalAsAttribute.Value" /> property is set to ByValArray, the <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.SizeConst" /> field must be set to indicate the number of elements in the array. The <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.ArraySubType" /> field can optionally contain the <see cref="T:System.Runtime.InteropServices.UnmanagedType" /> of the array elements when it is necessary to differentiate among string types. You can use this <see cref="T:System.Runtime.InteropServices.UnmanagedType" /> only on an array that whose elements appear as fields in a structure.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="ByValTStr"><MemberSignature Language="C#" Value="ByValTStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType ByValTStr = int32(23)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>ByValTStr</MemberValue><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>.NET Framework <see cref="F:System.Runtime.InteropServices.UnmanagedType.ByValTStr" /> types behave like C-style, fixed-size strings inside a structure (for example, char s[5]). The behavior in managed code differs from the Microsoft Visual Basic 6.0 behavior, which is not null terminated (for example, MyString As String * 5).</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Used for in-line, fixed-length character arrays that appear within a structure. The character type used with <see cref="F:System.Runtime.InteropServices.UnmanagedType.ByValTStr" /> is determined by the <see cref="T:System.Runtime.InteropServices.CharSet" /> argument of the <see cref="T:System.Runtime.InteropServices.StructLayoutAttribute" /> attribute applied to the containing structure. Always use the <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.SizeConst" /> field to indicate the size of the array.</para></summary></Docs></Member><Member MemberName="Currency"><MemberSignature Language="C#" Value="Currency" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Currency = int32(15)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>Currency</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A currency type. Used on a <see cref="T:System.Decimal" /> to marshal the decimal value as a COM currency type instead of as a Decimal.</para></summary></Docs></Member><Member MemberName="CustomMarshaler"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType CustomMarshaler = 44" /><MemberSignature Language="C#" Value="CustomMarshaler" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType CustomMarshaler = int32(44)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>CustomMarshaler</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Specifies the custom marshaler class when used with the <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.MarshalType" /> or <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.MarshalTypeRef" /> field. The <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.MarshalCookie" /> field can be used to pass additional information to the custom marshaler. You can use this member on any reference type.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="Error"><MemberSignature Language="C#" Value="Error" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Error = int32(45)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>Error</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A native type that is associated with an <see cref="F:System.Runtime.InteropServices.UnmanagedType.I4" /> or an <see cref="F:System.Runtime.InteropServices.UnmanagedType.U4" /> and that causes the parameter to be exported as an HRESULT in the exported type library.</para></summary></Docs></Member><Member MemberName="FunctionPtr"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType FunctionPtr = 38" /><MemberSignature Language="C#" Value="FunctionPtr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType FunctionPtr = int32(38)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>FunctionPtr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An integer that can be used as a C-style function pointer. You can use this member on a <see cref="T:System.Delegate" /> data type or on a type that inherits from a <see cref="T:System.Delegate" />.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="I1"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I1 = 3" /><MemberSignature Language="C#" Value="I1" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I1 = int32(3)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>I1</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 1-byte signed integer. You can use this member to transform a Boolean value into a 1-byte, C-style bool (true = 1, false = 0).</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="I2"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I2 = 5" /><MemberSignature Language="C#" Value="I2" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I2 = int32(5)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>I2</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 2-byte signed integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="I4"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I4 = 7" /><MemberSignature Language="C#" Value="I4" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I4 = int32(7)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>I4</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 4-byte signed integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="I8"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I8 = 9" /><MemberSignature Language="C#" Value="I8" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType I8 = int32(9)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>I8</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An 8-byte signed integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="IDispatch"><MemberSignature Language="C#" Value="IDispatch" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType IDispatch = int32(26)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>IDispatch</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A COM IDispatch pointer (Object in Microsoft Visual Basic 6.0).</para></summary></Docs></Member><Member MemberName="Interface"><MemberSignature Language="C#" Value="Interface" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Interface = int32(28)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>Interface</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A COM interface pointer. The <see cref="T:System.Guid" /> of the interface is obtained from the class metadata. Use this member to specify the exact interface type or the default interface type if you apply it to a class. This member produces the same behavior as <see cref="F:System.Runtime.InteropServices.UnmanagedType.IUnknown" /> when you apply it to the <see cref="T:System.Object" /> data type.</para></summary></Docs></Member><Member MemberName="IUnknown"><MemberSignature Language="C#" Value="IUnknown" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType IUnknown = int32(25)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>IUnknown</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A COM IUnknown pointer. You can use this member on the <see cref="T:System.Object" /> data type.</para></summary></Docs></Member><Member MemberName="LPArray"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPArray = 42" /><MemberSignature Language="C#" Value="LPArray" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPArray = int32(42)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>LPArray</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A pointer to the first element of a C-style array. When marshaling from managed to unmanaged code, the length of the array is determined by the length of the managed array. When marshaling from unmanaged to managed code, the length of the array is determined from the <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.SizeConst" /> and <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.SizeParamIndex" /> fields, optionally followed by the unmanaged type of the elements within the array when it is necessary to differentiate among string types.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="LPStr"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPStr = 20" /><MemberSignature Language="C#" Value="LPStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPStr = int32(20)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>LPStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A single byte, null-terminated ANSI character string. You can use this member on the <see cref="T:System.String" /> and <see cref="T:System.Text.StringBuilder" /> data types.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="LPStruct"><MemberSignature Language="C#" Value="LPStruct" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPStruct = int32(43)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>LPStruct</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A pointer to a C-style structure that you use to marshal managed formatted classes. This member is valid for platform invoke methods only.</para></summary></Docs></Member><Member MemberName="LPTStr"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPTStr = 22" /><MemberSignature Language="C#" Value="LPTStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPTStr = int32(22)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>LPTStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A platform-dependent character string: ANSI on Windows 98, and Unicode on Windows NT and Windows XP. This value is supported only for platform invoke and not for COM interop, because exporting a string of type LPTStr is not supported.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="LPWStr"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPWStr = 21" /><MemberSignature Language="C#" Value="LPWStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType LPWStr = int32(21)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>LPWStr</MemberValue><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Note that you cannot use the <see cref="F:System.Runtime.InteropServices.UnmanagedType.LPWStr" /> value with an unmanaged string unless the string was created by using the unmanaged CoTaskMemAlloc function.  </para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 2-byte, null-terminated Unicode character string.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="R4"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType R4 = 11" /><MemberSignature Language="C#" Value="R4" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType R4 = int32(11)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>R4</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 4-byte floating-point number.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="R8"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType R8 = 12" /><MemberSignature Language="C#" Value="R8" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType R8 = int32(12)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>R8</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An 8-byte floating-point number.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="SafeArray"><MemberSignature Language="C#" Value="SafeArray" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType SafeArray = int32(29)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>SafeArray</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A SafeArray, which is a self-describing array that carries the type, rank, and bounds of the associated array data. You can use this member with the <see cref="F:System.Runtime.InteropServices.MarshalAsAttribute.SafeArraySubType" /> field to override the default element type.</para></summary></Docs></Member><Member MemberName="Struct"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Struct = 27" /><MemberSignature Language="C#" Value="Struct" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType Struct = int32(27)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>Struct</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A VARIANT, which is used to marshal managed formatted classes and value types.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="SysInt"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType SysInt = 31" /><MemberSignature Language="C#" Value="SysInt" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType SysInt = int32(31)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>SysInt</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A platform-dependent, signed integer: 4 bytes on 32-bit Windows, 8 bytes on 64-bit Windows.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="SysUInt"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType SysUInt = 32" /><MemberSignature Language="C#" Value="SysUInt" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType SysUInt = int32(32)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>SysUInt</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A platform-dependent, unsigned integer: 4 bytes on 32-bit Windows, 8 bytes on 64-bit Windows.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="TBStr"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType TBStr = 36" /><MemberSignature Language="C#" Value="TBStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType TBStr = int32(36)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>TBStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A length-prefixed, platform-dependent char string: ANSI on Windows 98, Unicode on Windows NT. You rarely use this BSTR-like member.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="U1"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U1 = 4" /><MemberSignature Language="C#" Value="U1" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U1 = int32(4)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>U1</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 1-byte unsigned integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="U2"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U2 = 6" /><MemberSignature Language="C#" Value="U2" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U2 = int32(6)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>U2</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 2-byte unsigned integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="U4"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U4 = 8" /><MemberSignature Language="C#" Value="U4" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U4 = int32(8)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>U4</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 4-byte unsigned integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="U8"><MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U8 = 10" /><MemberSignature Language="C#" Value="U8" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType U8 = int32(10)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><Parameters /><MemberValue>U8</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An 8-byte unsigned integer.</para></summary></Docs><Excluded>0</Excluded></Member><Member MemberName="VariantBool"><MemberSignature Language="C#" Value="VariantBool" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType VariantBool = int32(37)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>VariantBool</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A 2-byte, OLE-defined VARIANT_BOOL type (true = -1, false = 0).</para></summary></Docs></Member><Member MemberName="VBByRefStr"><MemberSignature Language="C#" Value="VBByRefStr" /><MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Runtime.InteropServices.UnmanagedType VBByRefStr = int32(34)" /><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.Runtime.InteropServices.UnmanagedType</ReturnType></ReturnValue><MemberValue>VBByRefStr</MemberValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>A value that enables Visual Basic to change a string in unmanaged code and have the results reflected in managed code. This value is only supported for platform invoke.</para></summary></Docs></Member></Members><TypeExcluded>0</TypeExcluded></Type>