﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ErrorWrapper" FullName="System.Runtime.InteropServices.ErrorWrapper"><TypeSignature Maintainer="auto" Language="C#" Value="public sealed class ErrorWrapper" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable sealed beforefieldinit ErrorWrapper extends System.Object" /><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><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces /><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>By default, <see cref="T:System.Object" /> type arguments are marshaled as a VARIANT type, where the object type determines the VARTYPE value of the VARIANT.</para><para>The <see cref="T:System.Runtime.InteropServices.ErrorWrapper" /> type must to be passed as an <see cref="T:System.Object" /> type to be marshaled as a VARIANT of type VT_ERROR, otherwise the <see cref="T:System.Runtime.InteropServices.ErrorWrapper" /> type is marshaled as an integer.</para><para>The following table illustrates marshaling in a managed call to a native function, using platform invoke.</para><list type="table"><listheader><item><term><para>Managed signature parameter</para></term><description><para>pArr value</para></description><description><para>Marshaled as</para></description></item></listheader><item><term><para>ErrorWrapper[] pArr</para></term><description><para>ErrorWrapper[10] of ErrorWrapper(77)</para></description><description><para>Int[10]</para></description></item><item><term><para>Object[] pArr</para></term><description><para>ErrorWrapper[10] of ErrorWrapper(77)</para></description><description><para>VARIANT[10] of VT_ERROR</para></description></item><item><term><para>Object[] pArr</para></term><description><para>Object[10] of ErrorWrapper(77)</para></description><description><para>VARIANT[10] of VT_ERROR</para></description></item></list><para>The following table illustrates marshaling data in a managed call to a native function, using COM runtime callable wrappers (RCW).</para><list type="table"><listheader><item><term><para>Managed signature parameter</para></term><description><para>pArr value</para></description><description><para>Marshaled as</para></description></item></listheader><item><term><para>ErrorWrapper[] pArr</para></term><description><para>ErrorWrapper[10] of ErrorWrapper(77)</para></description><description><para>Int[10]</para></description></item><item><term><para>Object[] pArr</para></term><description><para>ErrorWrapper[10] of ErrorWrapper(77)</para></description><description><para>SafeArrayTypeMismatch exception</para></description></item><item><term><para>Object[] pArr</para></term><description><para>Object[10] of ErrorWrapper(77)</para></description><description><para>SAFEARRAY(VARIANT)</para></description></item></list><para>Note that <see cref="T:System.Runtime.InteropServices.ErrorWrapper" /> objects are not marshaled as type VT_ERROR after they are passed back from COM.  A single value is marshaled back from COM as type VT_I4, while arrays are marshaled back from COM as type VT_UI4.  </para><para>For more information on VT_ERROR, please see the existing documentation for VARENUM::VT_ERROR in the MSDN library.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Wraps objects the marshaler should marshal as a VT_ERROR.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ErrorWrapper (Exception e);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Exception e) 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="e" Type="System.Exception" /></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.Runtime.InteropServices.ErrorWrapper" /> class with the HRESULT that corresponds to the exception supplied.</para></summary><param name="e"><attribution license="cc4" from="Microsoft" modified="false" />The exception to be converted to an error code. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ErrorWrapper (int errorCode);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(int32 errorCode) 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="errorCode" Type="System.Int32" /></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.Runtime.InteropServices.ErrorWrapper" /> class with the HRESULT of the error.</para></summary><param name="errorCode"><attribution license="cc4" from="Microsoft" modified="false" />The HRESULT of the error. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ErrorWrapper (object errorCode);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(object errorCode) 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="errorCode" Type="System.Object" /></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.Runtime.InteropServices.ErrorWrapper" /> class with an object containing the HRESULT of the error.</para></summary><param name="errorCode"><attribution license="cc4" from="Microsoft" modified="false" />The object containing the HRESULT of the error. </param></Docs></Member><Member MemberName="ErrorCode"><MemberSignature Language="C#" Value="public int ErrorCode { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 ErrorCode" /><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><Docs><value>To be added: an object of type 'int'</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the error code of the wrapper.</para></summary></Docs></Member></Members></Type>