Marshal.GetHRForException(Exception) Yöntem

Tanım

Belirtilen özel durumu HRESULT'a dönüştürür.

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

Parametreler

e
Exception

HRESULT'a dönüştürülecek özel durum.

Döndürülenler

Int32

Sağlanan özel durumla eşlenen HRESULT.

Öznitelikler

Açıklamalar

GetHRForException ayrıca, COM GetErrorInfoNEEDGUID işlevi çağrılarak elde edilebilecek özel durum için bir IErrorInfo arabirimi ayarlar. Özniteliğini uyguladığınız PreserveSigAttribute COM arabiriminin yönetilen sınıf uygulamasında hresult değeri döndürmek için bu işlevi kullanabilirsiniz. Öznitelikli yöntemin tüm özel durumları yakalamasını ve uygun HRESULT değerini döndürmek için yöntemini kullanmasını GetHRForException sağlayın. Bir özel durumun yöntemin dışına yayılmasına izin vermek yanlış davranış üretir. (Aslında ortak dil çalışma zamanı, bir v-table aracılığıyla böyle bir yöntemi çağıran bir COM istemcisine özel durum geçiremiyor.)

yönteminin GetHRForException geçerli iş parçacığının IErrorInfo arabirimini ayarlandığını unutmayın. Bu, varsayılan olarak ayarlanmışsa geçerli iş parçacığının ThrowExceptionForHR IErrorInfo'sunu kullanan yöntemler gibi yöntemler için beklenmeyen sonuçlara neden olabilir.

Şunlara uygulanır

Ayrıca bkz.