Win32Exception Class

Definition

Throws an exception for a Win32 error code.

public class Win32Exception : System.Runtime.InteropServices.ExternalException
Inheritance
Derived

Inherited Members

System.Exception

System.Object

System.Runtime.InteropServices.ExternalException

Examples

The following code example shows how to catch a Win32 exception and interpret its content. The example attempts to start a nonexistent executable, which results in a Win32 exception. Upon catching the exception, the example fetches the respective error message, code, and origin of the exception.

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 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(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

Remarks

Win32 error codes are translated from their numeric representations into a system message when they are displayed. Use NativeErrorCode to access the numeric representation of the error code associated with this exception. For more information about the error codes, see "Win32 Error Codes" in the Platform SDK documentation at http://msdn.microsoft.com.

Constructors

Win32Exception()

Initializes a new instance of the Win32Exception class with the last Win32 error that occurred.

Win32Exception(Int32)

Initializes a new instance of the Win32Exception class with the specified error.

Win32Exception(String)

Initializes a new instance of the Win32Exception class with the specified detailed description.

Win32Exception(Int32, String)

Initializes a new instance of the Win32Exception class with the specified error and the specified detailed description.

Win32Exception(SerializationInfo, StreamingContext)

Initializes a new instance of the Win32Exception class with the specified context and the serialization information.

Win32Exception(String, Exception)

Initializes a new instance of the Win32Exception class with the specified detailed description and the specified exception.

Properties

NativeErrorCode

Gets the Win32 error code associated with this exception.

Methods

GetObjectData(SerializationInfo, StreamingContext)

Sets the SerializationInfo object with the file name and line number at which this Win32Exception occurred.