Partilhar via


Método ICLRPolicyManager::SetDefaultAction

Especifica a ação de política que o common language runtime (CLR) deve realizar quando a operação especificada ocorre.

Sintaxe

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

Parâmetros

operation
[in] Um dos valores EClrOperation , que indica a ação para a qual o comportamento do CLR deve ser personalizado.

action
[in] Um dos valores EPolicyAction , que indica a ação de política que o CLR deve tomar quando operation ocorre.

Devolver Valor

HRESULT Description
S_OK SetDefaultAction devolvido com êxito.
HOST_E_CLRNOTAVAILABLE O CLR não foi carregado para um processo ou o CLR está num estado em que não pode executar o código gerido ou processar a chamada com êxito.
HOST_E_TIMEOUT A chamada excedeu o limite de tempo.
HOST_E_NOT_OWNER O autor da chamada não é o proprietário do bloqueio.
HOST_E_ABANDONED Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera.
E_FAIL Ocorreu uma falha catastrófica desconhecida. Depois de um método devolver E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE.
E_INVALIDARG Foi especificado um valor inválido action para o operationou foi fornecido um valor inválido para operation.

Observações

Nem todos os valores de ação de política podem ser especificados como o comportamento predefinido para operações CLR. SetDefaultAction normalmente, só pode ser utilizado para escalar o comportamento. Por exemplo, um anfitrião pode especificar que os abortos de threads sejam transformados em abortações de threads rudes, mas não pode especificar o oposto. A tabela abaixo descreve os valores válidos action para cada valor possível operation .

Valor para operation Valores válidos para 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

Requisitos

Plataformas: Veja Requisitos de Sistema.

Cabeçalho: MSCorEE.h

Biblioteca: Incluído como um recurso no MSCorEE.dll

.NET Framework Versões: Disponível desde 2.0

Ver também