ErrorWrapper Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Perhatian
ErrorWrapper and support for marshalling to the VARIANT type may be unavailable in future releases.
Membungkus objek marshaler harus marshal sebagai VT_ERROR
.
public ref class ErrorWrapper sealed
[System.Obsolete("ErrorWrapper and support for marshalling to the VARIANT type may be unavailable in future releases.")]
public sealed class ErrorWrapper
public sealed class ErrorWrapper
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class ErrorWrapper
[<System.Obsolete("ErrorWrapper and support for marshalling to the VARIANT type may be unavailable in future releases.")>]
type ErrorWrapper = class
type ErrorWrapper = class
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type ErrorWrapper = class
Public NotInheritable Class ErrorWrapper
- Warisan
-
ErrorWrapper
- Atribut
Contoh
Contoh kode berikut pertama-tama menunjukkan objek kesepian Int32 yang di-marshalasi kembali dari COM sebagai Int32 objek. Kemudian menunjukkan array yang Int32 di-marshalasi kembali dari COM sebagai UInt32 array.
// Scenario 1:
// Pass a single value.
Int32 x = 3;
Object o = new ErrorWrapper(x);
// Pass 'o' to COM.
// On the return trip, 'o' has been unwrapped and is still an Int32 object.
Int32 y = (Int32)o;
Scenario 2:
// Pass an array of values.
Int32[] arr = new Int32[3];
Object o = new ErrorWrapper(arr);
// Pass 'o' to COM.
// On the return trip, 'o' has been unwrapped and is now a UInt32[] array.
UInt32[ ] arr2 = (UInt32[])o;
Keterangan
Secara default, Object argumen jenis di-marshal sebagai VARIANT
jenis, di mana jenis objek menentukan VARTYPE
nilai VARIANT
.
ErrorWrapper Jenis harus diteruskan sebagai Object jenis untuk dijadikan marshal sebagai VARIANT
jenis VT_ERROR
, jika tidakErrorWrapper, jenisnya dinamai sebagai bilangan bulat.
Tabel berikut mengilustrasikan marshaling dalam panggilan terkelola ke fungsi asli, menggunakan pemanggilan platform.
Parameter tanda tangan terkelola | Nilai pArr | Marshaled sebagai |
---|---|---|
ErrorWrapper[] pArr | ErrorWrapper[10] dari ErrorWrapper(77) | Int[10] |
Object[] pArr | ErrorWrapper[10] dari ErrorWrapper(77) |
VARIANT[10] dari VT_ERROR |
Object[] pArr | Objek[10] dari ErrorWrapper(77) |
VARIANT[10] dari VT_ERROR |
Tabel berikut mengilustrasikan data marshaling dalam panggilan terkelola ke fungsi asli, menggunakan pembungkus yang dapat dipanggil runtime COM (RCW).
Parameter tanda tangan terkelola | Nilai pArr | Marshaled sebagai |
---|---|---|
ErrorWrapper[] pArr | ErrorWrapper[10] dari ErrorWrapper(77) | Int[10] |
Object[] pArr | ErrorWrapper[10] dari ErrorWrapper(77) | Pengecualian SafeArrayTypeMismatch |
Object[] pArr | Objek[10] dari ErrorWrapper(77) | SAFEARRAY(VARIANT) |
Perhatikan bahwa ErrorWrapper objek tidak di-marshalasi sebagai jenis VT_ERROR
setelah diteruskan kembali dari COM. Nilai tunggal di-marshalasi kembali dari COM sebagai jenis VT_I4
, sementara array dinamai kembali dari COM sebagai jenis VT_UI4
.
Untuk informasi selengkapnya tentang VT_ERROR
, silakan lihat dokumentasi yang ada untuk VARENUM::VT_ERROR
di pustaka MSDN.
Konstruktor
ErrorWrapper(Exception) |
Kedaluwarsa.
Menginisialisasi instans ErrorWrapper baru kelas dengan HRESULT yang sesuai dengan pengecualian yang disediakan. |
ErrorWrapper(Int32) |
Kedaluwarsa.
Menginisialisasi instans ErrorWrapper baru kelas dengan HRESULT kesalahan. |
ErrorWrapper(Object) |
Kedaluwarsa.
Menginisialisasi instans ErrorWrapper baru kelas dengan objek yang berisi HRESULT kesalahan. |
Properti
ErrorCode |
Kedaluwarsa.
Mendapatkan kode kesalahan pembungkus. |
Metode
Equals(Object) |
Kedaluwarsa.
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
GetHashCode() |
Kedaluwarsa.
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetType() |
Kedaluwarsa.
Mendapatkan instans Type saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Kedaluwarsa.
Membuat salinan dangkal dari yang saat ini Object. (Diperoleh dari Object) |
ToString() |
Kedaluwarsa.
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |