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 operation ou 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