Bagikan melalui


Platform::Kelas Pengecualian

Mewakili kesalahan yang terjadi selama eksekusi aplikasi. Kelas pengecualian kustom tidak dapat berasal dari Platform::Exception. Jika Anda memerlukan pengecualian kustom, Anda dapat menggunakan Platform::COMException dan menentukan HRESULT khusus aplikasi.

Sintaks

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

Anggota

Kelas Exception mewarisi dari Object kelas dan IExceptionantarmuka , , IPrintabledan IEquatable .

Kelas ini Exception juga memiliki jenis anggota berikut.

Konstruktor

Anggota Deskripsi
Pengecualian::Pengecualian Menginisialisasi instans baru kelas Exception.

Metode

Kelas Exception mewarisi Equals()metode , , Finalize(), GetType()GetHashCode(), MemberwiseClose(), dan ToString() dari Platform::Object Class. Kelas ini Exception juga memiliki metode berikut.

Anggota Deskripsi
Pengecualian::CreateException Membuat pengecualian yang mewakili nilai HRESULT yang ditentukan.

Properti

Kelas Pengecualian juga memiliki properti berikut.

Anggota Deskripsi
Pengecualian::HResult HRESULT yang sesuai dengan pengecualian.
Pengecualian::Pesan Pesan yang menjelaskan pengecualian. Nilai ini bersifat baca-saja dan tidak dapat dimodifikasi setelah Exception dibangun.

Persyaratan

Klien minimum yang didukung: Windows 8

Server minimum yang didukung: Windows Server 2012

Namespace: Platform

Metadata: platform.winmd

Exception::CreateException Method

Membuat Platform::Exception^ dari nilai HRESULT tertentu.

Sintaks

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

Parameter

Hr
Nilai HRESULT yang biasanya Anda dapatkan dari panggilan ke metode COM. Jika nilainya adalah 0, yang sama dengan S_OK, metode ini melempar Platform::InvalidArgumentException karena metode COM yang berhasil tidak boleh melempar pengecualian.

message
String yang menjelaskan kesalahan.

Tampilkan Nilai

Pengecualian yang mewakili kesalahan HRESULT.

Keterangan

Gunakan metode ini untuk membuat pengecualian dari HRESULT yang dikembalikan, misalnya, dari panggilan ke metode antarmuka COM. Anda dapat menggunakan kelebihan beban yang mengambil parameter String^ untuk memberikan pesan kustom.

Sangat disarankan untuk menggunakan CreateException untuk membuat pengecualian yang sangat diketik daripada membuat Platform::COMException yang hanya berisi HRESULT.

Pengecualian::Konstruktor Pengecualian

Menginisialisasi instans baru kelas Pengecualian.

Sintaks

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

Parameter

hresult
Kesalahan HRESULT yang diwakili oleh pengecualian.

message
Pesan yang ditentukan pengguna, seperti teks preskriptif, yang terkait dengan pengecualian. Secara umum Anda harus lebih memilih kelebihan beban kedua untuk memberikan pesan deskriptif yang sespesif mungkin tentang bagaimana dan mengapa kesalahan telah terjadi.

Pengecualian::Properti HResult

HRESULT yang sesuai dengan pengecualian.

Sintaks

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

Nilai Properti

Nilai HRESULT.

Keterangan

Sebagian besar pengecualian dimulai sebagai kesalahan COM, yang dikembalikan sebagai nilai HRESULT. C++/CX mengonversi nilai-nilai ini menjadi objek Platform::Exception^, dan properti ini menyimpan nilai kode kesalahan asli.

Pengecualian::Properti Pesan

Pesan yang menjelaskan kesalahan.

Sintaks

public:property String^ Message;

Nilai Properti

Dalam pengecualian yang berasal dari Windows Runtime, ini adalah deskripsi kesalahan yang disediakan sistem.

Keterangan

Di Windows 8, properti ini bersifat baca-saja karena pengecualian dalam versi Windows Runtime tersebut diangkut di seluruh ABI hanya sebagai HRESULTS. Dalam Windows 8.1, informasi pengecualian yang lebih kaya diangkut di seluruh ABI dan Anda dapat memberikan pesan kustom yang dapat diakses komponen lain secara terprogram. Untuk informasi selengkapnya, lihat Pengecualian (C++/CX).

Lihat juga

Namespace platform