Mengapa UnhandledExceptionEventArgs.ExceptionObject
sebuah objek dan bukan Exception
?
Saya melekat pada AppDomain.UnhandledException
.
Saya ingin UnhandledExceptionEventArgs.ExceptionObject
memasukkan Exception
dan menginterogasinya.
Dan dengan pemikiran ini, akankah nilainya menjadi nol?
The dokumentasi MSDN tidak exatly berguna.
Mendapatkan objek pengecualian yang tidak tertangani.
System.Exception
. Pengecualian dapat terjadi karena bahasa yang tidak sesuai dengan CLI yang memutuskan untuk melemparSystem.Int32
. Versi CLR yang lebih baru akan membungkusnya secara otomatis,System.Exception
tetapi ini adalah pengaturan yang dapat dinonaktifkantry-catch
blok tidak memungkinkan untuk menangkap objek non-pengecualian?Selain apa yang telah disebutkan Jared, Anda dapat mentransmisikan dengan aman ke
Exception
dalam .NET Framework 2.0 dan yang lebih tinggi jikaRuntimeCompatibilityAttribute(WrapNonExceptionThrows=true)
telah diterapkan ke rakitan Anda (akan ditambahkan secara otomatis oleh kompiler C # dan VB).Jika atribut ini telah diterapkan, "pengecualian" non-Pengecualian akan disertakan
RuntimeWrappedException
.sumber