다음을 통해 공유


SEHException 클래스

SEH(Structured Exception Handler) 오류를 나타냅니다.

네임스페이스: System.Runtime.InteropServices
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Class SEHException
    Inherits ExternalException
‘사용 방법
Dim instance As SEHException
[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 클래스는 비관리 코드에서 throw되지만 다른 .NET Framework 예외에 매핑되어 있지는 않은 SEH 오류를 처리합니다. 또한 SEHException 클래스는 값이 0x80004005HRESULT E_FAIL에 응답합니다.

.NET Framework에서는 관리되는 해당 예외에 자동으로 매핑되는 관리되지 않는 SEH 예외가 발생하는 경우도 있습니다. 예를 들어, STATUS_NO_MEMORY SEH 예외는 자동으로 OutOfMemoryException 클래스에 매핑되고 STATUS_ACCESS_VIOLATION SEH 예외는 자동으로 NullReferenceException 클래스에 매핑됩니다. 그러나 특정 예외에 자동으로 매핑되지 않는 SEH 예외는 기본적으로 SEHException 클래스에 매핑됩니다.

SEH 예외에 대한 자세한 내용은 https://www.microsoft.com/korea/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) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

플랫폼

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

참고 항목

참조

SEHException 멤버
System.Runtime.InteropServices 네임스페이스
Exception

기타 리소스

예외 처리 및 Throw
방법: HRESULT 및 예외 매핑