共用方式為


Marshal.GetExceptionForHR 方法

定義

將 HRESULT 錯誤碼轉換成對應的 Exception 物件。

多載

GetExceptionForHR(Int32)

將指定的 HRESULT 錯誤碼轉換成對應的 Exception 物件。

GetExceptionForHR(Int32, IntPtr)

將指定的 HRESULT 錯誤碼轉換成對應的 Exception 物件,並將其他錯誤資訊傳入此例外狀況物件的 IErrorInfo 介面。

GetExceptionForHR(Int32)

來源:
Marshal.cs
來源:
Marshal.cs
來源:
Marshal.cs

將指定的 HRESULT 錯誤碼轉換成對應的 Exception 物件。

public:
 static Exception ^ GetExceptionForHR(int errorCode);
[System.Security.SecurityCritical]
public static Exception GetExceptionForHR (int errorCode);
public static Exception? GetExceptionForHR (int errorCode);
public static Exception GetExceptionForHR (int errorCode);
[<System.Security.SecurityCritical>]
static member GetExceptionForHR : int -> Exception
static member GetExceptionForHR : int -> Exception
Public Shared Function GetExceptionForHR (errorCode As Integer) As Exception

參數

errorCode
Int32

要轉換的 HRESULT。

傳回

表示已轉換 HRESULT 的物件,如果 HRESULT 值不表示錯誤碼 (例如,S_OKS_FALSE) 則為 null

屬性

備註

GetExceptionForHR使用 方法來根據 HRESULT 取得 Exception ,而不需要呼叫 ThrowExceptionForHR 方法並攔截例外狀況。

目前的 IErrorInfo 介面是用來建構例外狀況。

如需從每個 HRESULT 對應至 .NET Framework 中可比較的例外狀況類別,請參閱 如何:對應 HRESULT 和例外狀況

另請參閱

適用於

GetExceptionForHR(Int32, IntPtr)

來源:
Marshal.cs
來源:
Marshal.cs
來源:
Marshal.cs

將指定的 HRESULT 錯誤碼轉換成對應的 Exception 物件,並將其他錯誤資訊傳入此例外狀況物件的 IErrorInfo 介面。

public:
 static Exception ^ GetExceptionForHR(int errorCode, IntPtr errorInfo);
[System.Security.SecurityCritical]
public static Exception GetExceptionForHR (int errorCode, IntPtr errorInfo);
public static Exception? GetExceptionForHR (int errorCode, IntPtr errorInfo);
public static Exception GetExceptionForHR (int errorCode, IntPtr errorInfo);
[<System.Security.SecurityCritical>]
static member GetExceptionForHR : int * nativeint -> Exception
static member GetExceptionForHR : int * nativeint -> Exception
Public Shared Function GetExceptionForHR (errorCode As Integer, errorInfo As IntPtr) As Exception

參數

errorCode
Int32

要轉換的 HRESULT。

errorInfo
IntPtr

nativeint

提供錯誤詳細資訊的 IErrorInfo 介面指標。 您可以指定 IntPtr(0) 以使用目前的 IErrorInfo 介面,或指定 IntPtr(-1) 忽略目前的 IErrorInfo 介面,並且只從錯誤碼建構例外狀況。

傳回

表示已轉換 HRESULT 和取得自 errorInfo 之資訊的物件,如果 HRESULT 值不表示錯誤碼 (例如,S_OKS_FALSE) 則為 null

屬性

備註

GetExceptionForHR使用 方法來根據 HRESULT 取得 Exception ,而不需要呼叫 ThrowExceptionForHR 方法並攔截例外狀況 (因此避免對應的效能額外負荷) 。 參數 errorInfo 會提供錯誤的其他資訊,例如其文字描述,以及定義錯誤之介面的全域唯一標識碼 (GUID) 。

如果您有轉換中必須提供的自定義錯誤資訊,請使用這個方法多載。

如需從每個 HRESULT 對應至 .NET Framework 中可比較的例外狀況類別,請參閱 如何:對應 HRESULT 和例外狀況

另請參閱

適用於