Marshal.GetHRForException(Exception) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Converte l'eccezione specificata in valore HRESULT.
public:
static int GetHRForException(Exception ^ e);
[System.Security.SecurityCritical]
public static int GetHRForException (Exception e);
public static int GetHRForException (Exception? e);
public static int GetHRForException (Exception e);
[<System.Security.SecurityCritical>]
static member GetHRForException : Exception -> int
static member GetHRForException : Exception -> int
Public Shared Function GetHRForException (e As Exception) As Integer
Parametri
Eccezione da convertire in valore HRESULT.
Restituisce
Valore HRESULT mappato all'eccezione fornita.
- Attributi
Commenti
GetHRForException configura anche un'interfaccia IErrorInfo per l'eccezione che può essere ottenuta chiamando la funzione COM GetErrorInfoNEEDGUID. È possibile usare questa funzione per restituire un valore HRESULT in un'implementazione della classe gestita di un'interfaccia COM in cui si applica l'attributo PreserveSigAttribute . Il metodo con attributi rileva tutte le eccezioni e usa il metodo per restituire il GetHRForException valore HRESULT appropriato. Consentire la propagazione di un'eccezione all'esterno del metodo genera un comportamento non corretto. In effetti, Common Language Runtime non riesce a passare un'eccezione a un client COM che chiama tale metodo tramite una v-table.
Si noti che il GetHRForException metodo imposta l'interfaccia IErrorInfo del thread corrente. Ciò può causare risultati imprevisti per i metodi come i ThrowExceptionForHR metodi che per impostazione predefinita usano IErrorInfo del thread corrente se è impostato.