Marshal.GetExceptionForHR Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Konwertuje kod błędu HRESULT na odpowiedni Exception obiekt.
Przeciążenia
GetExceptionForHR(Int32) |
Konwertuje określony kod błędu HRESULT na odpowiedni Exception obiekt. |
GetExceptionForHR(Int32, IntPtr) |
Konwertuje określony kod błędu HRESULT na odpowiedni Exception obiekt z dodatkowymi informacjami o błędzie przekazanymi w interfejsie IErrorInfo dla obiektu wyjątku. |
GetExceptionForHR(Int32)
- Źródło:
- Marshal.cs
- Źródło:
- Marshal.cs
- Źródło:
- Marshal.cs
Konwertuje określony kod błędu HRESULT na odpowiedni Exception obiekt.
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
Parametry
- errorCode
- Int32
HrESULT, który ma zostać przekonwertowany.
Zwraca
Obiekt reprezentujący przekonwertowaną wartość HRESULT lub null
jeśli wartość HRESULT nie reprezentuje kodu błędu (na przykład S_OK
lub S_FALSE
).
- Atrybuty
Uwagi
GetExceptionForHR Użyj metody , aby uzyskać Exception obiekt na podstawie hrESULT bez konieczności wywoływania ThrowExceptionForHR metody i przechwytywania wyjątku.
Bieżący interfejs IErrorInfo służy do konstruowania wyjątku.
Aby uzyskać mapowanie z każdej hrESULT na porównywalną klasę wyjątków w programie .NET Framework, zobacz Instrukcje: mapowanie wartości HRESULTs i Wyjątki.
Zobacz też
Dotyczy
GetExceptionForHR(Int32, IntPtr)
- Źródło:
- Marshal.cs
- Źródło:
- Marshal.cs
- Źródło:
- Marshal.cs
Konwertuje określony kod błędu HRESULT na odpowiedni Exception obiekt z dodatkowymi informacjami o błędzie przekazanymi w interfejsie IErrorInfo dla obiektu wyjątku.
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
Parametry
- errorCode
- Int32
HrESULT, który ma zostać przekonwertowany.
- errorInfo
-
IntPtr
nativeint
Wskaźnik do interfejsu IErrorInfo
, który zawiera więcej informacji o błędzie. Można określić IntPtr(0)
, aby użyć bieżącego IErrorInfo
interfejsu lub IntPtr(-1)
zignorować bieżący IErrorInfo
interfejs i skonstruować wyjątek tylko z kodu błędu.
Zwraca
Obiekt reprezentujący przekonwertowaną wartość HRESULT i informacje uzyskane z errorInfo
klasy lub null
jeśli wartość HRESULT nie reprezentuje kodu błędu (na przykład S_OK
lub S_FALSE
).
- Atrybuty
Uwagi
GetExceptionForHR Użyj metody , aby uzyskać Exception element na podstawie hrESULT bez konieczności wywoływania ThrowExceptionForHR metody i przechwytywania wyjątku (w ten sposób unikając odpowiedniego nakładu pracy związanego z wydajnością). Parametr errorInfo
dostarcza dodatkowe informacje o błędzie, takie jak jego opis tekstowy i globalnie unikatowy identyfikator (GUID) dla interfejsu, który zdefiniował błąd.
Użyj tego przeciążenia metody, jeśli masz niestandardowe informacje o błędzie, które należy podać w konwersji.
Aby uzyskać mapowanie z każdej hrESULT na porównywalną klasę wyjątków w programie .NET Framework, zobacz Instrukcje: mapowanie wartości HRESULTs i Wyjątki.