SEHException Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar seh-fel (structured exception handling).
public ref class SEHException : Exception
public ref class SEHException : System::Runtime::InteropServices::ExternalException
public class SEHException : Exception
[System.Serializable]
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SEHException : System.Runtime.InteropServices.ExternalException
public class SEHException : System.Runtime.InteropServices.ExternalException
type SEHException = class
inherit Exception
[<System.Serializable>]
type SEHException = class
inherit ExternalException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SEHException = class
inherit ExternalException
type SEHException = class
inherit ExternalException
Public Class SEHException
Inherits Exception
Public Class SEHException
Inherits ExternalException
- Arv
- Arv
- Attribut
Kommentarer
Klassen SEHException hanterar SEH-fel som genereras från ohanterad kod, men som inte har mappats till ett annat .NET Framework-undantag. Klassen SEHException motsvarar HRESULTE_FAIL också (0x80004005).
.NET stöter ofta på ohanterade SEH-undantag som automatiskt mappas till hanterade motsvarigheter. Det finns två vanliga ohanterade SEH-undantag:
STATUS_NO_MEMORYundantag mappas automatiskt till OutOfMemoryException klassen.STATUS_ACCESS_VIOLATIONundantag mappas automatiskt enligt följande:- Om
legacyNullReferencePolicytillämpas mappas alla åtkomstöverträdelser till NullReferenceException klassen. - Om adressen där läs-/skrivförsöket gjordes inte finns i JIT-kompilerad kod mappas undantaget till AccessViolationException klassen.
- Om adressen där läsningen/skrivning gjordes finns i JIT-kompilerad kod, men den inte finns i os Null-partitionsområdet, mappas undantaget till AccessViolationException klassen.
- Om det inte finns någon
legacyNullReferencePolicy, och adressen där läsningen/skrivning gjordes finns i JIT-kompilerad kod och i partitionsområdet OS Null mappas undantaget till NullReferenceException klassen.
- Om
Alla SEH-undantag som inte automatiskt mappas till ett specifikt undantag mappas som standard till SEHException klassen.
Observera att SEHException klassen inte orsakar ohanterade C++-undantagsförstörare som anropas. Om du vill se till att ohanterade C++-undantagsförstörare anropas använder du följande syntax i catch blocket.
Catch
' Handle catch here.
End Try
catch
{
// Handle catch here.
}
catch(…)
{
// Handle catch here.
}
Konstruktorer
| Name | Description |
|---|---|
| SEHException() |
Initierar en ny instans av SEHException klassen. |
| SEHException(SerializationInfo, StreamingContext) |
Initierar en ny instans av SEHException klassen från serialiseringsdata. |
| SEHException(String, Exception) |
Initierar en ny instans av SEHException klassen med ett angivet felmeddelande och en referens till det inre undantaget som är orsaken till det här undantaget. |
| SEHException(String) |
Initierar en ny instans av SEHException klassen med ett angivet meddelande. |
Egenskaper
| Name | Description |
|---|---|
| Data |
Hämtar en samling nyckel/värde-par som ger ytterligare användardefinierad information om undantaget. (Ärvd från Exception) |
| ErrorCode |
|
| HelpLink |
Hämtar eller anger en länk till hjälpfilen som är associerad med det här undantaget. (Ärvd från Exception) |
| HResult |
Hämtar eller anger HRESULT, ett kodat numeriskt värde som har tilldelats ett specifikt undantag. (Ärvd från Exception) |
| InnerException |
Hämtar den Exception instans som orsakade det aktuella undantaget. (Ärvd från Exception) |
| Message |
Hämtar ett meddelande som beskriver det aktuella undantaget. (Ärvd från Exception) |
| Source |
Hämtar eller anger namnet på programmet eller objektet som orsakar felet. (Ärvd från Exception) |
| StackTrace |
Hämtar en strängrepresentation av de omedelbara ramarna i anropsstacken. (Ärvd från Exception) |
| TargetSite |
Hämtar den metod som utlöser det aktuella undantaget. (Ärvd från Exception) |
Metoder
| Name | Description |
|---|---|
| CanResume() |
Anger om undantaget kan återställas från och om koden kan fortsätta från den punkt då undantaget utlöstes. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetBaseException() |
När den åsidosätts i en härledd klass returnerar den Exception som är rotorsaken till ett eller flera efterföljande undantag. (Ärvd från Exception) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
När åsidosättas i en härledd klass anger du SerializationInfo med information om undantaget. (Ärvd från Exception) |
| GetType() |
Hämtar körningstypen för den aktuella instansen. (Ärvd från Exception) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Skapar och returnerar en strängrepresentation av det aktuella undantaget. (Ärvd från Exception) |
| ToString() |
Returnerar en sträng som innehåller HRESULT för felet. (Ärvd från ExternalException) |
Händelser
| Name | Description |
|---|---|
| SerializeObjectState |
Inträffar när ett undantag serialiseras för att skapa ett undantagstillståndsobjekt som innehåller serialiserade data om undantaget. (Ärvd från Exception) |