共用方式為


ICLRPolicyManager::SetDefaultAction 方法

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

HRESULT SetDefaultAction (
    [in] EClrOperation operation,
    [in] EPolicyAction action
);

參數

  • operation
    [in] 其中一個 EClrOperation 值,表示 CLR 應該針對哪一個動作進行自訂。

  • action
    [in] 其中一個 EPolicyAction 值,表示發生 operation 時 CLR 應該採取的原則動作。

傳回值

HRESULT

描述

S_OK

SetDefaultAction 已成功傳回。

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

為 operation 指定了無效的 action,或是為 operation 提供了無效的值。

備註

並非所有的原則動作值都可以指定為 CLR 作業的預設行為。 SetDefaultAction 通常只能用來提升行為。 例如,主應用程式可以指定執行緒中止應該變成粗略的執行緒中止,但是無法指定相反的動作。 下表會針對每個可能的 operation 值描述有效的 action 值。

operation 的值

action 的有效值

OPR_ThreadAbort

  • eAbortThread

  • eRudeAbortThread

  • eUnloadAppDomain

  • eRudeUnloadAppDomain

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

OPR_ThreadRudeAbortInNonCriticalRegion

OPR_ThreadRudeAbortInCriticalRegion

  • eRudeAbortThread

  • eUnloadAppDomain

  • eRudeUnloadAppDomain

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

OPR_AppDomainUnload

  • eUnloadAppDomain

  • eRudeUnloadAppDomain

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

OPR_AppDomainRudeUnload

  • eRudeUnloadAppDomain

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

OPR_ProcessExit

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

OPR_FinalizerRun

  • eNoAction

  • eAbortThread

  • eRudeAbortThread

  • eUnloadAppDomain

  • eRudeUnloadAppDomain

  • eExitProcess

  • eFastExitProcess

  • eRudeExitProcess

  • eDisableRuntime

需求

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

**標頭:**MSCorEE.h

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

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

請參閱

參考

EClrOperation 列舉

EPolicyAction 列舉

ICLRPolicyManager 介面