SEHException Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili kesalahan penanganan pengecualian terstruktur (SEH).
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
- Warisan
- Warisan
- Atribut
Keterangan
Kelas SEHException menangani kesalahan SEH yang dilemparkan dari kode yang tidak dikelola, tetapi belum dipetakan ke pengecualian kerangka kerja .NET lain. Kelas SEHException juga sesuai dengan HRESULTE_FAIL (0x80004005).
.NET sering mengalami pengecualian SEH yang tidak dikelola yang secara otomatis dipetakan ke setara terkelola. Ada dua pengecualian SEH umum yang tidak dikelola:
STATUS_NO_MEMORYpengecualian secara otomatis dipetakan ke OutOfMemoryException kelas .STATUS_ACCESS_VIOLATIONpengecualian dipetakan secara otomatis sebagai berikut:- Jika
legacyNullReferencePolicyditerapkan, semua pelanggaran akses dipetakan ke NullReferenceException kelas . - Jika alamat di mana baca/tulis dicoba tidak dalam kode yang dikompilasi JIT, pengecualian dipetakan ke AccessViolationException kelas .
- Jika alamat di mana baca/tulis dicoba berada dalam kode yang dikompilasi JIT, tetapi tidak berada di area partisi OS Null, pengecualian dipetakan ke AccessViolationException kelas .
- Jika tidak
legacyNullReferencePolicyada , dan alamat di mana baca/tulis dicoba berada dalam kode yang dikompilasi JIT dan di area partisi OS Null, pengecualian dipetakan ke NullReferenceException kelas .
- Jika
Setiap pengecualian SEH yang tidak dipetakan secara otomatis ke pengecualian tertentu dipetakan ke SEHException kelas secara default.
Perhatikan bahwa SEHException kelas tidak menyebabkan destruktor pengecualian C++ yang tidak dikelola dipanggil. Untuk memastikan bahwa destruktor pengecualian C++ yang tidak dikelola dipanggil, gunakan sintaks berikut dalam catch blok.
Catch
' Handle catch here.
End Try
catch
{
// Handle catch here.
}
catch(…)
{
// Handle catch here.
}
Konstruktor
| Nama | Deskripsi |
|---|---|
| SEHException() |
Menginisialisasi instans baru dari kelas SEHException. |
| SEHException(SerializationInfo, StreamingContext) |
Kedaluwarsa.
Menginisialisasi instans SEHException baru kelas dari data serialisasi. |
| SEHException(String, Exception) |
Menginisialisasi instans SEHException baru kelas dengan pesan kesalahan tertentu dan referensi ke pengecualian dalam yang merupakan penyebab pengecualian ini. |
| SEHException(String) |
Menginisialisasi instans SEHException baru kelas dengan pesan tertentu. |
Properti
| Nama | Deskripsi |
|---|---|
| Data |
Mendapatkan kumpulan pasangan kunci/nilai yang memberikan informasi tambahan yang ditentukan pengguna tentang pengecualian. (Diperoleh dari Exception) |
| ErrorCode |
|
| HelpLink |
Mendapatkan atau mengatur tautan ke file bantuan yang terkait dengan pengecualian ini. (Diperoleh dari Exception) |
| HResult |
Mendapatkan atau mengatur HRESULT, nilai numerik berkode yang ditetapkan ke pengecualian tertentu. (Diperoleh dari Exception) |
| InnerException |
Mendapatkan instans Exception yang menyebabkan pengecualian saat ini. (Diperoleh dari Exception) |
| Message |
Mendapatkan pesan yang menjelaskan pengecualian saat ini. (Diperoleh dari Exception) |
| Source |
Mendapatkan atau mengatur nama aplikasi atau objek yang menyebabkan kesalahan. (Diperoleh dari Exception) |
| StackTrace |
Mendapatkan representasi string dari bingkai langsung pada tumpukan panggilan. (Diperoleh dari Exception) |
| TargetSite |
Mendapatkan metode yang melemparkan pengecualian saat ini. (Diperoleh dari Exception) |
Metode
| Nama | Deskripsi |
|---|---|
| CanResume() |
Menunjukkan apakah pengecualian dapat dipulihkan, dan apakah kode dapat berlanjut dari titik di mana pengecualian dilemparkan. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetBaseException() |
Ketika ditimpa di kelas turunan, mengembalikan Exception yang merupakan akar penyebab dari satu atau beberapa pengecualian berikutnya. (Diperoleh dari Exception) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
Kedaluwarsa.
Saat ditimpa di kelas turunan, mengatur SerializationInfo dengan informasi tentang pengecualian. (Diperoleh dari Exception) |
| GetType() |
Mendapatkan jenis runtime instans saat ini. (Diperoleh dari Exception) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| ToString() |
Membuat dan mengembalikan representasi string dari pengecualian saat ini. (Diperoleh dari Exception) |
| ToString() |
Mengembalikan string yang berisi HRESULT kesalahan. (Diperoleh dari ExternalException) |
Acara
| Nama | Deskripsi |
|---|---|
| SerializeObjectState |
Kedaluwarsa.
Terjadi ketika pengecualian diserialisasikan untuk membuat objek status pengecualian yang berisi data berseri tentang pengecualian. (Diperoleh dari Exception) |