SEHExceptionとは? わかりやすく解説

SEHException クラス

構造化例外ハンドラ (SEH: Structured Exception Handler) エラーを表します。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Class SEHException
    Inherits ExternalException
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public class SEHException : ExternalException
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public ref class SEHException : public
 ExternalException
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public class SEHException extends ExternalException
SerializableAttribute 
ComVisibleAttribute(true) 
public class SEHException extends
 ExternalException
解説解説

SEHException クラスは、アンマネージ コードからスローされた SEH エラーについては処理しますが、その他の .NET Framework 例外にはマップされていません。SEHException クラスは、0x80004005 という値を持つ HRESULT E_FAIL にも対応しています。

.NET Framework で発生したアンマネージ SEH 例外は、自動的にマネージ例外にマップされます。たとえば、STATUS_NO_MEMORY SEH 例外は OutOfMemoryException クラスに、STATUS_ACCESS_VIOLATION SEH 例外は NullReferenceException クラスにそれぞれ自動的にマップされます。ただし、特定の例外に対して自動的にはマップされない SEH 例外については、既定で SEHException クラスにマップされます。

SEH 例外の詳細については、http://www.microsoft.com/japan/msdn で、アンマネージ例外に関するドキュメントを参照してください。

SEHException クラスによって、アンマネージ C++ 例外のデストラクタが呼び出されることはありません。アンマネージ C++ 例外のデストラクタを確実に呼び出すには、catch ブロックで次の構文を使用します。

[Visual Basic]

Catch

' Handle catch here.

End Try

[C#]

catch

{

// Handle catch here.

}

[C++]

catch(…)

{

// Handle catch here.

}

継承階層継承階層
System.Object
   System.Exception
     System.SystemException
       System.Runtime.InteropServices.ExternalException
        System.Runtime.InteropServices.SEHException
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SEHException メンバ
System.Runtime.InteropServices 名前空間
Exception
その他の技術情報
例外の処理とスロー
方法 : HRESULT に例外を割り当てる

SEHException コンストラクタ ()


SEHException コンストラクタ (String, Exception)

指定したエラー メッセージと、この例外の原因である内部例外への参照を使用して、SEHException クラスの新しいインスタンスを初期化します。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

解説解説

前の例外の直接の結果としてスローされる例外については、InnerException プロパティに、前の例外への参照が格納されます。InnerException プロパティは、コンストラクタに渡されたものと同じ値を返します。InnerException プロパティによって内部例外値がコンストラクタに渡されなかった場合は、null 参照 (Visual Basic では Nothing) を返します。

SEHException のインスタンスの初期プロパティ値を次の表に示します。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SEHException クラス
SEHException メンバ
System.Runtime.InteropServices 名前空間
Exception
その他の技術情報
例外の処理とスロー

SEHException コンストラクタ (SerializationInfo, StreamingContext)

シリアル化データから、SEHException クラスの新しいインスタンスを初期化します。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New SEHException(info,
 context)
protected SEHException (
    SerializationInfo info,
    StreamingContext context
)
protected:
SEHException (
    SerializationInfo^ info, 
    StreamingContext context
)
protected SEHException (
    SerializationInfo info, 
    StreamingContext context
)
protected function SEHException (
    info : SerializationInfo, 
    context : StreamingContext
)

パラメータ

info

シリアル化されたオブジェクト データを保持するオブジェクト。

context

転送元または転送先に関するコンテキスト情報。

例外例外
例外の種類条件

ArgumentNullException

info が null 参照 (Visual Basic では Nothing) です。

解説解説

このコンストラクタは、逆シリアル化中に、ストリームで送信された例外オブジェクトを再構築するために呼び出されます。詳細については、「System.Runtime.Serialization」を参照してください。

SEHException は ExternalException から継承します。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SEHException クラス
SEHException メンバ
System.Runtime.InteropServices 名前空間

SEHException コンストラクタ

SEHException クラスの新しいインスタンスを初期化します。
オーバーロードの一覧オーバーロードの一覧

参照参照

関連項目

SEHException クラス
SEHException メンバ
System.Runtime.InteropServices 名前空間

SEHException コンストラクタ (String)

指定したメッセージを使用して、SEHException クラスの新しいインスタンスを初期化します。

名前空間: System.Runtime.InteropServices
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

解説解説

SEHException は ExternalException から継承します。このコンストラクタは、次の表に示すように、Exception オブジェクトのプロパティを設定します。

プロパティの型

条件

InnerException

null 参照 (Visual Basic では Nothing).

Message

message

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SEHException クラス
SEHException メンバ
System.Runtime.InteropServices 名前空間

SEHException プロパティ


パブリック プロパティパブリック プロパティ

プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ HResult  特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。 ( Exception から継承されます。)
参照参照

関連項目

SEHException クラス
System.Runtime.InteropServices 名前空間
Exception

その他の技術情報

例外の処理とスロー
方法 : HRESULT に例外を割り当てる

SEHException メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SEHException クラス
System.Runtime.InteropServices 名前空間
Exception

その他の技術情報

例外の処理とスロー
方法 : HRESULT に例外を割り当てる

SEHException メンバ

構造化例外ハンドラ (SEH: Structured Exception Handler) エラーを表します。

SEHException データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
プロテクト コンストラクタプロテクト コンストラクタ
パブリック プロパティパブリック プロパティ
プロテクト プロパティプロテクト プロパティ
  名前 説明
プロテクト プロパティ HResult  特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。(Exception から継承されます。)
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SEHException クラス
System.Runtime.InteropServices 名前空間
Exception

その他の技術情報

例外の処理とスロー
方法 : HRESULT に例外を割り当てる



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「SEHException」の関連用語

SEHExceptionのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SEHExceptionのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS