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, или null
, если значение HRESULT не представляет код ошибки (например, S_OK
или S_FALSE
).
- Атрибуты
Комментарии
Используйте метод для GetExceptionForHR получения на Exception основе HRESULT без вызова 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
, или null
, если значение HRESULT не представляет код ошибки (например, S_OK
или S_FALSE
).
- Атрибуты
Комментарии
GetExceptionForHR Используйте метод для получения Exception на основе HRESULT без вызова ThrowExceptionForHR метода и перехвата исключения (таким образом, чтобы избежать соответствующих издержек производительности). Параметр errorInfo
предоставляет дополнительные сведения об ошибке, такие как ее текстовое описание и глобальный уникальный идентификатор (GUID) для интерфейса, который определил ошибку.
Используйте эту перегрузку метода, если у вас есть пользовательские сведения об ошибке, которые необходимо указать в преобразовании.
Сопоставление каждого HRESULT с сопоставимым классом исключений в .NET Framework см. в разделе Практическое руководство. Сопоставление HRESULT и исключений.