Platform::Exception – třída
Představuje chyby, ke kterým dochází během provádění aplikace. Vlastní třídy výjimek nelze odvodit z Platform::Exception
. Pokud požadujete vlastní výjimku, můžete použít Platform::COMException
a zadat hodnotu HRESULT specifickou pro aplikaci.
Syntaxe
public ref class Exception : Object, IException, IPrintable, IEquatable
Členové
Třída Exception
dědí z Object
třídy a IException
, IPrintable
a IEquatable
rozhraní.
Třída Exception
má také následující typy členů.
Konstruktory
Člen | Popis |
---|---|
Výjimka::Exception | Inicializuje novou instanci Exception třídy. |
Metody
Třída Exception
dědí Equals()
, , Finalize()
, GetHashCode()
GetType()
, MemberwiseClose()
a ToString()
metody z Platform::Object Třída. Třída Exception
má také následující metodu.
Člen | Popis |
---|---|
Výjimka::CreateException | Vytvoří výjimku, která představuje zadanou hodnotu HRESULT. |
Vlastnosti
Třída Exception má také následující vlastnosti.
Člen | Popis |
---|---|
Výjimka::HResult | HRESULT, která odpovídá výjimce. |
Výjimka::Zpráva | Zpráva popisující výjimku Tato hodnota je jen pro čtení a po vytvoření nelze ji změnit Exception . |
Požadavky
Minimální podporovaný klient: Windows 8
Minimální podporovaný server: Windows Server 2012
Obor názvů: Platforma
Metadata: platform.winmd
Exception::CreateException – metoda
Vytvoří platformu::Exception^ ze zadané hodnoty HRESULT.
Syntaxe
Exception^ CreateException(int32 hr);
Exception^ CreateException(int32 hr, Platform::String^ message);
Parametry
Hr
Hodnota HRESULT, kterou obvykle získáte z volání metody COM. Pokud je hodnota 0, která je rovna S_OK, tato metoda vyvolá Platform::InvalidArgumentException , protože metody COM, které úspěšné by neměly vyvolat výjimky.
message
Řetězec, který popisuje chybu.
Návratová hodnota
Výjimka, která představuje chybu HRESULT.
Poznámky
Tuto metodu použijte k vytvoření výjimky z hodnoty HRESULT, která je vrácena, například z volání metody rozhraní MODELU COM. K zadání vlastní zprávy můžete použít přetížení, které přebírá parametr String^ .
Důrazně doporučujeme použít createException k vytvoření výjimky silného typu místo vytvoření platformy::COMException , která pouze obsahuje HRESULT.
Exception::Exception – konstruktor
Inicializuje novou instanci třídy Exception.
Syntaxe
Exception(int32 hresult);
Exception(int32 hresult, ::Platform::String^ message);
Parametry
hresult
Chyba HRESULT reprezentovaná výjimkou.
message
Uživatelem zadaná zpráva, například text s popisem, který je přidružen k výjimce. Obecně byste měli preferovat druhé přetížení, aby bylo možné poskytnout popisnou zprávu, která je co nejvíce specifická o tom, jak a proč došlo k chybě.
Exception::HResult – vlastnost
HRESULT, která odpovídá výjimce.
Syntaxe
public:
property int HResult { int get(); }
Hodnota vlastnosti
Hodnota HRESULT.
Poznámky
Většina výjimek začíná jako chyby modelu COM, které se vrací jako hodnoty HRESULT. C++/CX převede tyto hodnoty na objekty Platform::Exception^ a tato vlastnost ukládá hodnotu původního kódu chyby.
Exception::Message – vlastnost
Zpráva, která popisuje chybu.
Syntaxe
public:property String^ Message;
Hodnota vlastnosti
Ve výjimkách pocházejících z prostředí Windows Runtime se jedná o systémový popis chyby.
Poznámky
Ve Windows 8 je tato vlastnost jen pro čtení, protože výjimky v této verzi prostředí Windows Runtime jsou přenášeny přes ABI pouze jako HRESULTS. Ve Windows 8.1 se do ABI přenášejí bohatší informace o výjimce a můžete zadat vlastní zprávu, ke které mají ostatní komponenty přístup prostřednictvím kódu programu. Další informace najdete v tématu Výjimky (C++/CX).