Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Marshal.GetExceptionForHR (Int32, IntPtr)

 

Data di pubblicazione: ottobre 2016

Converte il codice errore HRESULT specificato in un oggetto Exception corrispondente, con ulteriori informazioni sull'errore passate in un'interfaccia IErrorInfo per l'oggetto eccezione.

Spazio dei nomi:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

[SecurityCriticalAttribute]
public static Exception GetExceptionForHR(
	int errorCode,
	IntPtr errorInfo
)

Parametri

errorCode
Type: System.Int32

Codice errore HRESULT da convertire.

errorInfo
Type: System.IntPtr

Puntatore all'interfaccia IErrorInfo che fornisce informazioni aggiuntive sull'errore. È possibile specificare IntPtr(0) per usare l'interfaccia IErrorInfo corrente oppure IntPtr(-1) per ignorare l'interfaccia IErrorInfo corrente e costruire l'eccezione unicamente dal codice errore.

Valore restituito

Type: System.Exception

Oggetto che rappresenta HRESULT convertito e le informazioni ottenute da errorInfo.

Utilizzare il GetExceptionForHR per ottenere un Exception basato su un valore HRESULT senza dover chiamare il ThrowExceptionForHR metodo e rilevare l'eccezione (evitando in tal modo il sovraccarico delle prestazioni corrispondenti). Il errorInfo parametro fornisce informazioni aggiuntive sull'errore, ad esempio la descrizione testuale e l'identificatore univoco globale (GUID) per l'interfaccia che definisce l'errore.

Utilizzare questo overload del metodo se si dispone di informazioni personalizzate sugli errori che è necessario fornire la conversione.

Per il mapping tra ogni oggetto HRESULT e la classe di eccezioni corrispondente in .NET Framework, vedere How to: Map HRESULTs and Exceptions.

SecurityCriticalAttribute

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

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 2.0
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Windows Phone Silverlight
Disponibile da 8.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: