RuntimeWrappedException クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Exception クラスから派生しない例外をラップします。 このクラスは継承できません。
public ref class RuntimeWrappedException sealed : Exception
[System.Serializable]
public sealed class RuntimeWrappedException : Exception
public sealed class RuntimeWrappedException : Exception
[<System.Serializable>]
type RuntimeWrappedException = class
inherit Exception
type RuntimeWrappedException = class
inherit Exception
Public NotInheritable Class RuntimeWrappedException
Inherits Exception
- 継承
- 属性
例
次のコード例では、 String オブジェクトを C++ で例外としてスローし、 RuntimeWrappedException オブジェクトを使用してキャッチする方法を示します。
using namespace System;
using namespace System::Runtime::CompilerServices;
[assembly:RuntimeCompatibilityAttribute(WrapNonExceptionThrows = true)];
void run()
{
try
{
throw gcnew String("This is a string");
}
catch(RuntimeWrappedException^ e)
{
Console::WriteLine("RuntimeWrappedException caught!");
}
}
int main()
{
run();
return 0;
}
注釈
C++ などの一部の言語では、任意のマネージド型の例外をスローできます。 Microsoft C# や Visual Basic などの他の言語では、スローされるすべての例外を Exception クラスから派生する必要があります。 言語間の互換性を維持するために、共通言語ランタイム (CLR) は、 Exception から派生していないオブジェクトを RuntimeWrappedException オブジェクトにラップします。
RuntimeCompatibilityAttribute クラスを使用して、アセンブリの catch ブロックと例外フィルター内で例外をラップするかどうかを指定できます。 Microsoft C# コンパイラや Visual Basic コンパイラなど、多くの言語コンパイラでは、この属性を既定で適用して折り返し動作を指定します。
RuntimeCompatibilityAttribute クラスを使用して例外をラップしないように指定した場合でも、ランタイムは例外をラップします。 この場合、例外は catch ブロックまたは例外フィルター内でのみラップ解除されます。
コンストラクター
| 名前 | 説明 |
|---|---|
| RuntimeWrappedException(Object) |
内部例外オブジェクトを含む RuntimeWrappedException の新しいインスタンスを初期化します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Data |
例外に関する追加のユーザー定義情報を提供するキーと値のペアのコレクションを取得します。 (継承元 Exception) |
| HelpLink |
この例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。 (継承元 Exception) |
| HResult |
特定の例外に割り当てられるコード化された数値である HRESULT を取得または設定します。 (継承元 Exception) |
| InnerException |
現在の例外の原因となった Exception インスタンスを取得します。 (継承元 Exception) |
| Message |
現在の例外を説明するメッセージを取得します。 (継承元 Exception) |
| Source |
エラーの原因となるアプリケーションまたはオブジェクトの名前を取得または設定します。 (継承元 Exception) |
| StackTrace |
呼び出し履歴のイミディエイト フレームの文字列表現を取得します。 (継承元 Exception) |
| TargetSite |
現在の例外をスローするメソッドを取得します。 (継承元 Exception) |
| WrappedException |
RuntimeWrappedException オブジェクトによってラップされたオブジェクトを取得します。 |
メソッド
| 名前 | 説明 |
|---|---|
| Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| GetBaseException() |
派生クラスでオーバーライドされた場合、1 つ以上の後続の例外の根本原因である Exception を返します。 (継承元 Exception) |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
例外に関する情報を SerializationInfo オブジェクトに設定します。 |
| GetType() |
現在のインスタンスのランタイム型を取得します。 (継承元 Exception) |
| MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
| ToString() |
現在の例外の文字列形式を作成して返します。 (継承元 Exception) |
イベント
| 名前 | 説明 |
|---|---|
| SerializeObjectState |
例外に関するシリアル化されたデータを含む例外状態オブジェクトを作成するために例外がシリアル化されるときに発生します。 (継承元 Exception) |