Delen via


Platform::Uitzonderingsklasse

Vertegenwoordigt fouten die optreden tijdens het uitvoeren van de toepassing. Aangepaste uitzonderingsklassen kunnen niet worden afgeleid van Platform::Exception. Als u een aangepaste uitzondering nodig hebt, kunt u Platform::COMException gebruiken en een app-specifiek HRESULT opgeven.

Syntaxis

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

Leden

De Exception-klasse neemt over van de Object-klasse en de IException-, IPrintable- en IEquatable-interfaces.

De Exception-klasse heeft ook de volgende soorten leden.

Constructeurs

Lid Beschrijving
uitzondering::Uitzonderings- Initialiseert een nieuw exemplaar van de klasse Exception.

Methoden

De Exception-klasse neemt de methoden Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose()en ToString() over van de Platform::Objectklasse. De klasse Exception heeft ook de volgende methode.

Lid Beschrijving
Uitzondering::CreateException- Hiermee maakt u een uitzondering die de opgegeven HRESULT-waarde vertegenwoordigt.

Eigenschappen

De uitzonderingsklasse heeft ook de volgende eigenschappen.

Lid Beschrijving
Uitzondering::HResult- Het HRESULT dat overeenkomt met de uitzondering.
uitzondering::Bericht Een bericht waarin de uitzondering wordt beschreven. Deze waarde is alleen-lezen en kan niet worden gewijzigd nadat de Exception is samengesteld.

Eisen

Minimaal ondersteunde client: Windows 8

Minimaal ondersteunde server: Windows Server 2012

naamruimte: Platform

Metagegevens: platform.winmd

Uitzondering::CreateException-methode

Hiermee maakt u een Platform::Exception^ op basis van een opgegeven HRESULT-waarde.

Syntaxis

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

Parameters

hr-
Een HRESULT-waarde die u doorgaans krijgt van een aanroep naar een COM-methode. Als de waarde 0 is, die gelijk is aan S_OK, genereert deze methode Platform::InvalidArgumentException omdat COM-methoden die slagen geen uitzonderingen mogen genereren.

bericht
Een tekenreeks die de fout beschrijft.

Retourwaarde

Een uitzondering die de fout HRESULT vertegenwoordigt.

Opmerkingen

Gebruik deze methode om een uitzondering te maken op basis van een HRESULT die wordt geretourneerd, bijvoorbeeld van een aanroep naar een COM-interfacemethode. U kunt de overbelasting gebruiken die een string^-parameter gebruikt om een aangepast bericht op te geven.

Het wordt sterk aanbevolen om CreateException te gebruiken om een sterk getypte uitzondering te maken in plaats van een Platform::COMException- te maken die alleen het HRESULT bevat.

Uitzondering::Uitzonderingsconstructor

Hiermee wordt een nieuw exemplaar van de uitzonderingsklasse geïnitialiseerd.

Syntaxis

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

Parameters

hresult-
De fout HRESULT die wordt vertegenwoordigd door de uitzondering.

bericht
Een door de gebruiker opgegeven bericht, zoals prescriptieve tekst, dat is gekoppeld aan de uitzondering. Over het algemeen moet u de voorkeur geven aan de tweede overbelasting om een beschrijvend bericht te geven dat zo specifiek mogelijk is over hoe en waarom de fout is opgetreden.

Uitzondering::HResult-eigenschap

Het HRESULT dat overeenkomt met de uitzondering.

Syntaxis

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

Eigenschapswaarde

Een HRESULT-waarde.

Opmerkingen

De meeste uitzonderingen beginnen als COM-fouten, die worden geretourneerd als HRESULT-waarden. C++/CX converteert deze waarden naar Platform::Exception^-objecten en met deze eigenschap wordt de waarde van de oorspronkelijke foutcode opgeslagen.

Uitzondering::Berichteigenschap

Bericht waarin de fout wordt beschreven.

Syntaxis

public:
    property String^ Message;

Eigenschapswaarde

In uitzonderingen die afkomstig zijn uit Windows Runtime, is dit een door het systeem geleverde beschrijving van de fout.

Opmerkingen

In Windows 8 is deze eigenschap alleen-lezen omdat uitzonderingen in die versie van Windows Runtime alleen als HRESULTS worden vervoerd in de ABI. In Windows 8.1 wordt uitgebreidere uitzonderingsinformatie over de ABI verzonden en kunt u een aangepast bericht opgeven dat andere onderdelen programmatisch kunnen openen. Zie Uitzonderingen (C++/CX)voor meer informatie.

Zie ook

Platform-naamruimte