Compartilhar via


Método Marshal.GetExceptionForHR (Int32, IntPtr)

 

Dica

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Converte o código de erro HRESULT especificado em um objeto Exception correspondente, com informações de erro adicionais passadas em uma interface IErrorInfo para o objeto de exceção.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (em mscorlib.dll)

Sintaxe

[SecurityCriticalAttribute]
public static Exception GetExceptionForHR(
    int errorCode,
    IntPtr errorInfo
)
public:
[SecurityCriticalAttribute]
static Exception^ GetExceptionForHR(
    int errorCode,
    IntPtr errorInfo
)
[<SecurityCriticalAttribute>]
static member GetExceptionForHR : 
        errorCode:int *
        errorInfo:nativeint -> Exception
<SecurityCriticalAttribute>
Public Shared Function GetExceptionForHR (
    errorCode As Integer,
    errorInfo As IntPtr
) As Exception

Parâmetros

  • errorInfo
    Type: System.IntPtr

    Um ponteiro para a interface IErrorInfo que fornece mais informações sobre o erro. Você pode especificar IntPtr(0) usar atual IErrorInfo interface, ou IntPtr(-1) para ignorar atual IErrorInfo interface e construir a exceção apenas do código de erro.

Valor Retornado

Type: System.Exception

Um objeto que representa o HRESULT convertido e as informações obtidas de errorInfo.

Comentários

Use o GetExceptionForHR método para obter um Exception com base em um HRESULT sem a necessidade de chamar o ThrowExceptionForHR método e captura a exceção (evitando assim o sobrecarga de desempenho correspondente). O errorInfo parâmetro fornece informações adicionais sobre o erro, como sua descrição textual e o identificador global exclusivo (GUID) para a interface que definiu o erro.

Use essa sobrecarga de método se você tiver informações de erro personalizada que forneça na conversão.

Para o mapeamento de cada HRESULT para sua classe de exceção comparáveis no .NET Framework, consulte Como mapear HRESULTs e exceções.

Segurança

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Informações de Versão

Plataforma Universal do Windows
Disponível desde 8
.NET Framework
Disponível desde 2.0
Biblioteca de Classes Portátil
Com suporte no: plataformas portáteis do .NET
Windows Phone Silverlight
Disponível desde 8.0
Windows Phone
Disponível desde 8.1

Confira Também

ThrowExceptionForHR
GetExceptionForHR Sobrecarga
Classe Marshal
Namespace System.Runtime.InteropServices
IErrorInfo Interface

Retornar ao início