共用方式為


ICLRPolicyManager::SetActionOnFailure 方法

更新:2007 年 11 月

發生指定的失敗時,指定 Common Language Runtime (CLR) 應該採取的原則動作。

HRESULT SetActionOnFailure (
    [in] EClrFailure   failure,
    [in] EPolicyAction action
);

參數

  • failure
    [in] 其中一個 EClrFailure 值,表示要對其採取動作的失敗類型。

  • action
    [in] 其中一個 EPolicyAction 值,表示發生失敗時要採取的動作。FAIL_FatalRuntime 之 failure 值唯一支援的值為 eRudeExitProcess。發生嚴重錯誤時,預設會停用 CLR。針對 FAIL_CriticalResource 或 FAIL_NonCriticalResource 的 failure 值,會支援下列各值:

    • eNoAction

    • eThrowException

    • eAbortThread

    • eRudeAbortThread

    • eUnloadAppDomain

    • eRudeUnloadAppDomain

    • eExitProcess

    • eRudeExitProcess

    • eDisableRuntime

傳回值

HRESULT

描述

S_OK

SetActionOnFailure 已成功傳回。

HOST_E_CLRNOTAVAILABLE

CLR 尚未載入至處理序中,或者此 CLR 目前的狀態無法執行 Managed 程式碼或成功處理呼叫。

HOST_E_TIMEOUT

呼叫已逾時。

HOST_E_NOT_OWNER

呼叫端不具備鎖定功能。

HOST_E_ABANDONED

已封鎖執行緒或 Fiber 在等候事件時,該事件已遭取消。

E_FAIL

發生未知的重大錯誤。在方法傳回 E_FAIL 之後,處理序中就無法再使用 CLR。對裝載方法的後續呼叫會傳回 HOST_E_CLRNOTAVAILABLE。

E_INVALIDARG

無法為指定的作業設定原則動作,或是為此作業指定了無效的原則動作。

備註

根據預設,CLR 在無法配置類似記憶體的資源時,會擲回例外狀況。SetActionOnFailure 可讓主應用程式藉由指定在失敗時所要採取的原則動作,覆寫這個行為。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**MSCorEE.idl

程式庫:包含做為 MSCorEE.dll 中的資源

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

EClrFailure

EPolicyAction

ICLRControl

ICLRPolicyManager