ErrorWrapper クラス

定義

注意事項

ErrorWrapper and support for marshalling to the VARIANT type may be unavailable in future releases.

マーシャラーが 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
継承
ErrorWrapper
属性

次のコード例では、最初に COM からInt32 オブジェクトとしてマーシャリングされた 1 つのInt32 オブジェクトを示します。 次に、COM からUInt32配列としてマーシャリングされたInt32配列を示します。

// 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;

注釈

既定では、Object型引数はVARIANT型としてマーシャリングされ、オブジェクト型によってVARIANTVARTYPE値が決定されます。

ErrorWrapper型は、VT_ERROR型のVARIANTとしてマーシャリングするObject型として渡す必要があります。それ以外の場合、ErrorWrapper型は整数としてマーシャリングされます。

次の表は、プラットフォーム呼び出しを使用したネイティブ関数のマネージド呼び出しでのマーシャリングを示しています。

マネージド 署名パラメーター pArr 値 マーシャリング
ErrorWrapper[] pArr ErrorWrapper[10] of ErrorWrapper(77) Int[10]
Object[] pArr ErrorWrapper[10] of ErrorWrapper(77) VARIANT[10]VT_ERROR
Object[] pArr ErrorWrapper(77) の Object[10] VARIANT[10]VT_ERROR

次の表は、COM ランタイム呼び出し可能ラッパー (RCW) を使用したネイティブ関数へのマネージド呼び出しでのデータのマーシャリングを示しています。

マネージド 署名パラメーター pArr 値 マーシャリング
ErrorWrapper[] pArr ErrorWrapper[10] of ErrorWrapper(77) Int[10]
Object[] pArr ErrorWrapper[10] of ErrorWrapper(77) SafeArrayTypeMismatch 例外
Object[] pArr ErrorWrapper(77) の Object[10] SAFEARRAY(VARIANT)

ErrorWrapperオブジェクトは、COM から渡された後VT_ERROR型としてマーシャリングされないことに注意してください。 1 つの値が型 VT_I4として COM からマーシャリングされ、配列は COM から VT_UI4型としてマーシャリングされます。

VT_ERRORの詳細については、MSDN ライブラリのVARENUM::VT_ERRORに関する既存のドキュメントを参照してください。

コンストラクター

名前 説明
ErrorWrapper(Exception)
古い.

指定された例外に対応する HRESULT を使用して、 ErrorWrapper クラスの新しいインスタンスを初期化します。

ErrorWrapper(Int32)
古い.

エラーの HRESULT を使用して、 ErrorWrapper クラスの新しいインスタンスを初期化します。

ErrorWrapper(Object)
古い.

エラーの HRESULT を含むオブジェクトを使用して、 ErrorWrapper クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
ErrorCode
古い.

ラッパーのエラー コードを取得します。

メソッド

名前 説明
Equals(Object)
古い.

指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()
古い.

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()
古い.

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()
古い.

現在の Objectの簡易コピーを作成します。

(継承元 Object)
ToString()
古い.

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象