Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Konvertiert die angegebene Ausnahme in ein HRESULT.
Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared Function GetHRForException ( _
e As Exception _
) As Integer
'Usage
Dim e As Exception
Dim returnValue As Integer
returnValue = Marshal.GetHRForException(e)
public static int GetHRForException (
Exception e
)
public:
static int GetHRForException (
Exception^ e
)
public static int GetHRForException (
Exception e
)
public static function GetHRForException (
e : Exception
) : int
Parameter
- e
Die in ein HRESULT zu konvertierende Exception.
Rückgabewert
Das HRESULT, das der bereitgestellten Ausnahme zugeordnet ist.
Hinweise
GetHRForException richtet auch eine IErrorInfo-Schnittstelle für die Ausnahme ein, die durch einen Aufruf der GetErrorInfo-COM-API-Methode abgerufen werden kann. Sie können mit dieser Methode einen HRESULT-Wert für die Implementierung einer verwalteten Klasse einer COM-Schnittstelle zurückgeben, auf die System.Runtime.InteropServices.PreserveSigAttribute angewendet wird. Lassen Sie die attributierte Methode alle Ausnahmen abfangen, und verwenden Sie GetHRForException, um den entsprechenden HRESULT-Wert zurückzugeben. Die Weitergabe einer Ausnahme außerhalb der Methode kann zu einem fehlerhaften Verhalten führen. (Faktisch kann die Common Language Runtime keine Ausnahme an einen COM-Client übergeben, der eine solche Methode über eine Vtable aufruft.) Weitere Informationen über die IErrorInfo-Schnittstelle und GetErrorInfo-COM-Methoden finden Sie in der MSDN Library.
Beachten Sie, dass die GetHRForException-Methode die IErrorInfo des aktuellen Threads festlegt. Dies kann bei Methoden wie der ThrowExceptionForHR-Methode, die standardmäßig die IErrorInfo des aktuellen Threads verwenden, sofern festgelegt, zu unerwarteten Ergebnissen führen.
.NET Framework-Sicherheit
- SecurityPermission für die Berechtigung zum Aufrufen von nicht verwaltetem Code. Zugeordnete Enumeration: UnmanagedCode Sicherheitsaktion: LinkDemand
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0
Siehe auch
Referenz
Marshal-Klasse
Marshal-Member
System.Runtime.InteropServices-Namespace
PreserveSigAttribute