Win32Exception 类

定义

引发 Win32 错误代码异常。

public ref class Win32Exception : Exception
public ref class Win32Exception : System::Runtime::InteropServices::ExternalException
public class Win32Exception : Exception
public class Win32Exception : System.Runtime.InteropServices.ExternalException
[System.Serializable]
public class Win32Exception : System.Runtime.InteropServices.ExternalException
type Win32Exception = class
    inherit Exception
type Win32Exception = class
    inherit ExternalException
    interface ISerializable
type Win32Exception = class
    inherit ExternalException
[<System.Serializable>]
type Win32Exception = class
    inherit ExternalException
    interface ISerializable
Public Class Win32Exception
Inherits Exception
Public Class Win32Exception
Inherits ExternalException
继承
Win32Exception
继承
派生
属性
实现

示例

下面的代码示例演示如何捕获 Win32 异常并解释其内容。 该示例尝试启动不存在的可执行文件,这会导致 Win32 异常。 捕获异常时,该示例提取相应的错误消息、代码和异常来源。

try
{
   System::Diagnostics::Process^ myProc = gcnew System::Diagnostics::Process;
   //Attempting to start a non-existing executable
   myProc->StartInfo->FileName = "c:\nonexist.exe";
   //Start the application and assign it to the process component.
   myProc->Start();
}
catch ( Win32Exception^ w ) 
{
   Console::WriteLine( w->Message );
   Console::WriteLine( w->ErrorCode );
   Console::WriteLine( w->NativeErrorCode );
   Console::WriteLine( w->StackTrace );
   Console::WriteLine( w->Source );
   Exception^ e = w->GetBaseException();
   Console::WriteLine( e->Message );
}
try
{
    System.Diagnostics.Process myProc = new();
    myProc.StartInfo.FileName = @"c:\nonexist.exe"; // Attempt to start a non-existent executable
    myProc.Start();
}
catch (Win32Exception w)
{
    Console.WriteLine(w.Message);
    Console.WriteLine(w.ErrorCode.ToString());
    Console.WriteLine(w.NativeErrorCode.ToString());
    Console.WriteLine(w.StackTrace);
    Console.WriteLine(w.Source);
    Exception e = w.GetBaseException();
    Console.WriteLine(e.Message);
}
Try
    Dim myProc As New System.Diagnostics.Process()
    myProc.StartInfo.FileName = "c:\nonexist.exe"  'Attempting to start a non-existing executable
    myProc.Start()    'Start the application and assign it to the process component.    

Catch w As System.ComponentModel.Win32Exception
    Console.WriteLine(w.Message)
    Console.WriteLine(w.ErrorCode.ToString())
    Console.WriteLine(w.NativeErrorCode.ToString())
    Console.WriteLine(w.StackTrace)
    Console.WriteLine(w.Source)
    Dim e As New Exception()
    e = w.GetBaseException()
    Console.WriteLine(e.Message)
End Try

注解

在显示时,Win32 错误代码被从数值表示形式转换为系统消息。 使用 NativeErrorCode 访问与此异常关联的错误代码的数字表示形式。 有关错误代码的详细信息,请参阅 Win32 错误代码

构造函数

Win32Exception()

使用出现的最后一个 Win32 错误初始化 Win32Exception 类的新实例。

Win32Exception(Int32)

使用指定错误初始化 Win32Exception 类的新实例。

Win32Exception(Int32, String)

使用指定错误和指定的详细说明初始化 Win32Exception 类的新实例。

Win32Exception(SerializationInfo, StreamingContext)
已过时.

用指定的上下文和序列化信息初始化 Win32Exception 类的新实例。

Win32Exception(String)

使用指定的详细说明初始化 Win32Exception 类的新实例。

Win32Exception(String, Exception)

使用指定的详细说明和指定的异常初始化 Win32Exception 类的新实例。

属性

Data

获取键/值对的集合,这些键/值对提供有关该异常的其他用户定义信息。

(继承自 Exception)
ErrorCode

获取错误的 HRESULT

(继承自 ExternalException)
HelpLink

获取或设置指向与此异常关联的帮助文件链接。

(继承自 Exception)
HResult

获取或设置 HRESULT(一个分配给特定异常的编码数字值)。

(继承自 Exception)
InnerException

获取导致当前异常的 Exception 实例。

(继承自 Exception)
Message

获取描述当前异常的消息。

(继承自 Exception)
NativeErrorCode

获取与此异常关联的 Win32 错误代码。

Source

获取或设置导致错误的应用程序或对象的名称。

(继承自 Exception)
StackTrace

获取调用堆栈上的即时框架字符串表示形式。

(继承自 Exception)
TargetSite

获取引发当前异常的方法。

(继承自 Exception)

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetBaseException()

当在派生类中重写时,返回 Exception,它是一个或多个并发的异常的根本原因。

(继承自 Exception)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetObjectData(SerializationInfo, StreamingContext)
已过时.

使用发生此 SerializationInfo 的文件名和行号设置 Win32Exception 对象。

GetObjectData(SerializationInfo, StreamingContext)
已过时.

当在派生类中重写时,用关于异常的信息设置 SerializationInfo

(继承自 Exception)
GetType()

获取当前实例的运行时类型。

(继承自 Exception)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回包含 NativeErrorCode 和/或 HResult 的字符串。

ToString()

创建并返回当前异常的字符串表示形式。

(继承自 Exception)
ToString()

返回一个字符串,该字符串包含错误的 HRESULT。

(继承自 ExternalException)

事件

SerializeObjectState
已过时.

当异常被序列化用来创建包含有关该异常的徐列出数据的异常状态对象时会出现该问题。

(继承自 Exception)

适用于