SEHException Sınıf

Tanım

Yapılandırılmış özel durum işleme (SEH) hatalarını temsil eder.

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

SEHException sınıfı, yönetilmeyen koddan oluşan ancak başka bir .NET Framework özel durumuyla eşlenmemiş SEH hatalarını işler. SEHException sınıfı da HRESULTE_FAIL (0x80004005) karşılık gelir.

.NET Framework genellikle yönetilen eşdeğerlere otomatik olarak eşlenen yönetilmeyen SEH özel durumlarıyla karşılaşır. İki yaygın yönetilmeyen SEH özel durumu vardır:

  • STATUS_NO_MEMORY özel durumlar otomatik olarak OutOfMemoryException sınıfına eşlenir.

  • STATUS_ACCESS_VIOLATION özel durumlar aşağıdaki gibi otomatik olarak eşlenir:

    • legacyNullReferencePolicy uygulanırsa, tüm erişim ihlalleri NullReferenceException sınıfına eşlenir.

    • Okuma/yazma girişiminde bulunulduğu adres JIT ile derlenmiş kodda değilse, özel durum AccessViolationException sınıfına eşlenir.

    • Okuma/yazma girişiminde bulunulduğu adres JIT ile derlenmiş koddaysa, ancak OS Null bölüm alanında değilse, özel durum AccessViolationException sınıfıyla eşlenir.

    • legacyNullReferencePolicyyoksa ve okuma/yazma girişiminde bulunulduğu adres JIT ile derlenmiş kodda ve işletim sistemi Null bölüm alanındaysa, özel durum NullReferenceException sınıfına eşlenir.

Belirli bir özel durumla otomatik olarak eşlenmeyen tüm SEH özel durumları varsayılan olarak SEHException sınıfına eşlenir.

SEHException sınıfının yönetilmeyen C++ özel durum yıkıcılarının çağrılmasına neden olmadığını unutmayın. Yönetilmeyen C++ özel durum yıkıcılarının çağrıldığından emin olmak için catch bloğunda aşağıdaki söz dizimini kullanın.

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.

SEHException(SerializationInfo, StreamingContext)
Geçersiz.

serileştirme verilerinden SEHException sınıfının yeni bir örneğini başlatır.

SEHException(String)

Belirtilen iletiyle SEHException sınıfının yeni bir örneğini başlatır.

SEHException(String, Exception)

Belirtilen bir hata iletisi ve bu özel durumun nedeni olan iç özel duruma başvuru ile SEHException sınıfının yeni bir örneğini başlatır.

Özellikler

Data

Özel durum hakkında kullanıcı tanımlı ek bilgiler sağlayan anahtar/değer çiftleri koleksiyonunu alır.

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

Hatanın HRESULT alır.

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

Bu özel durumla ilişkili yardım dosyasının bağlantısını alır veya ayarlar.

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

Belirli bir özel duruma atanan kodlanmış sayısal bir değer olan HRESULT değerini alır veya ayarlar.

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

Geçerli özel duruma neden olan Exception örneğini alır.

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

Geçerli özel durumu açıklayan bir ileti alır.

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

Hataya neden olan uygulamanın veya nesnenin adını alır veya ayarlar.

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

Çağrı yığınındaki anlık çerçevelerin dize gösterimini alır.

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

Geçerli özel durumu oluşturan yöntemini alır.

(Devralındığı yer: Exception)

Yöntemler

CanResume()

Özel durumun kurtarılıp kurtarılamayacağını ve kodun özel durumun oluşturulduğu noktadan devam edip edilemeyeceğini gösterir.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

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

Türetilmiş bir sınıfta geçersiz kılındığında, sonraki bir veya daha fazla özel durumun kök nedeni olan Exception döndürür.

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

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetObjectData(SerializationInfo, StreamingContext)
Geçersiz.

Türetilmiş bir sınıfta geçersiz kılındığında, özel durumla ilgili bilgilerle SerializationInfo ayarlar.

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

Geçerli örneğin çalışma zamanı türünü alır.

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

Geçerli Objectbasit bir kopyasını oluşturur.

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

Geçerli özel durumun dize gösterimini oluşturur ve döndürür.

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

Hatanın HRESULT değerini içeren bir dize döndürür.

(Devralındığı yer: ExternalException)

Ekinlikler

SerializeObjectState
Geçersiz.

Özel durum hakkında serileştirilmiş veriler içeren bir özel durum durumu nesnesi oluşturmak için bir özel durum seri hale getirildiğinde gerçekleşir.

(Devralındığı yer: Exception)

Şunlara uygulanır

Ayrıca bkz.