﻿<?xml version="1.0" encoding="utf-8"?><Type Name="SEHException" FullName="System.Runtime.InteropServices.SEHException"><TypeSignature Maintainer="auto" Language="C#" Value="public class SEHException : System.Runtime.InteropServices.ExternalException" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable beforefieldinit SEHException extends System.Runtime.InteropServices.ExternalException" /><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.Runtime.InteropServices.ExternalException</BaseTypeName></Base><Interfaces></Interfaces><Attributes><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.Runtime.InteropServices.SEHException" /> class handles SEH errors that are thrown from unmanaged code, but that have not been mapped to another .NET Framework exception. The <see cref="T:System.Runtime.InteropServices.SEHException" /> class also responds to the HRESULT E_FAIL, which has the value 0x80004005.</para><para>The .NET Framework often encounters unmanaged SEH exceptions that are automatically mapped to managed equivalents. There are two common unmanaged SEH exceptions:</para><list type="bullet"><item><para>STATUS_NO_MEMORY exceptions are automatically mapped to the <see cref="T:System.OutOfMemoryException" /> class.</para></item><item><para>STATUS_ACCESS_VIOLATION exceptions are automatically mapped as follows:</para><list type="bullet"><item><para>If legacyNullReferencePolicy is applied, all access violations are mapped to the <see cref="T:System.NullReferenceException" /> class.</para></item><item><para>If the address at which the read/write was attempted is not in JIT-compiled code, the exception is mapped to the <see cref="T:System.AccessViolationException" /> class.</para></item><item><para>If the address at which the read/write was attempted is in JIT-compiled code, but it is not in the OS Null partition area, the exception is mapped to the <see cref="T:System.AccessViolationException" /> class.</para></item><item><para>If there is no legacyNullReferencePolicy, and the address at which the read/write was attempted is in JIT-compiled code and in the OS Null partition area, the exception is mapped to the <see cref="T:System.NullReferenceException" /> class.</para></item></list></item></list><para>Any SEH exception that is not automatically mapped to a specific exception is mapped to the <see cref="T:System.Runtime.InteropServices.SEHException" /> class by default.</para><para>For more information, search on "unmanaged exceptions" and "Structured Exception Handling" in the MSDN Library.</para><para> Note that the <see cref="T:System.Runtime.InteropServices.SEHException" /> class does not cause unmanaged C++ exception destructors to be called. To ensure that unmanaged C++ exception destructors are called, use the following syntax in the catch block.</para><para>[Visual Basic]</para><code>Catch 
     ' Handle catch here.
End Try</code><para>[C#]</para><code>catch
{
     // Handle catch here.
}</code><para>[C++]</para><code>catch(…)
{
     // Handle catch here.
} </code></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Represents structured exception handling (SEH) errors. </para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public SEHException ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() 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 /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="T:System.Runtime.InteropServices.SEHException" /> class inherits from the <see cref="T:System.Runtime.InteropServices.ExternalException" /> class. This constructor sets the properties of the <see cref="T:System.Exception" /> object to the values in the following table.</para><list type="table"><listheader><item><term><para>Property </para></term><description><para>Value </para></description></item></listheader><item><term><para><see cref="P:System.Exception.InnerException" /></para></term><description><para>A null reference (Nothing in Visual Basic). </para></description></item><item><term><para><see cref="P:System.Exception.Message" /></para></term><description><para>A localized error message string. </para></description></item></list></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.SEHException" /> class. </para></summary></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public SEHException (string message);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string message) 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="message" Type="System.String" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para><see cref="T:System.Runtime.InteropServices.SEHException" /> inherits from <see cref="T:System.Runtime.InteropServices.ExternalException" />. This constructor sets the properties of the <see cref="T:System.Exception" /> object as shown in the following table.</para><list type="table"><listheader><item><term><para>Property </para></term><description><para>Value </para></description></item></listheader><item><term><para><see cref="P:System.Exception.InnerException" /></para></term><description><para>A null reference (Nothing in Visual Basic). </para></description></item><item><term><para><see cref="P:System.Exception.Message" /></para></term><description><para><paramref name="message" />. </para></description></item></list></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.SEHException" /> class with a specified message.</para></summary><param name="message"><attribution license="cc4" from="Microsoft" modified="false" />The message that indicates the reason for the exception. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="protected SEHException (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context);" /><MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(class System.Runtime.Serialization.SerializationInfo info, valuetype System.Runtime.Serialization.StreamingContext context) 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="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 constructor is called during deserialization to reconstitute the exception object transmitted over a stream. For more information, see the <see cref="N:System.Runtime.Serialization" /> namespace.</para><para><see cref="T:System.Runtime.InteropServices.SEHException" /> inherits from <see cref="T:System.Runtime.InteropServices.ExternalException" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.SEHException" /> class from serialization data.</para></summary><param name="info"><attribution license="cc4" from="Microsoft" modified="false" />The object that holds the serialized object data. </param><param name="context"><attribution license="cc4" from="Microsoft" modified="false" />The contextual information about the source or destination. </param></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public SEHException (string message, Exception inner);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string message, class System.Exception inner) 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="message" Type="System.String" /><Parameter Name="inner" Type="System.Exception" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>An exception that is thrown as a direct result of a previous exception should include a reference to the previous exception in the <see cref="P:System.Exception.InnerException" /> property. The <see cref="P:System.Exception.InnerException" /> property returns the same value that is passed into the constructor, or null if the <see cref="P:System.Exception.InnerException" /> property does not supply the inner exception value to the constructor.</para><para>The following table shows the initial property values for an instance of <see cref="T:System.Runtime.InteropServices.SEHException" />.</para><list type="table"><listheader><item><term><para>Property </para></term><description><para>Value </para></description></item></listheader><item><term><para><see cref="P:System.Exception.InnerException" /></para></term><description><para>The inner exception reference. </para></description></item><item><term><para><see cref="P:System.Exception.Message" /></para></term><description><para>The error message string. </para></description></item></list></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.SEHException" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.</para></summary><param name="message"><attribution license="cc4" from="Microsoft" modified="false" />The error message that explains the reason for the exception. </param><param name="inner"><attribution license="cc4" from="Microsoft" modified="false" />The exception that is the cause of the current exception. If the <paramref name="inner" /> parameter is not null, the current exception is raised in a catch block that handles the inner exception. </param></Docs></Member><Member MemberName="CanResume"><MemberSignature Language="C#" Value="public virtual bool CanResume ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool CanResume() 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 /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If <see cref="M:System.Runtime.InteropServices.SEHException.CanResume" /> returns true, then a filtered exception handler can correct the problem that caused the exception, and the code will continue from the point at which the exception was thrown.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Indicates whether the exception can be recovered from, and whether the code can continue from the point at which the exception was thrown.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>Always false, because resumable exceptions are not implemented.</para></returns></Docs></Member></Members></Type>