Dela via


Plattform::Undantagsklass

Representerar fel som uppstår under programkörningen. Anpassade undantagsklasser kan inte härledas från Platform::Exception. Om du behöver ett anpassat undantag kan du använda Platform::COMException och ange en appspecifik HRESULT.

Syntax

public ref class Exception : Object, IException, IPrintable, IEquatable

Medlemmar

Klassen Exception ärver från klassen Object och gränssnitten IException, IPrintableoch IEquatable.

Klassen Exception har också följande typer av medlemmar.

Konstruktörer

Medlem Beskrivning
Undantag::Undantag Initierar en ny instans av klassen Exception.

Metoder

Klassen Exception ärver metoderna Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose()och ToString() från Platform::Object Class. Klassen Exception har också följande metod.

Medlem Beskrivning
Undantag::CreateException Skapar ett undantag som representerar det angivna HRESULT-värdet.

Egenskaper

Klassen Exception har också följande egenskaper.

Medlem Beskrivning
Undantag::HResult HRESULT som motsvarar undantaget.
undantag::Meddelande Ett meddelande som beskriver undantaget. Det här värdet är skrivskyddat och kan inte ändras när Exception har konstruerats.

Krav

Lägsta klient som stöds: Windows 8

Lägsta server som stöds: Windows Server 2012

Namnområde: Platform

metadata: platform.winmd

Undantag::CreateException-metod

Skapar en plattform::Undantag^ från ett angivet HRESULT-värde.

Syntax

Exception^ CreateException(int32 hr);
Exception^ CreateException(int32 hr, Platform::String^ message);

Parametrar

hr
Ett HRESULT-värde som du vanligtvis får från ett anrop till en COM-metod. Om värdet är 0, vilket är lika med S_OK, genererar den här metoden Platform::InvalidArgumentException eftersom COM-metoder som lyckas inte ska utlösa undantag.

meddelande
En sträng som beskriver felet.

Returvärde

Ett undantag som representerar felet HRESULT.

Anmärkningar

Använd den här metoden för att skapa ett undantag från en HRESULT som returneras, till exempel från ett anrop till en COM-gränssnittsmetod. Du kan använda överlagringen som tar en String^-parameter för att tillhandahålla ett anpassat meddelande.

Vi rekommenderar starkt att du använder CreateException för att skapa ett starkt skrivet undantag i stället för att skapa en Platform::COMException- som bara innehåller HRESULT.

Undantag::Undantagskonstruktor

Intialiserar en ny instans av klassen Undantag.

Syntax

Exception(int32 hresult);
Exception(int32 hresult, ::Platform::String^ message);

Parametrar

hresult
Felet HRESULT som representeras av undantaget.

meddelande
Ett användardefinierad meddelande, till exempel normativ text, som är associerat med undantaget. I allmänhet bör du föredra den andra överbelastningen för att tillhandahålla ett beskrivande meddelande som är så specifikt som möjligt om hur och varför felet har inträffat.

Undantag::HResult-egenskap

HRESULT som motsvarar undantaget.

Syntax

public:
    property int HResult { int get(); }

Egenskapsvärde

Ett HRESULT-värde.

Anmärkningar

De flesta undantag börjar som COM-fel, som returneras som HRESULT-värden. C++/CX konverterar dessa värden till Plattform::Undantag^ objekt, och den här egenskapen lagrar värdet för den ursprungliga felkoden.

Undantag::Meddelandeegenskap

Meddelande som beskriver felet.

Syntax

public:
    property String^ Message;

Egenskapsvärde

I undantag som kommer från Windows Runtime är detta en beskrivning av felet som tillhandahålls av systemet.

Anmärkningar

I Windows 8 är den här egenskapen skrivskyddad eftersom undantag i den versionen av Windows Runtime endast transporteras via ABI som HRESULTS. I Windows 8.1 transporteras mer omfattande undantagsinformation över ABI och du kan ge ett anpassat meddelande som andra komponenter kan komma åt programmatiskt. Mer information finns i undantag (C++/CX).

Se även

Plattformsnamnområde