SEHException Sınıf

Tanım

Yapılandırılmış özel durum işleme (SEH) hatalarını temsil eder.Represents structured exception handling (SEH) errors.

public ref class SEHException : Exception
public ref class SEHException : System::Runtime::InteropServices::ExternalException
public class SEHException : Exception
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SEHException : System.Runtime.InteropServices.ExternalException
type SEHException = class
    inherit Exception
type SEHException = class
    inherit ExternalException
[<System.Serializable>]
type SEHException = class
    inherit ExternalException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SEHException = class
    inherit ExternalException
Public Class SEHException
Inherits Exception
Public Class SEHException
Inherits ExternalException
Devralma
SEHException
Devralma
Öznitelikler

Açıklamalar

SEHExceptionSınıfı, yönetilmeyen koddan oluşturulan ancak başka bir .NET Framework özel durumuyla EŞLENMEMIŞ SEH hatalarını işler.The SEHException class handles SEH errors that are thrown from unmanaged code, but that have not been mapped to another .NET Framework exception. SEHExceptionSınıf Ayrıca HRESULT E_FAIL (0x80004005) öğesine de karşılık gelir.The SEHException class also corresponds to the HRESULT E_FAIL (0x80004005).

.NET Framework, genellikle yönetilen eşdeğerlerine otomatik olarak eşlenmiş yönetilmeyen SEH özel durumlarına rasttırlar.The .NET Framework often encounters unmanaged SEH exceptions that are automatically mapped to managed equivalents. İki yaygın yönetilmeyen SEH özel durumu vardır:There are two common unmanaged SEH exceptions:

  • STATUS_NO_MEMORY özel durumlar sınıfa otomatik olarak eşlenir OutOfMemoryException .STATUS_NO_MEMORY exceptions are automatically mapped to the OutOfMemoryException class.

  • STATUS_ACCESS_VIOLATION özel durumlar aşağıdaki şekilde otomatik olarak eşlenir:STATUS_ACCESS_VIOLATION exceptions are automatically mapped as follows:

    • legacyNullReferencePolicyUygulanırsa, tüm erişim ihlalleri NullReferenceException sınıfına eşlenir.If legacyNullReferencePolicy is applied, all access violations are mapped to the NullReferenceException class.

    • Okuma/yazma denendiği adres JıT olarak derlenmiş kodda değilse, özel durum AccessViolationException sınıfıyla eşlenir.If the address at which the read/write was attempted is not in JIT-compiled code, the exception is mapped to the AccessViolationException class.

    • Okuma/yazma denendiği adres JıT olarak derlenen kodda ise, ancak işletim sistemi null bölüm alanında değilse, özel durum AccessViolationException sınıfıyla eşleştirilir.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 AccessViolationException class.

    • Hayır ise legacyNullReferencePolicy ve okuma/yazma denendiği adres JIT olarak derlenen kodda ve işletim sistemi null bölüm alanında ise, özel durum NullReferenceException sınıfıyla eşleştirilir.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 NullReferenceException class.

Belirli bir özel durumla otomatik olarak eşlenmeyen herhangi bir SEH özel durumu, SEHException Varsayılan olarak sınıfıyla eşleştirilir.Any SEH exception that is not automatically mapped to a specific exception is mapped to the SEHException class by default.

SEHExceptionSınıfın yönetilmeyen C++ özel durum yıkıcılarının çağrılmasına neden olmadığına unutmayın.Note that the SEHException class does not cause unmanaged C++ exception destructors to be called. Yönetilmeyen C++ özel durum yıkıcıları 'nın çağrıldığından emin olmak için, bloğunda aşağıdaki söz dizimini kullanın catch .To ensure that unmanaged C++ exception destructors are called, use the following syntax in the catch block.

Catch   
     ' Handle catch here.  
End Try  
catch  
{  
     // Handle catch here.  
}  
catch(…)  
{  
     // Handle catch here.  
}   

Oluşturucular

SEHException()

SEHException sınıfının yeni bir örneğini başlatır.Initializes a new instance of the SEHException class.

SEHException(SerializationInfo, StreamingContext)

Serileştirme verilerinden sınıfının yeni bir örneğini başlatır SEHException .Initializes a new instance of the SEHException class from serialization data.

SEHException(String)

Belirtilen iletiyle sınıfının yeni bir örneğini başlatır SEHException .Initializes a new instance of the SEHException class with a specified message.

SEHException(String, Exception)

SEHExceptionBelirtilen bir hata iletisiyle sınıfın yeni bir örneğini ve bu özel durumun nedeni olan iç özel duruma bir başvuruyu başlatır.Initializes a new instance of the SEHException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Özellikler

Data

Özel durum hakkında ek kullanıcı tanımlı bilgiler sağlayan anahtar/değer çiftleri koleksiyonunu alır.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Devralındığı yer: Exception)
ErrorCode

Hatayı alır HRESULT .Gets the HRESULT of the error.

(Devralındığı yer: ExternalException)
HelpLink

Bu özel durumla ilişkili Yardım dosyasının bağlantısını alır veya ayarlar.Gets or sets a link to the help file associated with this exception.

(Devralındığı yer: Exception)
HResult

Belirli bir özel duruma atanan kodlanmış bir sayısal değer olan HRESULT 'yi alır veya ayarlar.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Devralındığı yer: Exception)
InnerException

ExceptionGeçerli özel duruma neden olan örneği alır.Gets the Exception instance that caused the current exception.

(Devralındığı yer: Exception)
Message

Geçerli özel durumu açıklayan bir ileti alır.Gets a message that describes the current exception.

(Devralındığı yer: Exception)
Source

Uygulamanın veya hataya neden olan nesnenin adını alır veya ayarlar.Gets or sets the name of the application or the object that causes the error.

(Devralındığı yer: Exception)
StackTrace

Çağrı yığınında anlık çerçevelerin dize gösterimini alır.Gets a string representation of the immediate frames on the call stack.

(Devralındığı yer: Exception)
TargetSite

Geçerli özel durumu oluşturan yöntemi alır.Gets the method that throws the current exception.

(Devralındığı yer: Exception)

Yöntemler

CanResume()

Özel durumun kaynağından kurtarılıp kurtarılameyeceğini ve kodun özel durumun oluşturulduğu noktadan devam edip edemeyeceğini gösterir.Indicates whether the exception can be recovered from, and whether the code can continue from the point at which the exception was thrown.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.Determines whether the specified object is equal to the current object.

(Devralındığı yer: Object)
GetBaseException()

Türetilmiş bir sınıfta geçersiz kılınırsa, Exception bir veya daha fazla sonraki özel durumun kök nedeni olan öğesini döndürür.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Devralındığı yer: Exception)
GetHashCode()

Varsayılan karma işlevi olarak işlev görür.Serves as the default hash function.

(Devralındığı yer: Object)
GetObjectData(SerializationInfo, StreamingContext)

Türetilmiş bir sınıfta geçersiz kılınırsa, SerializationInfo özel durum hakkındaki bilgileri ayarlar.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Devralındığı yer: Exception)
GetType()

Geçerli örneğin çalışma zamanı türünü alır.Gets the runtime type of the current instance.

(Devralındığı yer: Exception)
MemberwiseClone()

Geçerli bir basit kopyasını oluşturur Object .Creates a shallow copy of the current Object.

(Devralındığı yer: Object)
ToString()

Geçerli özel durumun dize gösterimini oluşturur ve döndürür.Creates and returns a string representation of the current exception.

(Devralındığı yer: Exception)
ToString()

Hatanın HRESULT değerini içeren bir dize döndürür.Returns a string that contains the HRESULT of the error.

(Devralındığı yer: ExternalException)

Ekinlikler

SerializeObjectState

Özel durum hakkında serileştirilmiş veri içeren bir özel durum nesnesi oluşturmak için bir özel durum serileştirildiğinde gerçekleşir.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Devralındığı yer: Exception)

Şunlara uygulanır

Ayrıca bkz.