ErrorWrapper Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Upozornění
ErrorWrapper and support for marshalling to the VARIANT type may be unavailable in future releases.
Zabalí objekty, které by měl zařadovat jako 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
- Dědičnost
-
ErrorWrapper
- Atributy
Příklady
Následující příklad kódu nejprve ukazuje osamělý Int32 objekt zařazovaný zpět z modelu COM jako Int32 objekt. Pak předvádí Int32 pole zařazované zpět z modelu COM jako UInt32 pole.
// 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;
Poznámky
Ve výchozím nastavení Object jsou argumenty typu zařazovány jako VARIANT
typ, kde typ objektu VARTYPE
určuje hodnotu VARIANT
.
Typ ErrorWrapper musí být předán jako Object typ, aby byl zařazován jako VARIANT
typ typu VT_ERROR
, jinak ErrorWrapper je typ zařazován jako celé číslo.
Následující tabulka ukazuje zařazování ve spravovaném volání nativní funkce pomocí volání platformy.
Parametr spravovaného podpisu | Hodnota pArr | Zařazováno jako |
---|---|---|
ErrorWrapper[] pArr | ErrorWrapper[10] z ErrorWrapper(77) | Int[10] |
Object[] pArr | ErrorWrapper[10] z ErrorWrapper(77) |
VARIANT[10] z VT_ERROR |
Object[] pArr | Objekt[10] z ErrorWrapper(77) |
VARIANT[10] z VT_ERROR |
Následující tabulka ukazuje zařazování dat ve spravovaném volání do nativní funkce pomocí obálky volatelné za běhu modelu COM (RCW).
Parametr spravovaného podpisu | Hodnota pArr | Zařazováno jako |
---|---|---|
ErrorWrapper[] pArr | ErrorWrapper[10] z ErrorWrapper(77) | Int[10] |
Object[] pArr | ErrorWrapper[10] z ErrorWrapper(77) | Výjimka SafeArrayTypeMismatch |
Object[] pArr | Objekt[10] z ErrorWrapper(77) | SAFEARRAY(VARIANT) |
Všimněte si, že ErrorWrapper objekty nejsou zařazovány jako typ VT_ERROR
poté, co jsou předány zpět z modelu COM. Jedna hodnota je zařazována zpět z modelu COM jako typ VT_I4
, zatímco pole jsou zařazována zpět z modelu COM jako typ VT_UI4
.
Další informace o nástroji VT_ERROR
najdete v existující dokumentaci k VARENUM::VT_ERROR
nástroji v knihovně MSDN.
Konstruktory
ErrorWrapper(Exception) |
Zastaralé.
Inicializuje novou instanci ErrorWrapper třídy s HRESULT, která odpovídá zadané výjimce. |
ErrorWrapper(Int32) |
Zastaralé.
Inicializuje novou instanci ErrorWrapper třídy s HRESULT chyby. |
ErrorWrapper(Object) |
Zastaralé.
Inicializuje novou instanci ErrorWrapper třídy s objektem obsahujícím HRESULT chyby. |
Vlastnosti
ErrorCode |
Zastaralé.
Získá kód chyby obálky. |
Metody
Equals(Object) |
Zastaralé.
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Zastaralé.
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Zastaralé.
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Zastaralé.
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Zastaralé.
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |